On 8 Jul 2011, at 15:00, Sebastian Reitenbach wrote:

>> I'm not sure if it's related, but I was seeing 'conditional jump depends on 
>> uninitialised value' errors in valgrind while loading defaults.  I think it 
>> was somewhere in GSXML, but I'm not completely sure - by the time I got 
>> around to trying to find the cause, they'd stopped happening.  I assumed 
>> that meant someone had fixed the relevant bug, but it might just have meant 
>> that my defaults settings had changed in a way that stopped the bug from 
>> being triggered.
> 
> I guess, uninitialized variables, the compiler should warn, when it 
> encounters it while compiling.


Not always.  In GCC, it only warns at all in an optimised build, because it 
only computes a code flow graph during optimisation.  In any case, often the 
compiler doesn't have enough information to know.  For example:

int foo;
bar(&foo);

Is foo used uninitialized?  Maybe.  If bar starts with *foo = 0, then no.  If 
bar starts with if (foo) then yes.  If bar is defined in another compilation 
unit, the compiler can't tell.  

David

-- Send from my Jacquard Loom


_______________________________________________
Discuss-gnustep mailing list
[email protected]
https://lists.gnu.org/mailman/listinfo/discuss-gnustep

Reply via email to