diff --git a/pform.cc b/pform.cc index 412c6aea3..a0e1afb73 100644 --- a/pform.cc +++ b/pform.cc @@ -2910,7 +2910,7 @@ void pform_set_parameter(const struct vlltype&loc, error_count += 1; } // Only a Module scope has specparams. - if ((dynamic_cast (scope)) && + if ((dynamic_cast (scope)) && (scope == pform_cur_module.front()) && (pform_cur_module.front()->specparams.find(name) != pform_cur_module.front()->specparams.end())) { diff --git a/vhdlpp/parse.y b/vhdlpp/parse.y index 99d476875..ea948a1a8 100644 --- a/vhdlpp/parse.y +++ b/vhdlpp/parse.y @@ -834,14 +834,14 @@ else_when_waveform concurrent_signal_assignment_statement /* IEEE 1076-2008 P11.6 */ : concurrent_simple_signal_assignment - | IDENTIFIER ':' concurrent_simple_signal_assignment + | IDENTIFIER ':' concurrent_simple_signal_assignment { delete[] $1; $$ = $3; } | concurrent_conditional_signal_assignment - | IDENTIFIER ':' concurrent_conditional_signal_assignment + | IDENTIFIER ':' concurrent_conditional_signal_assignment { delete[] $1; $$ = $3; }