re PR c++/14804 ([unit-at-a-time] initializing const data with reinterpret_cast-ed pointer-to-member function crashes)

PR c++/14804
	* varasm.c (initializer_constant_valid_p): Allow NOP_EXPRs to
	RECORD_TYPEs.

From-SVN: r80404
This commit is contained in:
Mark Mitchell 2004-04-04 22:51:02 +00:00 committed by Mark Mitchell
parent aaf3c6d91d
commit 644809883a
2 changed files with 10 additions and 2 deletions

View File

@ -1,3 +1,9 @@
2004-04-04 Mark Mitchell <mark@codesourcery.com>
PR c++/14804
* varasm.c (initializer_constant_valid_p): Allow NOP_EXPRs to
RECORD_TYPEs.
2004-04-04 Mark Mitchell <mark@codesourcery.com>
* doc/invoke.texi (-mabi=o64): Create link to O64 ABI

View File

@ -3332,8 +3332,10 @@ initializer_constant_valid_p (tree value, tree endtype)
endtype);
}
/* Allow conversions to union types if the value inside is okay. */
if (TREE_CODE (TREE_TYPE (value)) == UNION_TYPE)
/* Allow conversions to struct or union types if the value
inside is okay. */
if (TREE_CODE (TREE_TYPE (value)) == RECORD_TYPE
|| TREE_CODE (TREE_TYPE (value)) == UNION_TYPE)
return initializer_constant_valid_p (TREE_OPERAND (value, 0),
endtype);
break;