libraries may hide porting problems
der Mouse
mouse at mcgill-vision.UUCP
Sat Sep 10 06:56:37 AEST 1988
In article <Aug.31.18.45.05.1988.12460 at topaz.rutgers.edu>, ron at topaz.rutgers.edu (Ron Natalie) writes:
> You're problem is NOT that the _four is not properly reported as
> being multiply defined, it is that the module two.o isn't loaded at
> all. The "int a" declaration generates a .com of the appropriate
> space. Declarations need not force loading of modules with identical
> declarations.
Except the declarations weren't identical. The explicitly-loaded .o
file's declaration was explicitly extern. The one in the library was a
non-extern definition (a "tentative" definition). *Some* definition of
that variable is needed somewhere, or the loader will (properly)
generate an undefined symbol error. The problem is that two.o provides
that definition, but the definition is being taken from two.o without
including the rest of two.o. I agree with the original poster that
this is a bug.
der Mouse
old: mcgill-vision!mouse
new: mouse at larry.mcrcim.mcgill.edu
More information about the Comp.bugs.4bsd.ucb-fixes
mailing list