@lupyuen I am not hardcore C programmer, but I think the test is incorrect, since it on one hand asks about defined behavior, yet answers are aligned with C for x64.
I am pretty (but not totally) sure that many of the answers are not spec accurate for all bit widths of underlying architecture.

@niclas @lupyuen I think the quiz covers "spec defined" and "implementation defined" behavior, and it says at the beginning, "All other things being equal, assume GCC/LLVM x86/x64 implementation-defined behaviors."

The C spec leaves some things for the implementation to decide, but any implementation needs to decide them. So a conforming program can depend on the question having *some* answer, even though the answer isn't given by the spec.

By contrast, the spec also has some behaviors as undefined, and a program that invokes undefined behavior has no guarantees at all (by the spec).

Sign in to participate in the conversation
CleverLibre Social

CleverLibre Social is an inclusive social instance for open discussion, learning, and community.
All cultures welcome.
Hate speech and harassment strictly forbidden.