diff --git a/src/config_gram.y b/src/config_gram.y index 257abf61..dd92d340 100644 --- a/src/config_gram.y +++ b/src/config_gram.y @@ -334,7 +334,6 @@ prog_def : prog_decl : K_PROGRAMMER { current_prog = pgm_new(); - current_strct = COMP_PROGRAMMER; current_prog->config_file = cache_string(cfg_infile); current_prog->lineno = cfg_lineno; } @@ -348,7 +347,6 @@ prog_decl : YYABORT; } current_prog = pgm_dup(pgm); - current_strct = COMP_PROGRAMMER; current_prog->parent_id = cache_string($3->value.string); current_prog->comments = NULL; current_prog->config_file = cache_string(cfg_infile); @@ -426,7 +424,6 @@ part_decl : K_PART { current_part = avr_new_part(); - current_strct = COMP_AVRPART; current_part->config_file = cache_string(cfg_infile); current_part->lineno = cfg_lineno; } | @@ -440,7 +437,6 @@ part_decl : } current_part = avr_dup_part(parent_part); - current_strct = COMP_AVRPART; current_part->parent_id = cache_string($3->value.string); current_part->comments = NULL; current_part->config_file = cache_string(cfg_infile); @@ -1275,7 +1271,6 @@ part_parm : } avr_add_mem_order($2->value.string); current_mem = mem; - current_strct = COMP_AVRMEM; free_token($2); } mem_specs diff --git a/src/lexer.l b/src/lexer.l index 88413a72..ea5e2cd0 100644 --- a/src/lexer.l +++ b/src/lexer.l @@ -126,7 +126,7 @@ SIGN [+-] Component_t *cp = cfg_comp_search(yytext, current_strct); if(!cp) { - yyerror("Unknown component %s in %s", yytext, cfg_strct_name(current_strct)); + yyerror("unknown component %s in %s", yytext, cfg_strct_name(current_strct)); return YYERRCODE; } yylval = new_token(TKN_COMPONENT); @@ -194,7 +194,7 @@ loadpage_hi { yylval=new_token(K_LOADPAGE_HI); ccap(); return K_LOADPAGE_HI loadpage_lo { yylval=new_token(K_LOADPAGE_LO); ccap(); return K_LOADPAGE_LO; } max_write_delay { yylval=NULL; ccap(); return K_MAX_WRITE_DELAY; } mcu_base { yylval=NULL; ccap(); return K_MCU_BASE; } -memory { yylval=NULL; ccap(); return K_MEMORY; } +memory { yylval=NULL; ccap(); current_strct = COMP_AVRMEM; return K_MEMORY; } min_write_delay { yylval=NULL; ccap(); return K_MIN_WRITE_DELAY; } miso { yylval=NULL; ccap(); return K_SDI; } // Deprecated mode { yylval=NULL; ccap(); return K_MODE; } @@ -212,7 +212,7 @@ pagel { yylval=NULL; ccap(); return K_PAGEL; } page_size { yylval=NULL; ccap(); return K_PAGE_SIZE; } parallel { yylval=NULL; ccap(); return K_PARALLEL; } parent { yylval=NULL; return K_PARENT; } -part { yylval=NULL; ccap(); return K_PART; } +part { yylval=NULL; ccap(); current_strct = COMP_AVRPART; return K_PART; } pgm_enable { yylval=new_token(K_PGM_ENABLE); ccap(); return K_PGM_ENABLE; } pgmled { yylval=NULL; ccap(); return K_PGMLED; } pollindex { yylval=NULL; ccap(); return K_POLLINDEX; } @@ -227,7 +227,7 @@ programfusepolltimeout { yylval=NULL; ccap(); return K_PROGRAMFUSEPOLLTIMEOUT; } programfusepulsewidth { yylval=NULL; ccap(); return K_PROGRAMFUSEPULSEWIDTH; } programlockpolltimeout { yylval=NULL; ccap(); return K_PROGRAMLOCKPOLLTIMEOUT; } programlockpulsewidth { yylval=NULL; ccap(); return K_PROGRAMLOCKPULSEWIDTH; } -programmer { yylval=NULL; ccap(); return K_PROGRAMMER; } +programmer { yylval=NULL; ccap(); current_strct = COMP_PROGRAMMER; return K_PROGRAMMER; } pseudo { yylval=new_token(K_PSEUDO); return K_PSEUDO; } pwroff_after_write { yylval=NULL; ccap(); return K_PWROFF_AFTER_WRITE; } rdyled { yylval=NULL; ccap(); return K_RDYLED; }