On 29/05/16 16:00, Michael Tautschnig wrote:
I have noticed that undi_loader is defined both as a struct as well as a
procedure:

src/arch/i386/drivers/net/undiload.c has
static struct s_UNDI_LOADER __bss16 ( undi_loader );

while src/arch/i386/include/pxe.h (also include from the above file) has:
extern PXENV_EXIT_t undi_loader ( struct s_UNDI_LOADER *undi_loader );

Presumably the compiler's name mangling (renaming the latter to, e.g.,
_undi_loader) will ensure this works in practice. But is that the intended set
up?

It's actually the __bss16() which happens to avoid a namespace collision. It's not compiler-specific.

Michael
_______________________________________________
ipxe-devel mailing list
ipxe-devel@lists.ipxe.org
https://lists.ipxe.org/mailman/listinfo.cgi/ipxe-devel

Reply via email to