Exception on attempt to build DLL with align 16
Posted: 21 Nov 2024 22:40
Hi, vitsoft!
It seems to be an issue in the latest Version 20240831.
Minimal code to reproduce:
TestDLL.asm:
EUROASM CPU=X64
TestDLL PROGRAM FORMAT=DLL, MODEL=FLAT, WIDTH=64, ICONFILE=
align 16
EXPORT foo
foo PROC
RET
ENDP foo
ENDPROGRAM TestDLL
Attempt to build it as
>euroasm.exe TestDLL.asm
caused exception somewhere between first and second pass.
The last lines one the screen:
I0010 EuroAssembler version 20240831 started.
I0020 Current directory is "C:\Users\Andrey\Desk~~sembler_DLL_tEST\new".
I0070 Assembling global option file "C:\Users\Andrey\Desk~~tEST\new\euroasm.ini".
I0170 Assembling local option file "euroasm.ini".
I0180 Assembling source file "TestDLL.asm".
I0270 Assembling source "TestDLL".
I0310 Assembling source pass 1.
I0330 Assembling source pass 2 - final.
I0470 Assembling program "TestDLL". "TestDLL.asm"{2}
I0510 Assembling program pass 1. "TestDLL.asm"{2}
And no TestDLL.dll created.
Debugger screenshot:
But if this code "compiled" (I mean assembled) with previous Version 20190402 everything working properly.
And if I will remove "align 16" line from the source, then the latest version is also fine. But if "align 16" is present then only previous version is OK, the newest crashed.
It seems to be an issue in the latest Version 20240831.
Minimal code to reproduce:
TestDLL.asm:
EUROASM CPU=X64
TestDLL PROGRAM FORMAT=DLL, MODEL=FLAT, WIDTH=64, ICONFILE=
align 16
EXPORT foo
foo PROC
RET
ENDP foo
ENDPROGRAM TestDLL
Attempt to build it as
>euroasm.exe TestDLL.asm
caused exception somewhere between first and second pass.
The last lines one the screen:
I0010 EuroAssembler version 20240831 started.
I0020 Current directory is "C:\Users\Andrey\Desk~~sembler_DLL_tEST\new".
I0070 Assembling global option file "C:\Users\Andrey\Desk~~tEST\new\euroasm.ini".
I0170 Assembling local option file "euroasm.ini".
I0180 Assembling source file "TestDLL.asm".
I0270 Assembling source "TestDLL".
I0310 Assembling source pass 1.
I0330 Assembling source pass 2 - final.
I0470 Assembling program "TestDLL". "TestDLL.asm"{2}
I0510 Assembling program pass 1. "TestDLL.asm"{2}
And no TestDLL.dll created.
Debugger screenshot:
But if this code "compiled" (I mean assembled) with previous Version 20190402 everything working properly.
And if I will remove "align 16" line from the source, then the latest version is also fine. But if "align 16" is present then only previous version is OK, the newest crashed.