Hello,
With both the most current git commit (b082659) and version 0.9.27, on Ubuntu
16.04 on x86-64, when compiling the provided input addrof_addrof.i, TCC stops
abruptly with the message below:
$ cat addrof_addrof.i
void f(void) {
int i;
char *p;
p + &&b[i];
}
$ ./tcc addrof_addrof.i
tcc: x86_64-gen.c:441: load: Assertion `((ft & VT_BTYPE) == VT_INT) || ((ft &
VT_BTYPE) == VT_LLONG) || ((ft & VT_BTYPE) == VT_PTR) || ((ft & VT_BTYPE) ==
VT_FUNC)' failed.
Aborted
I believe that it is interpreting &&b as the address of a label, a GCC
extension to ease the implementation of interpreters and, according to
https://bellard.org/tcc/tcc-doc.html , supported by TCC.
Pascal
_______________________________________________
Tinycc-devel mailing list
[email protected]
https://lists.nongnu.org/mailman/listinfo/tinycc-devel