summaryrefslogtreecommitdiff
path: root/src/parse/types.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/parse/types.cpp')
-rw-r--r--src/parse/types.cpp10
1 files changed, 9 insertions, 1 deletions
diff --git a/src/parse/types.cpp b/src/parse/types.cpp
index db66a77e..bbcff489 100644
--- a/src/parse/types.cpp
+++ b/src/parse/types.cpp
@@ -87,7 +87,15 @@ TypeRef Parse_Type_Int(TokenStream& lex, bool allow_trait_list)
}
if( TARGETVER_1_29 && tok.str() == "dyn" )
{
- return Parse_Type_TraitObject(lex, {});
+ if( lex.lookahead(0) == TOK_PAREN_OPEN ) {
+ GET_TOK(tok, lex);
+ auto rv = Parse_Type_TraitObject(lex, {});
+ GET_CHECK_TOK(tok, lex, TOK_PAREN_CLOSE);
+ return rv;
+ }
+ else {
+ return Parse_Type_TraitObject(lex, {});
+ }
}
// or a primitive
//if( auto ct = coretype_fromstring(tok.str()) )