Stories
Slash Boxes
Comments
NOTE: use Perl; is on undef hiatus. You can read content, but you can't post it. More info will be forthcoming forthcomingly.

All the Perl that's Practical to Extract and Report

The Fine Print: The following comments are owned by whoever posted them. We are not responsible for them in any way.
 Full
 Abbreviated
 Hidden
More | Login | Reply
Loading... please wait.
  • This is use.perl, so -Wall, obviously :-)

    parrot is compiled with -Wall -Wstrict-prototypes -Wmissing-prototypes -Winline -Wshadow -Wpointer-arith -Wcast-qual -Wcast-align -Wwrite-strings -Waggregate-return -Winline -W -Wno-unused -Wsign-compare -Wformat-nonliteral -Wformat-security -Wpacked -Wpadded -Wdisabled-optimization on gcc 3.2. Some of those are specific to various recent versions of gcc - take a look at parrot's config/auto/gcc.pl for how it chooses its bondage preferences based on gcc version. However, parrot is trying really hard from the start to build under maximum bondage. Even with recent effort, the perl5 core isn't much mor than -Wall clean.

    Annoyingly as far as I'm aware all the gcc options can only warn you about problems based on the platform you're compiling for, so it can't tell you about portability-removing assumptions you've made (such as the pointer cast alignment warnings only warn about the target platform, so you won't get warned that maybe casting a char * to a double * might be a bad plan) and IIRC on some of the strict ANSI settings it still lets through some non ANSI C if it's flagged in a special way (so you can't verify that glibc's headers really are ANSI, unless you use a stricter compiler, such as lcc)