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