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 ---

Reply via email to