view lphobos/internal/contract.d @ 1520:1a93c3da09ef

Yet another fix for finding llvm's config file. Since llvm-config --includedir sometimes includes the trailing llvm/ and sometimes it doesn't, we just check both directories.
author Christian Kamm <kamm incasoftware de>
date Tue, 30 Jun 2009 22:07:50 +0200
parents 373489eeaf90
children
line wrap: on
line source

module internal.contract;

import std.string: toString;
extern(C):

void exit(int);

/*void _d_assert(bool cond, uint line, char[] msg)
{
    if (!cond) {
        printf("Aborted(%u): %.*s\n", line, msg.length, msg.ptr);
        exit(1);
    }
}*/
void _d_assert(string file, uint line) {
  throw new Exception(file~":"~.toString(line)~": Assertion failed!");
}

void _d_assert_msg(string msg, string file, uint line) {
  throw new Exception(file~": "~.toString(line)~": Assertion failed: \""~msg~"\"");
}