Out of memory during compilation

2018-05-02 Thread Matt Gamble via Digitalmars-d-learn
I have a large program (for me) with several thousand lines of code. Recently when I've tried to compile under debug (-g -unittest) with VS2017, dmd2.076.1, windows 10, 8Gb ram), I've had the following output: Compiling SKaTERoptimizerD.d... Fatal Error: Out of memory Building x64\Debug\SKaTE

Re: Out of memory during compilation

2018-05-02 Thread Matt Gamble via Digitalmars-d-learn
On Wednesday, 2 May 2018 at 14:30:19 UTC, Joakim wrote: On Wednesday, 2 May 2018 at 14:25:35 UTC, Matt Gamble wrote: I have a large program (for me) with several thousand lines of code. Recently when I've tried to compile under debug (-g -unittest) with VS2017, dmd2.076.1, windows 10, 8Gb ram)

Re: Out of memory during compilation

2018-05-02 Thread Matt Gamble via Digitalmars-d-learn
On Wednesday, 2 May 2018 at 14:31:16 UTC, rikki cattermole wrote: On 03/05/2018 2:25 AM, Matt Gamble wrote: [...] Let me start by saying shared library support doesn't work (some people will say it does work partially, but it doesn't). The problem for you (I think) is that dmd is compiled a

issue with inf from exp function

2018-03-07 Thread Matt Gamble via Digitalmars-d-learn
I don't understand why I'm getting an 'inf' by raising E to a real number, e^^710.0L. See below. import std.stdio; import std.math; unittest { writefln("ln(largest double) = %s", log(double.max)); // 709.783 writefln("e^710 = %s", exp(710.0));// inf, makes sense writefl

Re: issue with inf from exp function

2018-03-07 Thread Matt Gamble via Digitalmars-d-learn
On Wednesday, 7 March 2018 at 16:00:39 UTC, Alex wrote: On Wednesday, 7 March 2018 at 15:44:28 UTC, Matt Gamble wrote: I don't understand why I'm getting an 'inf' by raising E to a real number, e^^710.0L. See below. import std.stdio; import std.math; unittest { writefln("ln(largest double) =

Re: issue with inf from exp function

2018-03-07 Thread Matt Gamble via Digitalmars-d-learn
On Wednesday, 7 March 2018 at 16:10:15 UTC, Marc wrote: On Wednesday, 7 March 2018 at 16:00:39 UTC, Alex wrote: On Wednesday, 7 March 2018 at 15:44:28 UTC, Matt Gamble wrote: [...] works for me as expected. ln(largest double) = 709.783 e^710 = inf ln(largest real) = 11356.5 e^710 = 2.23399e+

Re: issue with inf from exp function

2018-03-07 Thread Matt Gamble via Digitalmars-d-learn
On Wednesday, 7 March 2018 at 16:12:28 UTC, Matt Gamble wrote: On Wednesday, 7 March 2018 at 16:10:15 UTC, Marc wrote: On Wednesday, 7 March 2018 at 16:00:39 UTC, Alex wrote: On Wednesday, 7 March 2018 at 15:44:28 UTC, Matt Gamble wrote: [...] works for me as expected. ln(largest double) =

Re: issue with inf from exp function

2018-03-07 Thread Matt Gamble via Digitalmars-d-learn
On Wednesday, 7 March 2018 at 16:40:04 UTC, Steven Schveighoffer wrote: On 3/7/18 11:19 AM, Matt Gamble wrote: On Wednesday, 7 March 2018 at 16:12:28 UTC, Matt Gamble wrote: On Wednesday, 7 March 2018 at 16:10:15 UTC, Marc wrote: On Wednesday, 7 March 2018 at 16:00:39 UTC, Alex wrote: [...]

issue with each specifically for x86

2018-03-07 Thread Matt Gamble via Digitalmars-d-learn
This is a record for me with two 32bit vs 64bit issues in one day. Seems to be a problem with using "each" under 32bit which can be fixed by using foreach or switching to x64. Am I doing something wrong or is this the second bug I've found today? Below is a silly case, that replicates an error

Re: issue with each specifically for x86

2018-03-07 Thread Matt Gamble via Digitalmars-d-learn
On Wednesday, 7 March 2018 at 21:02:30 UTC, ag0aep6g wrote: On 03/07/2018 09:09 PM, ag0aep6g wrote: double f() { return 1; } void main() {     cast(void) f();     cast(void) f();     cast(void) f();     cast(void) f();     cast(void) f();     cast(void) f();     cast(void) f();   

Re: issue with each specifically for x86

2018-03-07 Thread Matt Gamble via Digitalmars-d-learn
On Wednesday, 7 March 2018 at 21:39:58 UTC, ketmar wrote: Matt Gamble wrote: On Wednesday, 7 March 2018 at 21:02:30 UTC, ag0aep6g wrote: On 03/07/2018 09:09 PM, ag0aep6g wrote: [...] With `real` instead of `double` x86_64 is also affected. Wow. Good to know I'm not crazy. I was afk for a