Thread overview
[D-runtime] Upgraded to latest druntime, and it fails
Jan 15, 2011
Walter Bright
Jan 16, 2011
Walter Bright
Jan 19, 2011
Sean Kelly
January 15, 2011
..\dmd -c mydll

..\dmd mydll.obj ..\druntime\lib\gcstub.obj mydll.def -L/map

implib /noi /system mydll.lib mydll.dll
Digital Mars Import Library Manager Version 8.41n
Copyright (C) Digital Mars 2000-2004 All Rights Reserved,
www.digitalmars.com
implib/h for help
Input is a Windows NT DLL file 'MYDLL.DLL'.
Output is a Windows NT import library.
Digital Mars Import Library Creator complete.

..\dmd testmydll mydll.lib

testmydll
DLL_PROCESS_ATTACH
Start Static Link...
foo()
Hello world!
foo() done
End...

..\dmd testmydll -version=DYNAMIC_LOAD

testmydll
Start Dynamic Link...
DLL_PROCESS_ATTACH
mydll.dll loaded
GetProcAddress succeeded
object.Error: Access Violation

--- errorlevel 1
January 15, 2011
It's the block cache code in src/rt/lifetime.d

Walter Bright wrote:
> ..\dmd -c mydll
>
> ..\dmd mydll.obj ..\druntime\lib\gcstub.obj mydll.def -L/map
>
> implib /noi /system mydll.lib mydll.dll
> Digital Mars Import Library Manager Version 8.41n
> Copyright (C) Digital Mars 2000-2004 All Rights Reserved,
> www.digitalmars.com
> implib/h for help
> Input is a Windows NT DLL file 'MYDLL.DLL'.
> Output is a Windows NT import library.
> Digital Mars Import Library Creator complete.
>
> ..\dmd testmydll mydll.lib
>
> testmydll
> DLL_PROCESS_ATTACH
> Start Static Link...
> foo()
> Hello world!
> foo() done
> End...
>
> ..\dmd testmydll -version=DYNAMIC_LOAD
>
> testmydll
> Start Dynamic Link...
> DLL_PROCESS_ATTACH
> mydll.dll loaded
> GetProcAddress succeeded
> object.Error: Access Violation
>
> --- errorlevel 1
> _______________________________________________
> D-runtime mailing list
> D-runtime at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/d-runtime
>
>
January 19, 2011
Steve, any ideas?

On Jan 15, 2011, at 5:39 PM, Walter Bright wrote:

> It's the block cache code in src/rt/lifetime.d
> 
> Walter Bright wrote:
>> ..\dmd -c mydll
>> 
>> ..\dmd mydll.obj ..\druntime\lib\gcstub.obj mydll.def -L/map
>> 
>> implib /noi /system mydll.lib mydll.dll
>> Digital Mars Import Library Manager Version 8.41n
>> Copyright (C) Digital Mars 2000-2004 All Rights Reserved, www.digitalmars.com
>> implib/h for help
>> Input is a Windows NT DLL file 'MYDLL.DLL'.
>> Output is a Windows NT import library.
>> Digital Mars Import Library Creator complete.
>> 
>> ..\dmd testmydll mydll.lib
>> 
>> testmydll
>> DLL_PROCESS_ATTACH
>> Start Static Link...
>> foo()
>> Hello world!
>> foo() done
>> End...
>> 
>> ..\dmd testmydll -version=DYNAMIC_LOAD
>> 
>> testmydll
>> Start Dynamic Link...
>> DLL_PROCESS_ATTACH
>> mydll.dll loaded
>> GetProcAddress succeeded
>> object.Error: Access Violation
>> 
>> --- errorlevel 1
>> _______________________________________________
>> D-runtime mailing list
>> D-runtime at puremagic.com
>> http://lists.puremagic.com/mailman/listinfo/d-runtime
>> 
>> 
> _______________________________________________
> D-runtime mailing list
> D-runtime at puremagic.com
> http://lists.puremagic.com/mailman/listinfo/d-runtime