At the binary level, both:
Displacement const disp;
and
Displacement disp;
are identical.
Only the latter works with both gcc and clang compilers. And although you could possibly make the expression more complex to keep the variable const, that would contradict the intention of the test cases in question -- to represent a completely uninitialized object.
Since the intention of this code is to test what happens to uninitialized objects, I think it would be preferable to avoid assignment. Regardless of assumptions about what might get optimized out.
I think we're wasting time here.
At the binary level, both:
Displacement const disp;
and
Displacement disp;
are identical.
Only the latter works with both gcc and clang compilers. And although you could possibly make the expression more complex to keep the variable const, that would contradict the intention of the test cases in question -- to represent a completely uninitialized object.
Since the intention of this code is to test what happens to uninitialized objects, I think it would be preferable to avoid assignment. Regardless of assumptions about what might get optimized out.