aboutsummaryrefslogtreecommitdiffstats
path: root/src/vhdl/iirs.adb
diff options
context:
space:
mode:
authorTristan Gingold <tgingold@free.fr>2015-05-16 16:18:48 +0200
committerTristan Gingold <tgingold@free.fr>2015-05-16 16:18:48 +0200
commit9f82c87370ec57fce0fb9f7e95dd7edec1b66e01 (patch)
treee405d009588b69978993ad4078412d9e0083d473 /src/vhdl/iirs.adb
parent915a588a02957fcadfeff7db15beab2b2948b37a (diff)
downloadghdl-9f82c87370ec57fce0fb9f7e95dd7edec1b66e01.tar.gz
ghdl-9f82c87370ec57fce0fb9f7e95dd7edec1b66e01.tar.bz2
ghdl-9f82c87370ec57fce0fb9f7e95dd7edec1b66e01.zip
Give priority to function calls without implicit conversion.
Fix ticket 64.
Diffstat (limited to 'src/vhdl/iirs.adb')
-rw-r--r--src/vhdl/iirs.adb16
1 files changed, 16 insertions, 0 deletions
diff --git a/src/vhdl/iirs.adb b/src/vhdl/iirs.adb
index 9d056d7c1..cb174cea5 100644
--- a/src/vhdl/iirs.adb
+++ b/src/vhdl/iirs.adb
@@ -4019,6 +4019,22 @@ package body Iirs is
Set_State1 (Target, Iir_Staticness'Pos (Static));
end Set_Expr_Staticness;
+ function Get_Has_Implicit_Conversion (Expr : Iir) return Boolean is
+ begin
+ pragma Assert (Expr /= Null_Iir);
+ pragma Assert (Has_Has_Implicit_Conversion (Get_Kind (Expr)),
+ "no field Has_Implicit_Conversion");
+ return Get_Flag1 (Expr);
+ end Get_Has_Implicit_Conversion;
+
+ procedure Set_Has_Implicit_Conversion (Expr : Iir; Flag : Boolean) is
+ begin
+ pragma Assert (Expr /= Null_Iir);
+ pragma Assert (Has_Has_Implicit_Conversion (Get_Kind (Expr)),
+ "no field Has_Implicit_Conversion");
+ Set_Flag1 (Expr, Flag);
+ end Set_Has_Implicit_Conversion;
+
function Get_Error_Origin (Target : Iir) return Iir is
begin
pragma Assert (Target /= Null_Iir);