full path to source file __FILE__

Steven Schveighoffer via Digitalmars-d-learn digitalmars-d-learn at puremagic.com
Thu Jul 21 15:39:45 PDT 2016


On 7/21/16 3:54 PM, Jonathan Marler wrote:
> Is there a way to get the full path of the current source file?
> Something like:
>
> __FILE_FULL_PATH__
>
> I'm asking because I'm rewriting a batch script in D, meant to be ran
> with rdmd.  However, the script needs to know it's own path.  The
> original batch script uses the %~dp0 variable for this, but I'm at a
> loss on how to do this in D.  Since rdmd compiles the executable to the
> %TEMP% directory, thisExePath won't work.
>
> BATCH
> -----
> echo "Directory of this script is " %~dp0
>
>
> DLANG
> -----
> import std.stdio;
> int main(string[] args) {
>     writeln("Directory of this script is ", ???);
> }

Sure seems like an unwanted limitation.

rdmd does forward all dmd options, but there isn't really an option to 
say "put the exe in the source path".

You should file an enhancement.

-Steve


More information about the Digitalmars-d-learn mailing list