Signed-off-by: Mathieu Desnoyers <mathieu.desnoyers@efficios.com>
TYPESPEC_UNSIGNED,
TYPESPEC_BOOL,
TYPESPEC_COMPLEX,
+ TYPESPEC_IMAGINARY,
TYPESPEC_CONST,
TYPESPEC_ID_TYPE,
} type;
{ $$ = yylval.gs; }
| _COMPLEX
{ $$ = yylval.gs; }
+ | _IMAGINARY
+ { $$ = yylval.gs; }
| FLOATING_POINT
{ $$ = yylval.gs; }
| INTEGER
$$ = make_node(scanner, NODE_TYPE_SPECIFIER);
$$->u.type_specifier.type = TYPESPEC_COMPLEX;
}
+ | _IMAGINARY
+ {
+ $$ = make_node(scanner, NODE_TYPE_SPECIFIER);
+ $$->u.type_specifier.type = TYPESPEC_IMAGINARY;
+ }
| ID_TYPE
{
$$ = make_node(scanner, NODE_TYPE_SPECIFIER);
fprintf(fd, "bool");
break;
case TYPESPEC_COMPLEX:
- fprintf(fd, "complex");
+ fprintf(fd, "_Complex");
+ break;
+ case TYPESPEC_IMAGINARY:
+ fprintf(fd, "_Imaginary");
break;
case TYPESPEC_CONST:
fprintf(fd, "const");
case TYPESPEC_UNSIGNED:
case TYPESPEC_BOOL:
case TYPESPEC_COMPLEX:
+ case TYPESPEC_IMAGINARY:
case TYPESPEC_CONST:
case TYPESPEC_ID_TYPE:
break;
fprintf(fd, "bool");
break;
case TYPESPEC_COMPLEX:
- fprintf(fd, "complex");
+ fprintf(fd, "_Complex");
+ break;
+ case TYPESPEC_IMAGINARY:
+ fprintf(fd, "_Imaginary");
break;
case TYPESPEC_CONST:
fprintf(fd, "const");