diff options
author | John Hodge <tpg@mutabah.net> | 2016-02-25 14:39:25 +0800 |
---|---|---|
committer | John Hodge <tpg@mutabah.net> | 2016-02-25 14:39:25 +0800 |
commit | b6aa089ef86e45e3a0f1c81f2f7a4d78765342d0 (patch) | |
tree | 5fae1373d6e26566d2e9d916e554915288cc07fd /src/parse/types.cpp | |
parent | c43fd3adac502ab3ebb5f548dd09c0823af486e5 (diff) | |
download | mrust-b6aa089ef86e45e3a0f1c81f2f7a4d78765342d0.tar.gz |
Parse - Handle named arguments in fn() types
Diffstat (limited to 'src/parse/types.cpp')
-rw-r--r-- | src/parse/types.cpp | 5 |
1 files changed, 5 insertions, 0 deletions
diff --git a/src/parse/types.cpp b/src/parse/types.cpp index 425a7f36..22f5acf2 100644 --- a/src/parse/types.cpp +++ b/src/parse/types.cpp @@ -223,6 +223,11 @@ TypeRef Parse_Type_Fn(TokenStream& lex) GET_CHECK_TOK(tok, lex, TOK_PAREN_OPEN); while( LOOK_AHEAD(lex) != TOK_PAREN_CLOSE ) { + // Handle `ident: ` + if( lex.lookahead(0) == TOK_IDENT && lex.lookahead(1) == TOK_COLON ) { + GET_TOK(tok, lex); + GET_TOK(tok, lex); + } args.push_back( Parse_Type(lex) ); if( GET_TOK(tok, lex) != TOK_COMMA ) { lex.putback(tok); |