view lphobos/internal/contract.d @ 1179:71479f6e2a01

Give function & delegate literals, foreach bodies and lazy parameters internal linkage.
author Frits van Bommel <fvbommel wxs.nl>
date Mon, 30 Mar 2009 16:34:36 +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~"\"");
}