From 3888a159635f33766e433d76453a0a43a8c3e971 Mon Sep 17 00:00:00 2001 From: Mathieu Desnoyers Date: Wed, 13 Apr 2011 18:11:24 -0400 Subject: [PATCH] Add missing _Imaginary type Signed-off-by: Mathieu Desnoyers --- formats/ctf/metadata/ctf-ast.h | 1 + formats/ctf/metadata/ctf-parser.y | 7 +++++++ formats/ctf/metadata/ctf-visitor-generate-io-struct.c | 5 ++++- formats/ctf/metadata/ctf-visitor-parent-links.c | 1 + formats/ctf/metadata/ctf-visitor-xml.c | 5 ++++- 5 files changed, 17 insertions(+), 2 deletions(-) diff --git a/formats/ctf/metadata/ctf-ast.h b/formats/ctf/metadata/ctf-ast.h index 3d86f99c..8b5ad887 100644 --- a/formats/ctf/metadata/ctf-ast.h +++ b/formats/ctf/metadata/ctf-ast.h @@ -152,6 +152,7 @@ struct ctf_node { TYPESPEC_UNSIGNED, TYPESPEC_BOOL, TYPESPEC_COMPLEX, + TYPESPEC_IMAGINARY, TYPESPEC_CONST, TYPESPEC_ID_TYPE, } type; diff --git a/formats/ctf/metadata/ctf-parser.y b/formats/ctf/metadata/ctf-parser.y index 8d8c29ce..2ded0aef 100644 --- a/formats/ctf/metadata/ctf-parser.y +++ b/formats/ctf/metadata/ctf-parser.y @@ -877,6 +877,8 @@ keywords: { $$ = yylval.gs; } | _COMPLEX { $$ = yylval.gs; } + | _IMAGINARY + { $$ = yylval.gs; } | FLOATING_POINT { $$ = yylval.gs; } | INTEGER @@ -1306,6 +1308,11 @@ type_specifier: $$ = 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); diff --git a/formats/ctf/metadata/ctf-visitor-generate-io-struct.c b/formats/ctf/metadata/ctf-visitor-generate-io-struct.c index 3ba0a7fe..a6773eea 100644 --- a/formats/ctf/metadata/ctf-visitor-generate-io-struct.c +++ b/formats/ctf/metadata/ctf-visitor-generate-io-struct.c @@ -72,7 +72,10 @@ int ctf_visitor_print_type_specifier(FILE *fd, int depth, struct ctf_node *node) 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"); diff --git a/formats/ctf/metadata/ctf-visitor-parent-links.c b/formats/ctf/metadata/ctf-visitor-parent-links.c index 99d1ca04..f23458d5 100644 --- a/formats/ctf/metadata/ctf-visitor-parent-links.c +++ b/formats/ctf/metadata/ctf-visitor-parent-links.c @@ -92,6 +92,7 @@ int ctf_visitor_type_specifier(FILE *fd, int depth, struct ctf_node *node) case TYPESPEC_UNSIGNED: case TYPESPEC_BOOL: case TYPESPEC_COMPLEX: + case TYPESPEC_IMAGINARY: case TYPESPEC_CONST: case TYPESPEC_ID_TYPE: break; diff --git a/formats/ctf/metadata/ctf-visitor-xml.c b/formats/ctf/metadata/ctf-visitor-xml.c index 1e474781..68a2e554 100644 --- a/formats/ctf/metadata/ctf-visitor-xml.c +++ b/formats/ctf/metadata/ctf-visitor-xml.c @@ -153,7 +153,10 @@ int ctf_visitor_print_type_specifier(FILE *fd, int depth, struct ctf_node *node) 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"); -- 2.34.1