From: hubicka Date: Thu, 11 Sep 2014 06:48:23 +0000 (+0000) Subject: * varpool.c (varpool_node::ctor_useable_for_folding_p): Do not try X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=8640c57182f4279c2125915f1f3e4d4e7ebda7a4;p=thirdparty%2Fgcc.git * varpool.c (varpool_node::ctor_useable_for_folding_p): Do not try to access removed nodes. git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@215150 138bc75d-0d04-0410-961f-82ee72b054a4 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 242704859b92..40f912ab9d29 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,8 @@ +2014-09-10 Jan Hubicka + + * varpool.c (varpool_node::ctor_useable_for_folding_p): Do not try + to access removed nodes. + 2014-09-10 Jan Hubicka PR tree-optimization/63186 diff --git a/gcc/varpool.c b/gcc/varpool.c index 72971d61b53e..14ef0896eac2 100644 --- a/gcc/varpool.c +++ b/gcc/varpool.c @@ -316,6 +316,11 @@ varpool_node::ctor_useable_for_folding_p (void) && !real_node->lto_file_data) return false; + /* Avoid attempts to load constructors that was not streamed. */ + if (flag_ltrans && DECL_INITIAL (real_node->decl) == error_mark_node + && real_node->body_removed) + return false; + /* Vtables are defined by their types and must match no matter of interposition rules. */ if (DECL_VIRTUAL_P (decl))