This typo in check_for_nested_with_variably_modified was present for 4 years
and hampered the inliner without anyone noticing:
Index: tree-nested.c
===================================================================
--- tree-nested.c (revision 136121)
+++ tree-nested.c (working copy)
@@ -693,7 +693,7 @@ check_for_nested_with_variably_modified
for (cgn = cgn->nested; cgn ; cgn = cgn->next_nested)
{
for (arg = DECL_ARGUMENTS (cgn->decl); arg; arg = TREE_CHAIN (arg))
- if (variably_modified_type_p (TREE_TYPE (arg), 0), orig_fndecl)
+ if (variably_modified_type_p (TREE_TYPE (arg), orig_fndecl))
return true;
It would be nice for the compiler to warn in this case, i.e. when members of
a compound expression (except for the last) don't have obvious side-effects.
--
Summary: warning for questionable compound expression
Product: gcc
Version: 4.4.0
Status: UNCONFIRMED
Severity: enhancement
Priority: P3
Component: c
AssignedTo: unassigned at gcc dot gnu dot org
ReportedBy: ebotcazou at gcc dot gnu dot org
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=36367