User forums > Using Code::Blocks
BUG: no such gcc switch as -pedantic-error
scorpion007:
The correct switch is -pedantic-errors -- it is plural.
Also, may i request a minor feature? Have an additional -ansi switch in the list. Of course it can be added in additional options, but its a fairly common switch.
killerbot:
absolutely correct :
http://gcc.gnu.org/onlinedocs/gcc-4.1.1/gcc/Warning-Options.html#index-pedantic-200
--- Quote ----pedantic
Issue all the warnings demanded by strict ISO C and ISO C++; reject all programs that use forbidden extensions, and some other programs that do not follow ISO C and ISO C++. For ISO C, follows the version of the ISO C standard specified by any -std option used.
Valid ISO C and ISO C++ programs should compile properly with or without this option (though a rare few will require -ansi or a -std option specifying the required version of ISO C). However, without this option, certain GNU extensions and traditional C and C++ features are supported as well. With this option, they are rejected.
-pedantic does not cause warning messages for use of the alternate keywords whose names begin and end with `__'. Pedantic warnings are also disabled in the expression that follows __extension__. However, only system header files should use these escape routes; application programs should avoid them. See Alternate Keywords.
Some users try to use -pedantic to check programs for strict ISO C conformance. They soon find that it does not do quite what they want: it finds some non-ISO practices, but not all—only those for which ISO C requires a diagnostic, and some others for which diagnostics have been added.
A feature to report any failure to conform to ISO C might be useful in some instances, but would require considerable additional work and would be quite different from -pedantic. We don't have plans to support such a feature in the near future.
Where the standard specified with -std represents a GNU extended dialect of C, such as `gnu89' or `gnu99', there is a corresponding base standard, the version of ISO C on which the GNU extended dialect is based. Warnings from -pedantic are given where they are required by the base standard. (It would not make sense for such warnings to be given only for features not in the specified GNU C dialect, since by definition the GNU dialects of C include all features the compiler supports with the given option, and there would be nothing to warn about.)
-pedantic-errors
Like -pedantic, except that errors are produced rather than warnings.
--- End quote ---
http://gcc.gnu.org/onlinedocs/gcc-4.1.1/cpp/Invocation.html#index-pedantic-140
--- Quote ----pedantic
Issue all the mandatory diagnostics listed in the C standard. Some of them are left out by default, since they trigger frequently on harmless code.
-pedantic-errors
Issue all the mandatory diagnostics, and make all mandatory diagnostics into errors. This includes mandatory diagnostics that GCC issues without `-pedantic' but treats as warnings.
--- End quote ---
adjusted our sources : revision 3165
Thanks for pointing that out !!!
killerbot:
--- Quote ----ansi
Specify the standard to which the code should conform. Currently CPP knows about C and C++ standards; others may be added in the future.
standard may be one of:
iso9899:1990
c89
The ISO C standard from 1990. `c89' is the customary shorthand for this version of the standard.
The -ansi option is equivalent to -std=c89.
iso9899:199409
The 1990 C standard, as amended in 1994.
iso9899:1999
c99
iso9899:199x
c9x
The revised ISO C standard, published in December 1999. Before publication, this was known as C9X.
gnu89
The 1990 C standard plus GNU extensions. This is the default.
gnu99
gnu9x
The 1999 C standard plus GNU extensions.
c++98
The 1998 ISO C++ standard plus amendments.
gnu++98
The same as -std=c++98 plus GNU extensions. This is the default for C++ code.
--- End quote ---
one little question, is the option just : -ansi or do you need to specify one of those standards ??
scorpion007:
for C, "The -ansi option is equivalent to -std=c89"
for C++, gnu++98 is the default.
killerbot:
ok I will add this option, but it's a check box : yes or no, no possibility to add anything else to that specific option.
[EDIT] on second thought what's the benefit ?? for C/C++ is the same as the default ???
Navigation
[0] Message Index
[#] Next page
Go to full version