www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 23149] New: doc generator with -i errors writing file for

https://issues.dlang.org/show_bug.cgi?id=23149

          Issue ID: 23149
           Summary: doc generator with -i errors writing file for imported
                    module
           Product: D
           Version: D2
          Hardware: All
                OS: All
            Status: NEW
          Keywords: ddoc
          Severity: normal
          Priority: P1
         Component: dmd
          Assignee: nobody puremagic.com
          Reporter: duser neet.fi
                CC: duser neet.fi

// entry.d
module entry;
import other;
void main(){}
// other.d
module other;

compile: dmd -i -D entry.d

entry.d(2): Error: error writing file ''

running it with strace shows that it indeed tries to write the doc for "other"
with an empty filename

  stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1900, ...}) = 0
  stat("entry.html", {st_mode=S_IFREG|0644, st_size=12208, ...}) = 0
  openat(AT_FDCWD, "entry.html", O_WRONLY|O_CREAT|O_TRUNC, 0644) = 3
  write(3, "\r\n<!DOCTYPE html>\r\n<html>\r\n  <he"..., 12208) = 12208
  close(3)                                = 0
  stat("/etc/localtime", {st_mode=S_IFREG|0644, st_size=1900, ...}) = 0
  stat("", 0x7ffdd2a39f00)                = -1 ENOENT (No such file or
directory)
  openat(AT_FDCWD, "", O_WRONLY|O_CREAT|O_TRUNC, 0644) = -1 ENOENT (No such
file or directory)

--
May 30 2022