diff options
Diffstat (limited to 'src/ghdldrv')
-rw-r--r-- | src/ghdldrv/ghdllocal.adb | 12 | ||||
-rw-r--r-- | src/ghdldrv/ghdllocal.ads | 5 |
2 files changed, 6 insertions, 11 deletions
diff --git a/src/ghdldrv/ghdllocal.adb b/src/ghdldrv/ghdllocal.adb index 841971539..bd4257cbe 100644 --- a/src/ghdldrv/ghdllocal.adb +++ b/src/ghdldrv/ghdllocal.adb @@ -564,19 +564,13 @@ package body Ghdllocal is return String_Access is use Name_Table; - Basename : constant String := Get_Base_Name (File); begin if In_Work then - Image (Libraries.Work_Directory); + return new String'(Image (Libraries.Work_Directory) + & Get_Base_Name (File) & Suffix); else - Nam_Length := Nam_Buffer'First - 1; + return new String'(File & Suffix); end if; - Nam_Buffer (Nam_Length + 1 .. Nam_Length + Basename'Length) := - Basename; - Nam_Length := Nam_Length + Basename'Length; - Nam_Buffer (Nam_Length + 1 .. Nam_Length + Suffix'Length) := Suffix; - Nam_Length := Nam_Length + Suffix'Length; - return new String'(Nam_Buffer (1 .. Nam_Length)); end Append_Suffix; diff --git a/src/ghdldrv/ghdllocal.ads b/src/ghdldrv/ghdllocal.ads index b051aaef2..b744950a6 100644 --- a/src/ghdldrv/ghdllocal.ads +++ b/src/ghdldrv/ghdllocal.ads @@ -75,8 +75,9 @@ package Ghdllocal is -- if none. function Get_Basename_Pos (Pathname : String) return Natural; - -- Build a filename based on FILE: append SUFFIX as extension, and - -- if IN_WORK is true prepend the workdir. + -- Build a filename based on FILE. If IN_WORK is true, the result is + -- the concatenation of the workdir, the basename of FILE and SUFFIX. + -- If IN_WORK is false, the result is the concatenation of FILE and SUFFIX. function Append_Suffix (File : String; Suffix : String; In_Work : Boolean := True) return String_Access; |