hiding of (global) C++ symbols in shared object

Michael Matz matz@ifh.de
Tue May 16 14:41:00 GMT 2000


Hi,

On Mon, 15 May 2000, Richard Henderson wrote:
> Incidentally, version maps do support
> 
> 	extern "C++" {
> 	  some_class::function
> 	  other_class::*
> 	}
> 
> though you can't export just one flavour of overridden
> function that way.

Now that's even cooler ;) If it would work. With the following map:
libtest {
  global:
    extern "C++" {
      Global::*
    };
  local:
    *;
};

ld segfaults. (And it does not recognize the '::' in Global::) It
segfaults because the yacc rule for parsing the "extern" declaration is
wrong. For both problems is a small diff in the attachment. With that I'm
nearly wishless happy ;) (for ELF at least)


Ciao,
Michael.


More information about the Binutils mailing list