Andreas Schwab wrote: > Mark Mitchell <[EMAIL PROTECTED]> writes: > >> However, I think an even better fix is just to hard-code the string and >> make it volatile. Presumably, the use of argv[0] here is just to keep >> the compiler from optimizing the program away. So, I suggest doing >> something like: >> >> volatile char *x = "pr36321.exe"; > > ITYM: > > char *volatile x = "pr36321.exe";
Either should work; in either case, the compiler cannot assume the length of the string is computable at compile-time. (For example, in the case I gave, the "r" character could magically become "\0".) But, yes, your version is probably clearer. Or, we can put the volatile in both places. Thanks, -- Mark Mitchell CodeSourcery [EMAIL PROTECTED] (650) 331-3385 x713