Commit c02811d
committed
[Clang mangling] Don't mangle when Clang says not to
We have been mangling extern "C" symbols when building with C++
interoperability, leading to incorrectly-mangled names such as
_Z6memset that should have been unmangled "memset". Fix this so we get
consistent mangling between C and C++ interoperability modes.
Fixes rdar://164495210.1 parent cc78bb5 commit c02811d
File tree
3 files changed
+22
-1
lines changed- lib/ClangImporter
- test
- Inputs/clang-importer-sdk/usr/include
- Interop/Cxx/extern-c
3 files changed
+22
-1
lines changed| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
4759 | 4759 | | |
4760 | 4760 | | |
4761 | 4761 | | |
4762 | | - | |
| 4762 | + | |
4763 | 4763 | | |
| 4764 | + | |
| 4765 | + | |
4764 | 4766 | | |
4765 | 4767 | | |
4766 | 4768 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
7 | 7 | | |
8 | 8 | | |
9 | 9 | | |
| 10 | + | |
| 11 | + | |
| 12 | + | |
| 13 | + | |
| 14 | + | |
| 15 | + | |
10 | 16 | | |
11 | 17 | | |
12 | 18 | | |
| |||
30 | 36 | | |
31 | 37 | | |
32 | 38 | | |
| 39 | + | |
| 40 | + | |
| 41 | + | |
| 42 | + | |
33 | 43 | | |
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
| 1 | + | |
| 2 | + | |
| 3 | + | |
| 4 | + | |
| 5 | + | |
| 6 | + | |
| 7 | + | |
| 8 | + | |
| 9 | + | |
0 commit comments