diff --git a/src/config_gram.y b/src/config_gram.y index 8b31519a..a8416162 100644 --- a/src/config_gram.y +++ b/src/config_gram.y @@ -1239,18 +1239,12 @@ part_parm : mem_specs { AVRMEM * existing_mem; - AVRMEM_ALIAS * existing_alias; existing_mem = avr_locate_mem_noalias(current_part, current_mem->desc); if (existing_mem != NULL) { lrmv_d(current_part->mem, existing_mem); avr_free_mem(existing_mem); } - existing_alias = avr_locate_memalias(current_part, current_mem->desc); - if (existing_alias != NULL) { - lrmv_d(current_part->mem_alias, existing_alias); - avr_free_memalias(existing_alias); - } if (is_alias) { avr_free_mem(current_mem); // alias mem has been already entered below is_alias = false; @@ -1442,12 +1436,6 @@ mem_alias : lrmv_d(current_part->mem_alias, alias); avr_free_memalias(alias); } - // NB: we do *not* check whether any non-alias region of the - // same name does already exist, as that one could be pointed to - // by an(other) alias as well. If we destroyed it, the alias - // pointer would get stale. In case someone defines the same - // name both as a regular memory as well as an alias, the - // regular one will always be found first by avr_locate_mem(). is_alias = true; alias = avr_new_memalias();