struct ProtocolConformance { int f0; }; void *TupleEquatable_witness_method(void); static struct ProtocolConformance TupleEquatable = { .f0 = (void *)&TupleEquatable - (void *)TupleEquatable_witness_method, };
foo.c:8:9: error: initializer element is not a compile-time constant .f0 = (void *)&TupleEquatable - (void *)TupleEquatable_witness_method, ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ 1 error generated.