This is the mail archive of the
cygwin@sourceware.cygnus.com
mailing list for the Cygwin project.
Re: A TINY BUG
- To: Jason Zions <jazz at softway dot com>
- Subject: Re: A TINY BUG
- From: "Marty Leisner" <leisner at sdsp dot mc dot xerox dot com>
- Date: Mon, 6 Oct 1997 14:25:59 PDT
- Cc: tage dot westlund at stockholm dot mail dot telia dot com, gnu-win32 at cygnus dot com
I agree, but -Wformat should even catch this (without stdio.h)
Or use -Wall...
> > I have found that the following bad code gives "exception" at run
> > time instead of error message at compilation time (b18 Win95):
> >
> > #include <stdio.h>
> > main(){
> > printf("%s\n",sizeof(long));
> > }
>
> No compiler will detect this error at compile-time. The prototype for
> printf is (char *, ...); that is, no specific type information for
> anything except the first parameter. A compiler would have to read the
> first parameter to figure out the expected types for the remaining args,
> and much of the time that first parameter is dynamically computed at
> runtime instead of being a static string. There are a couple of
> lint-like programs that will catch this error with a
> compile-time-evaluatable format string, but that's the best you can do.
>
> Summary: learn more about the language before whining about compiler
> errors. This is a programmer bug, not a compiler bug.
>
> Jason Zions
> Softway Systems Inc., makers of OpenNT
> http://www.opennt.com
>
>
--
marty
leisner@sdsp.mc.xerox.com
The Feynman problem solving Algorithm
1) Write down the problem
2) Think real hard
3) Write down the answer
Murray Gel-mann in the NY Times
-
For help on using this list (especially unsubscribing), send a message to
"gnu-win32-request@cygnus.com" with one line of text: "help".