This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug lto/60449] Merging function DECLs discards leaf attribute which causes cfg verifier to fail
- From: "rguenth at gcc dot gnu.org" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: Tue, 01 Apr 2014 12:36:27 +0000
- Subject: [Bug lto/60449] Merging function DECLs discards leaf attribute which causes cfg verifier to fail
- Auto-submitted: auto-generated
- References: <bug-60449-4 at http dot gcc dot gnu dot org/bugzilla/>
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=60449
--- Comment #10 from Richard Biener <rguenth at gcc dot gnu.org> ---
(In reply to Richard Biener from comment #9)
> (In reply to Richard Biener from comment #8)
> > *** Bug 60721 has been marked as a duplicate of this bug. ***
>
> See there for another proposed fix to retain per-call 'leaf' (well,
> no-abnormal-goto) status.
Btw, similar to this flag a flag for a per-call 'noreturn' status should
be added as well, getting rid of that MODIFIED_NORETURN_CALLS red herring
on the way (basically defer committing 'noreturn' from a decl to all callers
until a suitable time). I suppose different 'noreturn' status in LTO units
can also cause a similar issue where a (no longer after merging) noreturn
call ending BB fails to have a fallthru edge.