http://gcc.gnu.org/bugzilla/show_bug.cgi?id=58253
--- Comment #6 from Jorn Wolfgang Rennecke <amylaar at gcc dot gnu.org> --- (In reply to Martin Jambor from comment #1) > But again, I am not really sure what the semantics of alignment of > scalar PARM_DECL is. The relevance of various type properties will vary from target to target. The only safe way for the caller to receive the arguments as passed is to have caller and callee agree on the types passed. It would seem to me that computing the types once and then storing them somewhere, so that identical argument lists are used when procesing caller and callee, is the safest way to make argument lists agree. However, if you can make sure that you compute the same types in both places, I suppose that should work too. >From a performance point of view, alignment to the natural alignment of an integral mode is generally better than a lesser alignment, because it allows efficient loads / stores to stack slots, should any become necessary. > Nevertheless, can you please check if the patch > indeed fixes the bug? If so, I'll post it to the mailing list for > review/further discussion. Thanks. The patch gets rid of the gcc.dg/torture/pr52402.c execution failures. The only other difference observed with/without the patch is 8192 vs. 8173 tests being run in the libstdc++-v3 testsuite; the number of tests run there under Fedora 19/20 appears to vary from time to time independently of the compiler under test, so without running a statistically significant number of test runs (which would take a few months), I wouldn't draw any conclusion regarding the compiler from these differences.