diff --git a/vhdlpp/lexor_keyword.gperf b/vhdlpp/lexor_keyword.gperf index b146ddb45..3a70881d5 100644 --- a/vhdlpp/lexor_keyword.gperf +++ b/vhdlpp/lexor_keyword.gperf @@ -18,19 +18,114 @@ struct lexor_keyword { const char*name; int mask; int tokenType; }; %% abs, GN_KEYWORD_2008, K_abs access, GN_KEYWORD_2008, K_access +after, GN_KEYWORD_2008, K_after +alias, GN_KEYWORD_2008, K_alias all, GN_KEYWORD_2008, K_all and, GN_KEYWORD_2008, K_and architecture, GN_KEYWORD_2008, K_architecture +array, GN_KEYWORD_2008, K_array +assert, GN_KEYWORD_2008, K_assert +attribute, GN_KEYWORD_2008, K_attribute begin, GN_KEYWORD_2008, K_begin +block, GN_KEYWORD_2008, K_block +body, GN_KEYWORD_2008, K_body +buffer, GN_KEYWORD_2008, K_buffer +bus, GN_KEYWORD_2008, K_bus +case, GN_KEYWORD_2008, K_case +component, GN_KEYWORD_2008, K_component +configuration, GN_KEYWORD_2008, K_configuration +constant, GN_KEYWORD_2008, K_constant +context, GN_KEYWORD_2008, K_context +//cover, GN_KEYWORD_2008, K_cover +default, GN_KEYWORD_2008, K_default +disconnect, GN_KEYWORD_2008, K_disconnect +downto, GN_KEYWORD_2008, K_downto +else, GN_KEYWORD_2008, K_else +elsif GN_KEYWORD_2008, K_elsif end, GN_KEYWORD_2008, K_end entity, GN_KEYWORD_2008, K_entity +exit, GN_KEYWORD_2008, K_exit +//fairness, GN_KEYWORD_2008, K_fairness +file, GN_KEYWORD_2008, K_file +for, GN_KEYWORD_2008, K_for +//force, GN_KEYWORD_2008, K_force +function, GN_KEYWORD_2008, K_function +generate, GN_KEYWORD_2008, K_generate +generic, GN_KEYWORD_2008, K_generic +group, GN_KEYWORD_2008, K_group +guarded, GN_KEYWORD_2008, K_guarded +if, GN_KEYWORD_2008, K_if +impure, GN_KEYWORD_2008, K_impure in, GN_KEYWORD_2008, K_in +inertial, GN_KEYWORD_2008, K_internal +inout, GN_KEYWORD_2008, K_inout is, GN_KEYWORD_2008, K_is +label, GN_KEYWORD_2008, K_label library, GN_KEYWORD_2008, K_library +linkage, GN_KEYWORD_2008, K_linkage +literal, GN_KEYWORD_2008, K_literal +loop, GN_KEYWORD_2008, K_loop +map, GN_KEYWORD_2008, K_map +mod, GN_KEYWORD_2008, K_mod +nand, GN_KEYWORD_2008, K_nand +new, GN_KEYWORD_2008, K_new +next, GN_KEYWORD_2008, K_next +nor, GN_KEYWORD_2008, K_nor +not, GN_KEYWORD_2008, K_not +null, GN_KEYWORD_2008, K_null of, GN_KEYWORD_2008, K_of +on, GN_KEYWORD_2008, K_on +or, GN_KEYWORD_2008, K_or +others, GN_KEYWORD_2008, K_others out, GN_KEYWORD_2008, K_out +package, GN_KEYWORD_2008, K_package port, GN_KEYWORD_2008, K_port +postponed, GN_KEYWORD_2008, K_postponed +procedure, GN_KEYWORD_2008, K_procedure +process, GN_KEYWORD_2008, K_process +//property, GN_KEYWORD_2008, K_propoerty +protected, GN_KEYWORD_2008, K_protected +pure, GN_KEYWORD_2008, K_pure +range, GN_KEYWORD_2008, K_range +record, GN_KEYWORD_2008, K_record +register, GN_KEYWORD_2008, K_register +reject, GN_KEYWORD_2008, K_reject +//release, GN_KEYWORD_2008, K_release +rem, GN_KEYWORD_2008, K_rem +report, GN_KEYWORD_2008, K_report +restrict, GN_KEYWORD_2008, K_restrict +return, GN_KEYWORD_2008, K_return +rol, GN_KEYWORD_2008, K_rol +ror, GN_KEYWORD_2008, K_ror +select, GN_KEYWORD_2008, K_select +//sequence, GN_KEYWORD_2008, K_sequence +severity, GN_KEYWORD_2008, K_severity +signal, GN_KEYWORD_2008, K_signal +shared, GN_KEYWORD_2008, K_shared +sla, GN_KEYWORD_2008, K_sla +sll, GN_KEYWORD_2008, K_sll +sra, GN_KEYWORD_2008, K_sra +srl, GN_KEYWORD_2008, K_srl +//string, GN_KEYWORD_2008, K_string +subtype, GN_KEYWORD_2008, K_subtype +then, GN_KEYWORD_2008, K_then +to, GN_KEYWORD_2008, K_to +transport, GN_KEYWORD_2008, K_transport +type, GN_KEYWORD_2008, K_type +unaffected, GN_KEYWORD_2008, K_unaffected +units. GN_KEYWORD_2008, K_units +until, GN_KEYWORD_2008, K_until use, GN_KEYWORD_2008, K_use +variable, GN_KEYWORD_2008, K_variable +//vmode, GN_KEYWORD_2008, K_vmode +//vprop, GN_KEYWORD_2008, K_vprop +//vunit, GN_KEYWORD_2008, K_vunit +wait, GN_KEYWORD_2008, K_wait +when, GN_KEYWORD_2008, K_when +while, GN_KEYWORD_2008, K_while +with, GN_KEYWORD_2008, K_with +xnor, GN_KEYWORD_2008, K_xnor +xor, GN_KEYWORD_2008, K_xor %% int lexor_keyword_mask = GN_KEYWORD_2008; diff --git a/vhdlpp/parse.y b/vhdlpp/parse.y index 306331d48..8524ff574 100644 --- a/vhdlpp/parse.y +++ b/vhdlpp/parse.y @@ -52,11 +52,11 @@ int parse_errors = 0; %token K_array K_assert K_assume K_assume_guarantee K_attribute %token K_begin K_block K_body K_buffer K_bus %token K_case K_component K_configuration K_constant K_context K_cover -%token K_default K_disconect K_downto +%token K_default K_disconnect K_downto %token K_else K_elsif K_end K_entity K_exit %token K_fairness K_file K_for K_force K_function %token K_generate K_generic K_group K_guarded -%token K_if K_impure K_in K_internal K_inout K_is +%token K_if K_impure K_in K_inertial K_inout K_is %token K_label K_library K_linkage K_literal K_loop %token K_map K_mod %token K_nand K_new K_next K_nor K_not K_null @@ -65,7 +65,7 @@ int parse_errors = 0; %token K_property K_protected K_pure %token K_range K_record K_register K_reject K_release K_rem K_report %token K_restrict K_restrict_guarantee K_return K_rol K_ror -%token K_select K_sequence K_seerity K_signal K_shared +%token K_select K_sequence K_severity K_signal K_shared %token K_sla K_sll K_sra K_srl K_string K_subtype %token K_then K_to K_transport K_type %token K_unaffected K_units K_until K_use