aboutsummaryrefslogtreecommitdiffstats
path: root/src
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2017-06-29 06:30:31 +0200
committerTristan Gingold <tgingold@free.fr>2017-06-29 06:30:31 +0200
commitaeae722a3cd7d3b29b970d2cf0cdd5b225337c9a (patch)
tree4db474d7d133643c8edc993e291d2426adc1909e /src
parent03634c4038ebca7a43d385aea66a09d73504c769 (diff)
downloadghdl-aeae722a3cd7d3b29b970d2cf0cdd5b225337c9a.tar.gz
ghdl-aeae722a3cd7d3b29b970d2cf0cdd5b225337c9a.tar.bz2
ghdl-aeae722a3cd7d3b29b970d2cf0cdd5b225337c9a.zip
sem_assoc: do not try to extract formal conversion if actual is open.
Diffstat (limited to 'src')
-rw-r--r--src/vhdl/sem_assocs.adb8
1 files changed, 6 insertions, 2 deletions
diff --git a/src/vhdl/sem_assocs.adb b/src/vhdl/sem_assocs.adb
index 07fb470e1..48856557c 100644
--- a/src/vhdl/sem_assocs.adb
+++ b/src/vhdl/sem_assocs.adb
@@ -2424,8 +2424,12 @@ package body Sem_Assocs is
-- Try as 'normal' or individual assoc.
Search_Interface (Assoc, Inter, Pos);
- if Get_Kind (Formal) = Iir_Kind_Parenthesis_Name then
- -- Try as formal conversion.
+ if Get_Kind (Formal) = Iir_Kind_Parenthesis_Name
+ and then
+ Get_Kind (Assoc) = Iir_Kind_Association_Element_By_Expression
+ then
+ -- Try as formal conversion, only if the actual is not open
+ -- according to LRM08 6.5.7 Association lists.
Revert_Sem_Association (Assoc);
Saved_Assoc := Sem_Formal_Conversion (Assoc);