Changes between Version 10 and Version 11 of BuildWarnings

Show
Ignore:
Timestamp:
07/06/10 12:49:44 (12 years ago)
Author:
mikehh
Comment:

--

Legend:

Unmodified
Added
Removed
Modified
  • BuildWarnings

    v10 v11  
    3737---- 
    3838 
    39 I (mikehh) got the following warnings at r37645 - most have been around for quite awhile, some duplicating the ones above (Infinoid), but also some additional ones.[[BR]] 
    40 built with - make world 2>&1 | tee make_world.37645.log[[BR]] 
    41 Kubuntu Intrepid i386 gcc version 4.3.2 (Ubuntu 4.3.2-1ubuntu12) 
    42 {{{ 
    43 src/nci.c:3016: warning: dereferencing type-punned pointer will break strict-aliasing rules 
    44 src/nci.c:5194: warning: dereferencing type-punned pointer will break strict-aliasing rules 
    45 src/nci.c:5805: warning: dereferencing type-punned pointer will break strict-aliasing rules 
    46  
    47 src/thread.c:1381: warning: suggest braces around empty body in ‘do’ statement 
    48 src/thread.c:499: warning: variable ‘sub_pmc’ might be clobbered by ‘longjmp’ or ‘vfork’ 
    49  
    50 src/jit_defs.c:2069: warning: logical ‘&&’ with non-zero constant will always evaluate as true 
    51 src/jit_defs.c:2080: warning: logical ‘&&’ with non-zero constant will always evaluate as true 
    52  
    53 ./src/pmc/sub.pmc:891: warning: logical ‘&&’ with non-zero constant will always evaluate as true 
    54  
    55 compilers/imcc/imcc.y:739: warning: unused parameter ‘interp’ 
    56 compilers/imcc/imcparser.c:2848: warning: statement with no effect 
    57 compilers/imcc/imcparser.c:4938: warning: logical ‘&&’ with non-zero constant will always evaluate as true 
    58 compilers/imcc/imcparser.c:4941: warning: statement with no effect 
    59 compilers/imcc/imcparser.c:5098: warning: statement with no effect 
    60 compilers/imcc/imcparser.c:5102: warning: statement with no effect 
    61 compilers/imcc/imcc.l:731: warning: ignoring return value of ‘fwrite’, declared with attribute warn_unused_result 
    62 compilers/imcc/imclexer.c:4165: warning: comparison between signed and unsigned 
    63 compilers/imcc/imcc.l:1306: warning: variable ‘buffer’ might be clobbered by ‘longjmp’ or ‘vfork’ 
    64 compilers/imcc/imcc.l:1338: warning: variable ‘buffer’ might be clobbered by ‘longjmp’ or ‘vfork’ 
    65  
    66 compilers/imcc/instructions.c:176: warning: logical ‘&&’ with non-zero constant will always evaluate as true 
    67  
    68 compilers/imcc/reg_alloc.c:738: warning: logical ‘&&’ with non-zero constant will always evaluate as true 
    69  
    70 ./gdbmhash.pmc:238: warning: function call has aggregate value 
    71 ./gdbmhash.pmc:176: warning: function call has aggregate value 
    72 ./gdbmhash.pmc:150: warning: function call has aggregate value 
    73 ./gdbmhash.pmc:152: warning: function call has aggregate value 
    74  
    75 myops_ops_switch.c:151: warning: dereferencing type-punned pointer will break strict-aliasing rules 
    76  
    77 pbc_to_exe.c:391: warning: dereferencing type-punned pointer might break strict-aliasing rules 
    78  
    79 parrot_config.c:86: warning: dereferencing type-punned pointer might break strict-aliasing rules 
    80  
    81 }}} 
    82  
    8339dukeleto: some warnings that I get during the build on OS X 10.5.8/GMP 4.3.1 :  
    8440{{{ 
     
    10157}}} 
    10258 
     59mikehh: as of r48016 building on Ubuntu 10.04 amd64/i386 versions (gcc/g++ (Ubuntu 4.4.3-4ubuntu5) 4.4.3) 
    10360 
    104 mikehh: latest warnings at r41266, built with g++ (Ubuntu 4.3.3-5ubuntu4) 4.3.3 on Ubuntu 9.04 amd64 
     61There were some differences in the gcc/g++ (with or without --optimize) but, the the same results were produced on i386/amd64. 
    10562 
    106 the only difference with a build at parrot r41265 on Ubuntu 9.04 i386 (also using g++) 
    107 is that the first two warnings for src/nci.c do not occur there, the third does 
     63The following warnings were extracted from the logged output of make world: 
    10864{{{ 
    109 from: tools/build/ops2pm.pl 
    110 trap                      1258       experimental, not in ops.num 
     65(common): 
     66src/runcore/trace.c: In function ‘trace_key_dump’: (gcc) or src/runcore/trace.c: In function ‘int trace_key_dump(parrot_interp_t*, PMC*)’: (g++) 
     67src/runcore/trace.c:243: warning: comparison between signed and unsigned integer expressions 
    11168 
    112 src/ops/core_ops_switch.c:13010: warning: dereferencing type-punned pointer will break strict-aliasing rules 
     69(without --optimize): 
     70./src/pmc/imageio.pmc: In function ‘visit_todo_list_thaw’: (gcc) or ./src/pmc/imageio.pmc: In function ‘PMC* visit_todo_list_thaw(parrot_interp_t*, PMC*)’: (g++) 
     71./src/pmc/imageio.pmc:266: warning: comparison between signed and unsigned integer expressions 
    11372 
    114 src/interp/inter_misc.c:210: warning: ‘ret’ may be used uninitialised in this function 
     73g++ (with or without --optimize) 
     74./src/pmc/imageio.pmc: In function ‘FLOATVAL Parrot_ImageIO_shift_float(parrot_interp_t*, PMC*)’: 
     75./src/pmc/imageio.pmc:613: warning: cast from type ‘opcode_t**’ to type ‘const opcode_t**’ casts away constness 
     76./src/pmc/imageio.pmc: In function ‘INTVAL Parrot_ImageIO_shift_integer(parrot_interp_t*, PMC*)’: 
     77./src/pmc/imageio.pmc:593: warning: cast from type ‘opcode_t**’ to type ‘const opcode_t**’ casts away constness 
     78./src/pmc/imageio.pmc: In function ‘STRING* Parrot_ImageIO_shift_string(parrot_interp_t*, PMC*)’: 
     79./src/pmc/imageio.pmc:652: warning: cast from type ‘opcode_t**’ to type ‘const opcode_t**’ casts away constness 
    11580 
    116 src/nci.c:4597: warning: dereferencing type-punned pointer will break strict-aliasing rules 
    117 src/nci.c:5136: warning: dereferencing type-punned pointer will break strict-aliasing rules 
    118 src/nci.c:11030: warning: dereferencing type-punned pointer will break strict-aliasing rules 
     81(common): 
     82compilers/imcc/imclexer.c: In function ‘yy_get_next_buffer’: (gcc) or compilers/imcc/imclexer.c: In function ‘int yy_get_next_buffer(void*)’: (g++) 
     83compilers/imcc/imclexer.c:4209: warning: comparison between signed and unsigned integer expressions 
    11984 
    120 src/pmc_freeze.c:523: warning: dereferencing type-punned pointer will break strict-aliasing rules 
     85(with --optimize): 
     86compilers/imcc/symreg.c: In function ‘int_overflows’: (gcc)  
     87compilers/imcc/symreg.c:861: warning: ignoring return value of ‘strtol’, declared with attribute warn_unused_result 
     88compilers/imcc/symreg.c:864: warning: ignoring return value of ‘strtoul’, declared with attribute warn_unused_result 
    12189 
    122 compilers/imcc/imcparser.c:3092: warning: statement has no effect 
    123 compilers/imcc/imcparser.c:5230: warning: statement has no effect 
    124 compilers/imcc/imcparser.c:5387: warning: statement has no effect 
    125 compilers/imcc/imcparser.c:5391: warning: statement has no effect 
    126 compilers/imcc/imcc.y:1360: warning: ignoring return value of ‘Instruction* iSUBROUTINE(parrot_interp_t*, IMC_Unit*, SymReg*)’, declared with attribute warn_unused_result 
     90or 
    12791 
    128 compilers/imcc/pbc.c:183: warning: ‘int old_blocks(parrot_interp_t*)’ declared ‘static’ but never defined 
     92compilers/imcc/symreg.c: In function ‘int int_overflows(const SymReg*)’: (g++) 
     93compilers/imcc/symreg.c:861: warning: ignoring return value of ‘long int strtol(const char*, char**, int)’, declared with attribute warn_unused_result 
     94compilers/imcc/symreg.c:864: warning: ignoring return value of ‘long unsigned int strtoul(const char*, char**, int)’, declared with attribute warn_unused_result 
    12995 
    130 src/nci_test.c:138: warning: ‘int_cb_D4’ initialised and declared ‘extern’ 
    131 src/nci_test.c:139: warning: ‘nci_dlvar_char’ initialised and declared ‘extern’ 
    132 src/nci_test.c:140: warning: ‘nci_dlvar_short’ initialised and declared ‘extern’ 
    133 src/nci_test.c:141: warning: ‘nci_dlvar_int’ initialised and declared ‘extern’ 
    134 src/nci_test.c:142: warning: ‘nci_dlvar_long’ initialised and declared ‘extern’ 
    135 src/nci_test.c:143: warning: ‘nci_dlvar_float’ initialised and declared ‘extern’ 
    136 src/nci_test.c:144: warning: ‘nci_dlvar_double’ initialised and declared ‘extern’ 
    137 src/nci_test.c:145: warning: ‘nci_dlvar_cstring’ initialised and declared ‘extern’ 
     96the next two warnings are gcc (with or without --optimize): 
     97src/glut_nci_thunks.c:7835: warning: no previous prototype for ‘Parrot_glut_nci_loader’ 
    13898 
    139 ./gdbmhash.pmc:255: warning: function call has aggregate value 
    140 ./gdbmhash.pmc:190: warning: function call has aggregate value 
    141 ./gdbmhash.pmc:164: warning: function call has aggregate value 
    142 ./gdbmhash.pmc:166: warning: function call has aggregate value 
     99src/extra_nci_thunks.c:6704: warning: no previous prototype for ‘Parrot_lib_extra_nci_thunks_init’ 
    143100 
    144 obscure_ops_switch.c:128: warning: dereferencing type-punned pointer will break strict-aliasing rules 
    145  
    146 math_ops_switch.c:128: warning: dereferencing type-punned pointer will break strict-aliasing rules 
    147 }}} 
    148  
    149 mikehh: remaining warnings at r45484 - Ubuntu 10.04 beta amd64 (g++ with --optimize) 
    150  
    151 All tests PASS (pre/post-config, make corevm/make coretest, smoke (#33081), fulltest) 
    152  
    153 from make world: 
    154 {{{ 
    155 ... 
    156 src/ops/core_ops_switch.c: In function ‘op_lib_t* Parrot_DynOp_core_switch_2_2_0(parrot_interp_t*, long int)’: 
    157 src/ops/core_ops_switch.c:14711: warning: dereferencing type-punned pointer will break strict-aliasing rules 
    158  
    159 ./src/pmc/callcontext.pmc: In function ‘PMC* Parrot_CallContext_get_pmc(parrot_interp_t*, PMC*)’: 
    160 ./src/pmc/callcontext.pmc:757: warning: enumeral and non-enumeral type in conditional expression 
    161  
    162 ./src/pmc/imageio.pmc: In function ‘void visit_todo_list_freeze(parrot_interp_t*, PMC*, PMC*)’: 
    163 ./src/pmc/imageio.pmc:318: warning: enumeral and non-enumeral type in conditional expression 
    164 ./src/pmc/imageio.pmc: In function ‘FLOATVAL Parrot_ImageIO_shift_float(parrot_interp_t*, PMC*)’: 
    165 ./src/pmc/imageio.pmc:554: warning: cast from type ‘opcode_t**’ to type ‘const opcode_t**’ casts away constness 
    166 ./src/pmc/imageio.pmc: In function ‘INTVAL Parrot_ImageIO_shift_integer(parrot_interp_t*, PMC*)’: 
    167 ./src/pmc/imageio.pmc:535: warning: cast from type ‘opcode_t**’ to type ‘const opcode_t**’ casts away constness 
    168 ./src/pmc/imageio.pmc: In function ‘STRING* Parrot_ImageIO_shift_string(parrot_interp_t*, PMC*)’: 
    169 ./src/pmc/imageio.pmc:575: warning: cast from type ‘opcode_t**’ to type ‘const opcode_t**’ casts away constness 
    170  
    171 compilers/imcc/symreg.c: In function ‘int int_overflows(const SymReg*)’: 
    172 compilers/imcc/symreg.c:885: warning: ignoring return value of ‘long int strtol(const char*, char**, int)’, declared with attribute warn_unused_result 
    173 compilers/imcc/symreg.c:888: warning: ignoring return value of ‘long unsigned int strtoul(const char*, char**, int)’, declared with attribute warn_unused_result 
    174  
    175 ./gdbmhash.pmc: In function ‘STRING* Parrot_GDBMHash_get_string_keyed(parrot_interp_t*, PMC*, PMC*)’: 
    176 ./gdbmhash.pmc:250: warning: function call has aggregate value 
    177 ./gdbmhash.pmc: In function ‘INTVAL Parrot_GDBMHash_get_bool(parrot_interp_t*, PMC*)’: 
    178 ./gdbmhash.pmc:185: warning: function call has aggregate value 
    179 ./gdbmhash.pmc: In function ‘INTVAL Parrot_GDBMHash_get_integer(parrot_interp_t*, PMC*)’: 
    180 ./gdbmhash.pmc:159: warning: function call has aggregate value 
    181 ./gdbmhash.pmc:161: warning: function call has aggregate value 
    182  
    183 src/dynoplibs/obscure_ops_switch.c: In function ‘op_lib_t* Parrot_DynOp_obscure_switch_2_2_0(parrot_interp_t*, long int)’: 
    184 src/dynoplibs/obscure_ops_switch.c:127: warning: dereferencing type-punned pointer will break strict-aliasing rules 
    185  
    186 src/dynoplibs/math_ops_switch.c: In function ‘op_lib_t* Parrot_DynOp_math_switch_2_2_0(parrot_interp_t*, long int)’: 
    187 src/dynoplibs/math_ops_switch.c:127: warning: dereferencing type-punned pointer will break strict-aliasing rules 
    188  
     101and finally with g++ (with or without --optimize): 
    189102src/nci_test.c:139: warning: ‘int_cb_D4’ initialized and declared ‘extern’ 
    190103src/nci_test.c:140: warning: ‘nci_dlvar_char’ initialized and declared ‘extern’ 
     
    195108src/nci_test.c:145: warning: ‘nci_dlvar_double’ initialized and declared ‘extern’ 
    196109src/nci_test.c:146: warning: ‘nci_dlvar_cstring’ initialized and declared ‘extern’ 
    197 ... 
     110 
    198111}}} 
    199