summaryrefslogtreecommitdiff
path: root/src/shared/cplusplus/Parser.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'src/shared/cplusplus/Parser.cpp')
-rw-r--r--src/shared/cplusplus/Parser.cpp5
1 files changed, 5 insertions, 0 deletions
diff --git a/src/shared/cplusplus/Parser.cpp b/src/shared/cplusplus/Parser.cpp
index ec9280f434..a1c6f74f39 100644
--- a/src/shared/cplusplus/Parser.cpp
+++ b/src/shared/cplusplus/Parser.cpp
@@ -4268,6 +4268,11 @@ bool Parser::parseUnaryExpression(ExpressionAST *&node)
SizeofExpressionAST *ast = new (_pool) SizeofExpressionAST;
ast->sizeof_token = consumeToken();
+ // sizeof...(Args)
+ if (_cxx0xEnabled && LA() == T_DOT_DOT_DOT && (LA(2) == T_IDENTIFIER || (LA(2) == T_LPAREN && LA(3) == T_IDENTIFIER
+ && LA(4) == T_RPAREN)))
+ ast->dot_dot_dot_token = consumeToken();
+
if (LA() == T_LPAREN) {
unsigned lparen_token = consumeToken();
if (parseTypeId(ast->expression) && LA() == T_RPAREN) {