Version script vs. mangled names on systems where size_type != unsigned int

Dave Korn dave.korn.cygwin@googlemail.com
Thu Dec 17 14:11:00 GMT 2009


Paolo Carlini wrote:
> On 12/17/2009 03:17 PM, Dave Korn wrote:
>> I really can't see any sensible place to do that; there's absolutely
>> nothing
>> documenting what any of the other parts and sub-parts of patterns mean and if
>> I'm describing 'x' and 'y' it's going to be by contrasting them with 'i' and
>> 'j' ... which also aren't described anywhere.  If you have a good suggestion,
>> I'll run with it when I commit, but otherwise I think I'd rather just let the
>> changelog speak for itself.
>>   
> Actually we *should* have something documenting the patterns, patches
> welcome ;)
> 
> For now, just one line right before the first occurrence (and saying
> "... and below") will do.

  I'm not sure what first occurrence you mean or what goes before "...and
below" in that sentence, but how about this instead:

> Index: config/abi/pre/gnu.ver
> ===================================================================
> --- config/abi/pre/gnu.ver	(revision 155007)
> +++ config/abi/pre/gnu.ver	(working copy)
> @@ -164,23 +164,26 @@ GLIBCXX_3.4 {
>  #     __gnu_debug::_Error_formatter*
>      };
>  
> -    # Names not in an 'extern' block are mangled names.
> +    # Names not in an 'extern' block are mangled names.  Character classes
> +    # are used in many of the regex patterns to compensate for minor differences
> +    # among the standard integer types and sizes on different platforms and
> +    # under different modes of 64-bit architecture (ILP64, LLP64, etc.)
>  
>      # std::string

... on top of the previously-posted pr42377-take3.diff?

    cheers,
      DaveK



More information about the Libstdc++ mailing list