http://gcc.gnu.org/bugzilla/show_bug.cgi?id=51435
Tobias Burnus <burnus at gcc dot gnu.org> changed: What |Removed |Added ---------------------------------------------------------------------------- Keywords| |wrong-code CC| |burnus at gcc dot gnu.org Target Milestone|--- |4.6.3 Summary|Bad association status |[4.6/4.7 Regression] Bad |after null() of derived |association status after |type component |null() of derived type | |component --- Comment #1 from Tobias Burnus <burnus at gcc dot gnu.org> 2011-12-06 10:08:32 UTC --- With GCC 4.3, 4.4 and 4.5, I get: do_job my_data%head is NOT associated while GCC 4.6 prints do_job my_data%head is associated With GCC 4.7 I get the correct result ("NOT associated") but it shows the same valgrind warning as GCC 4.6. (GCC 4.5 shows no valgrind warning.) Thus, either the issue is fixed in 4.7 - and 4.6 and 4.7 have additional issues. Or it works in 4.7 only by chance. ==19540== Conditional jump or move depends on uninitialised value(s) ==19540== at 0x400776: __worker_mod_MOD_do_job (hjhjff.f90:29) ==19540== by 0x400849: MAIN__ (hjhjff.f90:47) ==19540== by 0x40087F: main (hjhjff.f90:44) Line 29 is: if (associated(dum%my_data%head)) then