On Tuesday, 23 June 2015 at 02:34:17 UTC, Charles Hawkins wrote:
How do I find out what that means?

Many return codes have a meaning in the linux documentation:

http://www.tldp.org/LDP/abs/html/exitcodes.html#EXITCODESREF

(it lists them as unsigned, but you got a signed result. 128 == -1, so -11 falls under the 128+ section in that table)


-11 means it exited with signal 11. Do "man 7 signal" in linux to get the signal documentation overview. One of the lines there is:

       SIGSEGV      11       Core    Invalid memory reference


Signal #11 is segmentation fault.



Since you're a D newbie, I'm guessing you made the mistake of forgetting to new a class before using it:

class Foo {}

void main() {
   Foo foo;
   foo.something(); // this will segfault, killing the program
}


That's different than C++, D's classes are more like Java. You need to:

Foo foo = new Foo();

or

auto foo = new Foo();

so it isn't a null reference.

Reply via email to