From deb35868841fc3eb99228fe102a5b8ed1991d51f Mon Sep 17 00:00:00 2001 From: Andrew Kelley Date: Mon, 25 Jan 2016 15:45:05 -0700 Subject: implement %% prefix operator See #23 also make undefined constants use llvm undef value --- src/parser.cpp | 2 ++ 1 file changed, 2 insertions(+) (limited to 'src/parser.cpp') diff --git a/src/parser.cpp b/src/parser.cpp index 425651a4a2..b34d76aba3 100644 --- a/src/parser.cpp +++ b/src/parser.cpp @@ -64,6 +64,7 @@ static const char *prefix_op_str(PrefixOp prefix_op) { case PrefixOpDereference: return "*"; case PrefixOpMaybe: return "?"; case PrefixOpError: return "%"; + case PrefixOpUnwrapError: return "%%"; } zig_unreachable(); } @@ -1664,6 +1665,7 @@ static PrefixOp tok_to_prefix_op(Token *token) { case TokenIdStar: return PrefixOpDereference; case TokenIdMaybe: return PrefixOpMaybe; case TokenIdPercent: return PrefixOpError; + case TokenIdPercentPercent: return PrefixOpUnwrapError; case TokenIdBoolAnd: return PrefixOpAddressOf; default: return PrefixOpInvalid; } -- cgit v1.2.3