This test has a lot of classes with large amounts of manually inserted padding in them, presumable to prevent various optimizations. The test then creates lots of these objects on the stack. On embedded targets, this was usually enough to overflow the stack.
I moved the objects to global / namespace scope. Since the tests are each in their own namespace, there should be no cross-test conflicts.
Using long double here (instead of char) forces alignment; reducing the scope of the tests.
(and means that the sizes are always an even number, and (probably) a multiple of 8.