On Monday, 13 October 2014 at 13:11:13 UTC, Gary Willoughby wrote:
On Monday, 13 October 2014 at 09:18:01 UTC, Chris wrote:
I have the same problem. If I don't use -O it works fine (-inline is ok). If I use it, I get an error when executing the program.

I had the same about a year ago, thought i was going crazy and refactored the program and it went away. Never did find out what was causing it.

Here too. I just managed to pare it down to 2 files:

-- main.d --
import std.algorithm;
import failsinline;

void main()
{
  auto fail = new FailsInline();
}
-- main.d --

-- failsinline.d --
import std.algorithm;
import std.array;

void failsinline()
{
  auto transform = (int i) => i;
  [0].map!transform.array;
}
-- failsinline.d --

'rdmd main.d' works fine.
'rdmd -inline main.d' gives object.Error@(0): Access Violation.

Removing the std.algorithm import from main.d makes it work fine.

Same issue in dmd 2.066, 2.066-rc2 and 2.067-b1.

Reply via email to