remove obsolete functions/decls
This commit is contained in:
7
parser.c
7
parser.c
@@ -243,8 +243,6 @@ static Members parseContainerMembers(Parser* p) {
|
||||
trailing = false;
|
||||
break;
|
||||
}
|
||||
case TOKEN_KEYWORD_USINGNAMESPACE:;
|
||||
fail(p, "not implemented in parseContainerMembers");
|
||||
case TOKEN_KEYWORD_COMPTIME:
|
||||
// comptime can be a container field modifier or a comptime
|
||||
// block/decl. Check if it's followed by a block (comptime { ...
|
||||
@@ -384,7 +382,6 @@ static void findNextContainerMember(Parser* p) {
|
||||
case TOKEN_KEYWORD_EXTERN:
|
||||
case TOKEN_KEYWORD_INLINE:
|
||||
case TOKEN_KEYWORD_NOINLINE:
|
||||
case TOKEN_KEYWORD_USINGNAMESPACE:
|
||||
case TOKEN_KEYWORD_THREADLOCAL:
|
||||
case TOKEN_KEYWORD_CONST:
|
||||
case TOKEN_KEYWORD_VAR:
|
||||
@@ -2364,10 +2361,6 @@ static AstNodeIndex parseErrorUnionExpr(Parser* p) {
|
||||
}
|
||||
|
||||
static AstNodeIndex parseSuffixExpr(Parser* p) {
|
||||
if (eatToken(p, TOKEN_KEYWORD_ASYNC) != null_token) {
|
||||
fail(p, "async not supported");
|
||||
}
|
||||
|
||||
AstNodeIndex res = parsePrimaryTypeExpr(p);
|
||||
if (res == 0)
|
||||
return res;
|
||||
|
||||
@@ -28,8 +28,6 @@ const KeywordMap keywords[] = {
|
||||
{ "anyframe", TOKEN_KEYWORD_ANYFRAME },
|
||||
{ "anytype", TOKEN_KEYWORD_ANYTYPE },
|
||||
{ "asm", TOKEN_KEYWORD_ASM },
|
||||
{ "async", TOKEN_KEYWORD_ASYNC },
|
||||
{ "await", TOKEN_KEYWORD_AWAIT },
|
||||
{ "break", TOKEN_KEYWORD_BREAK },
|
||||
{ "callconv", TOKEN_KEYWORD_CALLCONV },
|
||||
{ "catch", TOKEN_KEYWORD_CATCH },
|
||||
@@ -66,7 +64,6 @@ const KeywordMap keywords[] = {
|
||||
{ "try", TOKEN_KEYWORD_TRY },
|
||||
{ "union", TOKEN_KEYWORD_UNION },
|
||||
{ "unreachable", TOKEN_KEYWORD_UNREACHABLE },
|
||||
{ "usingnamespace", TOKEN_KEYWORD_USINGNAMESPACE },
|
||||
{ "var", TOKEN_KEYWORD_VAR },
|
||||
{ "volatile", TOKEN_KEYWORD_VOLATILE },
|
||||
{ "while", TOKEN_KEYWORD_WHILE }
|
||||
|
||||
@@ -85,8 +85,6 @@
|
||||
TAG(TOKEN_KEYWORD_ANYFRAME) \
|
||||
TAG(TOKEN_KEYWORD_ANYTYPE) \
|
||||
TAG(TOKEN_KEYWORD_ASM) \
|
||||
TAG(TOKEN_KEYWORD_ASYNC) \
|
||||
TAG(TOKEN_KEYWORD_AWAIT) \
|
||||
TAG(TOKEN_KEYWORD_BREAK) \
|
||||
TAG(TOKEN_KEYWORD_CALLCONV) \
|
||||
TAG(TOKEN_KEYWORD_CATCH) \
|
||||
@@ -123,7 +121,6 @@
|
||||
TAG(TOKEN_KEYWORD_TRY) \
|
||||
TAG(TOKEN_KEYWORD_UNION) \
|
||||
TAG(TOKEN_KEYWORD_UNREACHABLE) \
|
||||
TAG(TOKEN_KEYWORD_USINGNAMESPACE) \
|
||||
TAG(TOKEN_KEYWORD_VAR) \
|
||||
TAG(TOKEN_KEYWORD_VOLATILE) \
|
||||
TAG(TOKEN_KEYWORD_WHILE)
|
||||
|
||||
@@ -162,45 +162,10 @@ fn testTokenize(source: [:0]const u8, expected_token_tags: []const Token.Tag) !v
|
||||
}
|
||||
}
|
||||
|
||||
test "my function" {
|
||||
try testTokenize(
|
||||
\\pub fn main() void {
|
||||
\\ @panic("hello");
|
||||
\\}
|
||||
\\
|
||||
, &.{
|
||||
.keyword_pub,
|
||||
.keyword_fn,
|
||||
.identifier,
|
||||
.l_paren,
|
||||
.r_paren,
|
||||
.identifier,
|
||||
.l_brace,
|
||||
.builtin,
|
||||
.l_paren,
|
||||
.string_literal,
|
||||
.r_paren,
|
||||
.semicolon,
|
||||
.r_brace,
|
||||
});
|
||||
}
|
||||
|
||||
test "keywords" {
|
||||
try testTokenize("test const else", &.{ .keyword_test, .keyword_const, .keyword_else });
|
||||
}
|
||||
|
||||
test "parser first test" {
|
||||
try testTokenize(
|
||||
\\
|
||||
\\
|
||||
\\// hello
|
||||
\\
|
||||
\\
|
||||
,
|
||||
&.{},
|
||||
);
|
||||
}
|
||||
|
||||
test "line comment followed by top-level comptime" {
|
||||
try testTokenize(
|
||||
\\// line comment
|
||||
|
||||
Reference in New Issue
Block a user