diff options
| author | Andrew Kelley <superjoe30@gmail.com> | 2016-01-25 15:45:05 -0700 |
|---|---|---|
| committer | Andrew Kelley <superjoe30@gmail.com> | 2016-01-25 15:45:05 -0700 |
| commit | deb35868841fc3eb99228fe102a5b8ed1991d51f (patch) | |
| tree | e84077cf298eec6f95cd3a75f1f05cd4cb0b501f /src/parser.cpp | |
| parent | c0dc0ca6c90649f157dfcb43c7ec69fa4b5f6b09 (diff) | |
| download | zig-deb35868841fc3eb99228fe102a5b8ed1991d51f.tar.gz zig-deb35868841fc3eb99228fe102a5b8ed1991d51f.zip | |
implement %% prefix operator
See #23
also make undefined constants use llvm undef value
Diffstat (limited to 'src/parser.cpp')
| -rw-r--r-- | src/parser.cpp | 2 |
1 files changed, 2 insertions, 0 deletions
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; } |
