D issues are now tracked on GitHub. This Bugzilla instance remains as a read-only archive.
Issue 8606 - import std.string causes Optlink 'Error 32: Data Outside Segment Bounds : _DATA'
Summary: import std.string causes Optlink 'Error 32: Data Outside Segment Bounds : _DATA'
Status: RESOLVED MOVED
Alias: None
Product: D
Classification: Unclassified
Component: tools (show other issues)
Version: D2
Hardware: x86 Windows
: P2 normal
Assignee: No Owner
URL:
Keywords: Optlink
Depends on:
Blocks:
 
Reported: 2012-09-01 13:22 UTC by eric.brisco
Modified: 2020-04-09 08:51 UTC (History)
3 users (show)

See Also:


Attachments

Note You need to log in before you can comment on or make changes to this issue.
Description eric.brisco 2012-09-01 13:22:37 UTC
Unfortunately, I haven't narrowed the problem down. Here are the DirectX bindings that I am using that reproduce the error:
http://www.dsource.org/projects/bindings/browser/branches/erisco_directx/d?rev=401
(also included in the attachment)

Particularly, the 'import std.string' in d3d11.d seems to be causing the error (when removed, no error).

To reproduce: build these DirectX bindings into a lib (the DirectX bindings depend on part of win32 ... working project and build attached). Then, write any program that imports windows.directx.d3d11 and compile it (of course, linking to the lib). Optlink will crash with this output:

---------------------------------------------------------------------------------------

OPTLINK (R) for Win32  Release 8.00.12
Copyright (C) Digital Mars 1989-2010  All rights reserved.
http://www.digitalmars.com/ctg/optlink.html

dxgi.lib
 Warning 2: File Not Found dxgi.lib
d3d11.lib
 Warning 2: File Not Found d3d11.lib
..\lib\dmd_win32_x32.lib(d3d11) 
 Error 32: Data Outside Segment Bounds : _DATA
..\lib\dmd_win32_x32.lib(d3d11) 
 Error 32: Data Outside Segment Bounds : _DATA
..\lib\dmd_win32_x32.lib(d3d11) 
 Error 32: Data Outside Segment Bounds : _DATA
..\lib\dmd_win32_x32.lib(d3d11) 
 Error 32: Data Outside Segment Bounds : _DATA
..\lib\dmd_win32_x32.lib(d3d11) 
 Error 32: Data Outside Segment Bounds : _DATA
..\lib\dmd_win32_x32.lib(d3d11) 
 Error 32: Data Outside Segment Bounds : _DATA
..\lib\dmd_win32_x32.lib(d3d11) 
 Error 32: Data Outside Segment Bounds : _DATA
..\lib\dmd_win32_x32.lib(d3d11) 
 Error 32: Data Outside Segment Bounds : _DATA
..\lib\dmd_win32_x32.lib(d3d11) 
 Error 32: Data Outside Segment Bounds : _DATA

---------------------------------------------------------------------------------------

Sorry that this test case is so large; it may be useless, but I felt it was better to report it than do nothing.
Comment 1 eric.brisco 2012-09-01 13:25:51 UTC
Attachment was too large, so I uploaded it here:
http://www.erisco.net/optlinkbug/
Comment 2 Neil 2012-11-09 13:19:36 UTC
I was just having pretty much the exact same issue with 2.059.

I fixed it by deleting %temp%\.rdmd
Comment 3 Mathias LANG 2020-04-09 08:51:49 UTC
Moved to optlink Github repository: https://github.com/DigitalMars/optlink/issues/31