From 74a8a2b10a0513f5346ec47aa9b463e30f2b972e Mon Sep 17 00:00:00 2001 From: hachem Date: Sat, 19 Sep 2026 12:03:34 +0200 Subject: feat: add void, int32_t, byte, size_t, remove_cv_t --- sfinae.y | 17 ++++++++++++++++- 1 file changed, 16 insertions(+), 1 deletion(-) (limited to 'sfinae.y') diff --git a/sfinae.y b/sfinae.y index 3e7c9b1..5a590a2 100644 --- a/sfinae.y +++ b/sfinae.y @@ -18,6 +18,11 @@ void yyerror(const char* message); %token TOK_COLONCOLON %token TOK_EMIT %token TOK_COMMIT +%token TOK_VOID +%token TOK_INT32 +%token TOK_BYTE +%token TOK_SIZE_T +%token TOK_REMOVE_CV %token TOK_DECLTYPE %token TOK_DIFFERENCE %token TOK_SUM @@ -47,7 +52,17 @@ statement ; type - : TOK_COLONCOLON TOK_DECLTYPE '(' value ')' + : TOK_COLONCOLON TOK_VOID + { $$ = node_leaf(TYPE_VOID); } + | TOK_COLONCOLON TOK_INT32 + { $$ = node_leaf(TYPE_INT32); } + | TOK_COLONCOLON TOK_BYTE + { $$ = node_leaf(TYPE_BYTE); } + | TOK_COLONCOLON TOK_SIZE_T + { $$ = node_leaf(TYPE_SIZE); } + | TOK_COLONCOLON TOK_REMOVE_CV '<' type '>' + { $$ = node_unary(TYPE_REMOVE_CV, $4); } + | TOK_COLONCOLON TOK_DECLTYPE '(' value ')' { $$ = node_unary(TYPE_DECLTYPE, $4); } ; -- cgit v1.3