that seems correct. if you want an incomplete type, you can specify that (with pragma incomplete).
--- Begin Message ---Hi,I get a different type sygnature depending on weather the arg to a function contains members which are in scope or not - is this expected or a bug? for example: /* junk.c */ typedef struct unknown unknown; #ifdef DEF struct unknown { int a; }; #endif typedef struct arg arg; struct arg { unknown *u; // Note pointer, not instance }; void func(arg a) { USED(a); } larch% 8c -T t.c && nm -T junk.8 b0b8ed37 T func larch% 8c -T -DDEF t.c && nm -T junk.8 763b103c T func -Steve
--- End Message ---