From: Volker Reichelt Date: Tue, 1 Jan 2008 23:08:05 +0000 (+0000) Subject: re PR libmudflap/26442 (ICE on valid unreachable code (and no name) when compiling... X-Git-Tag: releases/gcc-4.3.0~782 X-Git-Url: http://git.ipfire.org/cgi-bin/gitweb.cgi?a=commitdiff_plain;h=882e337b65a23a58ce2600f371704c186720b76d;p=thirdparty%2Fgcc.git re PR libmudflap/26442 (ICE on valid unreachable code (and no name) when compiling with -fmudflap) PR libmudflap/26442 * tree-mudflap.c (mx_register_decls): Guard warning by !DECL_ARTIFICIAL check. * testsuite/libmudflap.c++/pass60-frag.cxx: New test. From-SVN: r131249 --- diff --git a/gcc/ChangeLog b/gcc/ChangeLog index 37c9a5282fa8..ce2f258a9b1b 100644 --- a/gcc/ChangeLog +++ b/gcc/ChangeLog @@ -1,3 +1,9 @@ +2008-01-01 Volker Reichelt + + PR libmudflap/26442 + * tree-mudflap.c (mx_register_decls): Guard warning by + !DECL_ARTIFICIAL check. + 2008-01-01 Jakub Jelinek * config/i386/sse.md (sse5_pperm, sse5_pperm_pack_v2di_v4si, diff --git a/gcc/tree-mudflap.c b/gcc/tree-mudflap.c index 950ad8c2fd59..4b9c11830baa 100644 --- a/gcc/tree-mudflap.c +++ b/gcc/tree-mudflap.c @@ -1045,8 +1045,11 @@ mx_register_decls (tree decl, tree *stmt_list) /* Add the __mf_register call at the current appending point. */ if (tsi_end_p (initially_stmts)) - warning (0, "mudflap cannot track %qs in stub function", - IDENTIFIER_POINTER (DECL_NAME (decl))); + { + if (!DECL_ARTIFICIAL (decl)) + warning (0, "mudflap cannot track %qs in stub function", + IDENTIFIER_POINTER (DECL_NAME (decl))); + } else { tsi_link_before (&initially_stmts, register_fncall, diff --git a/libmudflap/ChangeLog b/libmudflap/ChangeLog index be52732ee765..081f14c2ed5e 100644 --- a/libmudflap/ChangeLog +++ b/libmudflap/ChangeLog @@ -1,3 +1,8 @@ +2008-01-01 Volker Reichelt + + PR libmudflap/26442 + * testsuite/libmudflap.c++/pass60-frag.cxx: New test. + 2007-10-15 Maciej W. Rozycki * configure: Regenerate following changes to ../config/tls.m4. diff --git a/libmudflap/testsuite/libmudflap.c++/pass60-frag.cxx b/libmudflap/testsuite/libmudflap.c++/pass60-frag.cxx new file mode 100644 index 000000000000..35989d122b13 --- /dev/null +++ b/libmudflap/testsuite/libmudflap.c++/pass60-frag.cxx @@ -0,0 +1,13 @@ +// PR 26442 + +struct A +{ + A(); +}; + +int main() +{ + if (0) + A(); + return 0; +}