From 9641b918bae9eb8d0bb9099ab6d9d46383ba8bc9 Mon Sep 17 00:00:00 2001 From: Victor Santet Date: Mon, 18 Jun 2012 15:44:38 +0200 Subject: warnings: useless semantic types * src/symtab.h (symbol_list): Represent semantic types as structure 'semantic_type'. * src/symlist.c (symbol_list_type_new): Allocate this structure. (symbol_list_code_props_set): Set this semantic type's status to used if it was not declared. * src/symtab.c (semantic_types_sorted): New. (semantic_type_new): Set the new semantic type's location appropriately. (symbol_check_defined): If a symbol has a type, then set this type's status to "declared". (semantic_type_check_defined, semantic_type_check_defined_processor): Same as symbol_check_defined and symbol_check_defined_processor, but for semantic types. (symbol_check_defined): Check semantic types usefulness. * src/symtab.h (semantic_type): New fields 'location' and 'status'. * src/symtab.h, src/symtab.c (semantic_type_new) (semantic_type_from_uniqstr, semantic_type_get): Accept a location as a supplementary argument. * tests/input.at (Unassociated types used for printer of destructor): New. * tests/c++.at (AT_CHECK_VARIANTS): Fix an error caught by this commit. --- src/symlist.h | 2 +- 1 file changed, 1 insertion(+), 1 deletion(-) (limited to 'src/symlist.h') diff --git a/src/symlist.h b/src/symlist.h index 0bd4f3b0..3b03713b 100644 --- a/src/symlist.h +++ b/src/symlist.h @@ -46,7 +46,7 @@ typedef struct symbol_list /** * The semantic type iff symbol_list::content_type = SYMLIST_TYPE. */ - uniqstr type_name; + semantic_type *sem_type; } content; location location; -- cgit v1.2.1