public inbox for gcc-cvs@sourceware.org
help / color / mirror / Atom feed
* [gcc/devel/rust/master] Merge #1391
@ 2022-07-18 7:05 Thomas Schwinge
0 siblings, 0 replies; only message in thread
From: Thomas Schwinge @ 2022-07-18 7:05 UTC (permalink / raw)
To: gcc-cvs
https://gcc.gnu.org/g:e4cdb24c468b8a848980f7138767fbe093471c5b
commit e4cdb24c468b8a848980f7138767fbe093471c5b
Merge: fd2bd659e44 9c7a580aa13
Author: bors[bot] <26634292+bors[bot]@users.noreply.github.com>
Date: Sun Jul 17 19:52:16 2022 +0000
Merge #1391
1391: Fix ICE on duplicate compilation of ExternBlock items r=philberty a=philberty
When we declare an extern block after where it is used the query
compilation system in the backend code-gen pass will resolve this and
compile as required. But when the iteration of the crate as part of the
pipeline we end up compiling this function again. The check we used to stop
this was copy paste from the other function items but in this case the
check for function_completed is not valid as this is a prototype for an
extern item so we dont add this to the translation unit as an fndecl which
meant we hit the ICE where we compile and add it again.
Fixes #1323
Co-authored-by: Philip Herron <philip.herron@embecosm.com>
Diff:
gcc/rust/backend/rust-compile-extern.h | 20 ++++++++++++--------
gcc/testsuite/rust/compile/issue-1323-1.rs | 18 ++++++++++++++++++
gcc/testsuite/rust/compile/issue-1323-2.rs | 16 ++++++++++++++++
3 files changed, 46 insertions(+), 8 deletions(-)
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2022-07-18 7:05 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2022-07-18 7:05 [gcc/devel/rust/master] Merge #1391 Thomas Schwinge
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).