www.digitalmars.com         C & C++   DMDScript  

digitalmars.D.bugs - [Issue 22531] New: importC: D name mangling applied to forward

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

          Issue ID: 22531
           Summary: importC: D name mangling applied to forward
                    declaration of function inside function
           Product: D
           Version: D2
          Hardware: x86_64
                OS: Linux
            Status: NEW
          Severity: normal
          Priority: P1
         Component: dmd
          Assignee: nobody puremagic.com
          Reporter: duser airmail.cc

---
int main(void)
{
        void fn(void);
        fn();
        return 0;
}
void fn(void)
{
}
---

% dmd -run example.c
/usr/lib/gcc/x86_64-pc-linux-gnu/10.3.0/../../../../x86_64-pc-linux-gnu/bin/ld:
example.o: in function `main':
example.c:(.text.main[main]+0x5): undefined reference to `_D2c14mainUZ2fnUZv'
collect2: error: ld returned 1 exit status
Error: linker exited with status 1

similar bug from "possible duplicates":
https://issues.dlang.org/show_bug.cgi?id=15843

--
Nov 21 2021