For C, the proper/expected/standard way to reference a variable without accessing it is a cast to void:
(void) a;
Not if you use GCC.
https://godbolt.org/z/zYdc9ej88
clang gets this right.
Not if you use GCC.
https://godbolt.org/z/zYdc9ej88
clang gets this right.