Issue 174064
Summary [C++20] [Modules] Not properly mangling for entities in named modules for MSVC ABI
Labels help wanted, clang:modules, ABI, platform:windows
Assignees
Reporter ChuanqiXu9
    Reproducer: https://godbolt.org/z/5oaM6Yjv5

for

```C++
export module a;
export int func() {
    return 43;
}
```

Clang in Windows ABI generates:

```
"?func@@YAHXZ"
```

but MSVC generates:

```
?func@@YAHXZ::<!a>
```

This is a compatibility problem. And also this is a correctness problem. Since the design of C++20 Named Modules ask toolchains to treat the entity in different named modules as different entity at link time even they have the same name. So this is a missing feature at ABI level.


_______________________________________________
llvm-bugs mailing list
[email protected]
https://lists.llvm.org/cgi-bin/mailman/listinfo/llvm-bugs

Reply via email to