[Nasm-bugs] [Bug 3392629] nasm 20191023 adds an underscore as the first letter for any export symbol

noreply-nasm at dev.nasm.us noreply-nasm at dev.nasm.us
Mon Oct 28 02:43:19 PDT 2019


https://bugzilla.nasm.us/show_bug.cgi?id=3392629

Michael Murashkin <ragnarokkx at inbox.ru> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |ragnarokkx at inbox.ru

--- Comment #3 from Michael Murashkin <ragnarokkx at inbox.ru> ---
I suspect this:

libjpeg-turbo has file simd\nasm\jsimdext.inc that has line 59 reading like
this:

%define EXTN(name)  name                ; foo() -> foo

This line must be invoked if WIN64 is defined.

On line 185 jsimdext.inc has this expression:

%ifndef EXTN
%define EXTN(name)  _ %+ name           ; foo() -> _foo
%endif

So, I suspect the following: nasm before 20191023 successfully detected the
situation that symbol EXTN was already defined, so it didn't invoke line 186

%define EXTN(name)  _ %+ name           ; foo() -> _foo

Nasm 20191023 fails to detect that symbol EXTN was already defined, so it does
erroneously invoke line 186.

I strongly suspect that the error that causes this sits inside smacro_defined
(line 2285) in asm\preproc.c. smacro_defined fails to detect that a symbol is
already defined.

-- 
You are receiving this mail because:
You are watching all bug changes.
You are on the CC list for the bug.


More information about the Nasm-bugs mailing list