From b581da41f82cd1e19701030bf47675b426608adf Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Wed, 28 Sep 2016 02:33:32 -0400 Subject: remove compiler directives * add `setFnTest`, `setFnVisible`, `setFnStaticEval`, `setFnNoInline` builtin functions to replace previous directive functionality * add `coldcc` and `nakedcc` as keywords which can be used as part of a function prototype. * `setDebugSafety` builtin can be used to set debug safety features at a per block scope level. * closes #169 --- src/eval.cpp | 7 ++++++- 1 file changed, 6 insertions(+), 1 deletion(-) (limited to 'src/eval.cpp') diff --git a/src/eval.cpp b/src/eval.cpp index 3677a14f6a..b74fb38af9 100644 --- a/src/eval.cpp +++ b/src/eval.cpp @@ -963,6 +963,12 @@ static bool eval_fn_call_builtin(EvalFn *ef, AstNode *node, ConstExprValue *out_ case BuiltinFnIdCompileErr: case BuiltinFnIdIntType: zig_unreachable(); + case BuiltinFnIdSetFnTest: + case BuiltinFnIdSetFnVisible: + case BuiltinFnIdSetFnStaticEval: + case BuiltinFnIdSetFnNoInline: + case BuiltinFnIdSetDebugSafety: + return false; } return false; @@ -1398,7 +1404,6 @@ static bool eval_expr(EvalFn *ef, AstNode *node, ConstExprValue *out) { case NodeTypeUse: case NodeTypeAsmExpr: case NodeTypeParamDecl: - case NodeTypeDirective: case NodeTypeTypeDecl: zig_unreachable(); } -- cgit v1.2.3