This is the mail archive of the
gcc-patches@gcc.gnu.org
mailing list for the GCC project.
Re: [PATCH][LTO] Committed patch to fix a crash due to syntax error.
It does but that is no different from top of trunk or other verions.
cc1plus will write something in the output file and abort the
compilation with a non-zero exit code. Note that the check for
non-zero errcount. The compiler will not crash only if there are
syntax errors. If there is no error and a GIMPLE_TRY_CATCH has an
empty clean-up body, it is a problem in gcc and that should be caught
by the assert. From a usability point of view, it is better to just
print an error instead of crashing.
--bug.cc--
extern bool foo;
void func() { if (foo) { try { return; } catch () {} } }
-------
$ rm -rf bug.s
$ g++ -O2 -S bug.cc /* this is normal, non LTO gcc. */
bug.cc: In function 'void func()':
bug.cc:2: error: expected type-specifier before ')' token
$ cat bug.s
.file "bug.cc"
.ident "GCC: (GNU) 4.0.3 (Ubuntu 4.0.3-1ubuntu5)"
.section .note.GNU-stack,"",@progbits
$
2008/10/9 Richard Guenther <richard.guenther@gmail.com>:
>
> Does this mean -flto writes out translation units which contain
> errors?
>