[patch]: Allow in dlltool addiional underscoring options for symbols

Kai Tietz ktietz70@googlemail.com
Wed Oct 28 13:13:00 GMT 2009


2009/10/27 Dave Korn <dave.korn.cygwin@googlemail.com>:
> Kai Tietz wrote:
>
>>> 2009-10-26  Kai Tietz <kai.tietz@
>>>
>>> * dlltoo.c (leading_underscore): New local variable.
>
>  Typo in "dlltool".
>
>>> (asm_prefix): Interprete leading_underscore.
>
>  "Interpret" has no trailing 'e'.  Perhaps just "Use" if you'd prefer?
>
>  Only one tiny point in the patch:
>
>> --- src.orig/binutils/dlltool.c       2009-10-23 16:47:36.000000000 +0200
>> +++ src/binutils/dlltool.c    2009-10-26 15:49:15.296692100 +0100
>> @@ -394,6 +394,7 @@
>>  static int add_indirect = 0;
>>  static int add_underscore = 0;
>>  static int add_stdcall_underscore = 0;
>> +static int leading_underscore = -1;
>>  static int dontdeltemps = 0;
>
>  Since this is a tri-state rather than a boolean like the rest, please add a
> comment documenting the values it takes and how it interacts with
> add_underscore and add_stdcall_underscore.  We appear to be gradually
> accumulating flags with a similar or overlapping semantics here, so let's try
> and keep it simple to understand for whoever comes after us.
>
>>> Tested for x86_64-pc-mingw32, i686-pc-mingw32, and i686-pc-cygwin. Ok for
>>> apply?
>
>  Because this code is getting hairy and has all these multiple interacting
> flags, I'm going to insist on testcases, but the patch is good.  OK once
> you've added testcases.  They should verify the option works in both positive
> and negative forms.  For bonus points, you could make them verify the
> interactions between this option and the other underscore-related options DTRT
> :) but I won't insist on that part of it.
>
>    cheers,
>      DaveK

Hi Dave,

here is the extended patch with testcases.

2009-10-28  Kai Tietz <kai.tietz@onevision.com>

	* dlltool.c (leading_underscore): New local variable.
	(asm_prefix): Interpret leading_underscore.
	(xlate): Likewise.
	(add_excludes): Use leading_underscore for making
	symbol name.
	(gen_exp_file): Use leading_underscore for internal
	_imp_ symbols.
	(usage): Add display of --no-leading-underscore and
	--leading-underscore option.
	(OPTION_NO_LEADING_UNDERSCORE): New.
	(OPTION_LEADING_UNDERSCORE): New.
	(long_options): Add --no-leading-underscore and
	--leading-underscore option.
	(main): Handle new options.
	* doc/binutils.text: Add documentation of the options
	--no-leading-underscore and --leading-underscore.

2009-10-28  Kai Tietz <kai.tietz@onevision.com>

	* binutils-all/dlltool.exp: Add tests for --no-leading-underscore
	and --leading-underscore option for dlltool.


Tested for x86_64-pc-mingw32, i686-pc-mingw32, and i686-pc-mingw32. Ok
for apply?

Cheers,
Kai

-- 
|  (\_/) This is Bunny. Copy and paste
| (='.'=) Bunny into your signature to help
| (")_(") him gain world domination
-------------- next part --------------
A non-text attachment was scrubbed...
Name: imp_symbols.diff
Type: application/octet-stream
Size: 11307 bytes
Desc: not available
URL: <https://sourceware.org/pipermail/binutils/attachments/20091028/ed74d0f1/attachment.obj>


More information about the Binutils mailing list