diff options
author | Tristan Gingold <tgingold@free.fr> | 2017-12-01 04:34:20 +0100 |
---|---|---|
committer | Tristan Gingold <tgingold@free.fr> | 2017-12-01 04:35:16 +0100 |
commit | d265cf4189aa50685d68c04675f15c0466b45314 (patch) | |
tree | 8a1103873b2bbced33869fe947812d790c97e623 /src/libraries.adb | |
parent | 2f9a512ca216f2c8a62e2251d551580ef67d9c8d (diff) | |
download | ghdl-d265cf4189aa50685d68c04675f15c0466b45314.tar.gz ghdl-d265cf4189aa50685d68c04675f15c0466b45314.tar.bz2 ghdl-d265cf4189aa50685d68c04675f15c0466b45314.zip |
Improve error message in case of circular dependency.
Fix #471
Diffstat (limited to 'src/libraries.adb')
-rw-r--r-- | src/libraries.adb | 7 |
1 files changed, 6 insertions, 1 deletions
diff --git a/src/libraries.adb b/src/libraries.adb index 64471f6b6..02af0647d 100644 --- a/src/libraries.adb +++ b/src/libraries.adb @@ -1787,10 +1787,15 @@ package body Libraries is end Load_Parse_Design_Unit; -- Load, parse, analyze, back-end a design_unit if necessary. - procedure Load_Design_Unit (Design_Unit: Iir_Design_Unit; Loc : Iir) + procedure Load_Design_Unit (Design_Unit : Iir_Design_Unit; Loc : Iir) is Warnings : Warnings_Setting; begin + if Get_Date (Design_Unit) = Date_Replacing then + Error_Msg_Sem (+Loc, "circular reference of %n", +Design_Unit); + return; + end if; + if Get_Date_State (Design_Unit) = Date_Disk then Load_Parse_Design_Unit (Design_Unit, Loc); end if; |