From a23adc221b1ea26db3f3313226b629eb9e308b0f Mon Sep 17 00:00:00 2001 From: Yong He Date: Sat, 23 Mar 2024 10:54:01 -0700 Subject: Make `-no-mangle` option work, add `-no-hlsl-binding`. (#3817) --- source/slang/slang-check-decl.cpp | 8 +++++++- 1 file changed, 7 insertions(+), 1 deletion(-) (limited to 'source/slang/slang-check-decl.cpp') diff --git a/source/slang/slang-check-decl.cpp b/source/slang/slang-check-decl.cpp index 093e2599f..c117dbc14 100644 --- a/source/slang/slang-check-decl.cpp +++ b/source/slang/slang-check-decl.cpp @@ -1772,7 +1772,13 @@ namespace Slang parentAggTypeDecl->unionTagsWith(getTypeTags(varDeclRefType)); } } - + if (getOptionSet().getBoolOption(CompilerOptionName::NoMangle) && + isGlobalDecl(varDecl)) + { + // If -no-mangle option is set, we will add `ExternCpp` modifier to all + // global variables and struct fields to prevent mangling. + addModifier(varDecl, m_astBuilder->create()); + } checkVisibility(varDecl); } -- cgit v1.2.3