Hello, Objects generated using '-ggdb3' are different if the compilation process is split in 2 steps (preprocessing and then compilation) or not.
The issue can be reproduced for the following 'main.c' code using the commands 'gcc -ggdb3 -c main.c' and 'gcc -ggdb3 -c main.c -E > main.i; gcc -ggdb3 -c main.i'. The resulting sizes are respectively 15400 and 3992 bytes. Using '-ggdb2' the generated objects are the same. I guess some debugging information is lost when the compilation process is split into two steps but as anyway the macro information generated using 'ggdb3' is not usable with gcc 3.4.5 I did not investigated. Does anybody know if this is the expected behavior or if it is a bug? Does a workaround exist? Thanks in advance and best regards, Serge PS: we use gcc 3.4.5 on a Linux/Suse Linux Enterprise Server 9 but the behavior is the same on Solaris 10 (same gcc version). The main.c code: #include <stdio.h> int main(int argc, char **argv) { printf("Hello\n"); return 0; } -- Summary: ggdb3 information lost using temporary preprocessed file ? Product: gcc Version: 3.4.5 Status: UNCONFIRMED Severity: normal Priority: P3 Component: preprocessor AssignedTo: unassigned at gcc dot gnu dot org ReportedBy: sb7206 at gmail dot com http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30246