blob: a11e120fa8ea1970a2402dafb91461095a6af64c [file] [log] [blame]
/*
TEST_OUTPUT:
---
fail_compilation/diag10319.d(25): Error: pure function 'D main' cannot call impure function 'diag10319.foo'
fail_compilation/diag10319.d(25): Error: @safe function 'D main' cannot call @system function 'diag10319.foo'
fail_compilation/diag10319.d(26): Error: pure function 'D main' cannot call impure function 'diag10319.bar!int.bar'
fail_compilation/diag10319.d(26): Error: @safe function 'D main' cannot call @system function 'diag10319.bar!int.bar'
fail_compilation/diag10319.d(25): Error: function `diag10319.foo` is not nothrow
fail_compilation/diag10319.d(26): Error: function `diag10319.bar!int.bar` is not nothrow
fail_compilation/diag10319.d(23): Error: nothrow function `D main` may throw
---
*/
void foo() {}
void bar(T)()
{
static int g; g = 10; // impure
int x; auto p = &x; // system
throw new Exception(""); // may throw
}
@safe pure nothrow void main() // L23
{
foo(); // L25
bar!int(); // L26
}