From fa31d21ba92669a521a7768467246918e3947e02 Mon Sep 17 00:00:00 2001 From: jsmall-nvidia Date: Thu, 1 Apr 2021 13:39:11 -0400 Subject: Added compiler-core project (#1775) * #include an absolute path didn't work - because paths were taken to always be relative. * Split out compiler-core initially with just slang-source-loc.cpp * More lexer, name, token to compiler-core. * Split Lexer and Core diagnostics. * Move slang-file-system to core. * Add slang-file-system to core. * More DownstreamCompiler into compiler-core * Fix typo. * Add compiler-core to bootstrap proj. * Small fixes to premake * For linux try with compiler-core * Remove compiler-core from examples. * Added NameConventionUtil to compiler-core * Add global function to CharUtil to *hopefully* avoid linking issue. * Hack to make linkage of CharUtil work on linux. --- source/core/slang-char-util.cpp | 11 +++++++---- 1 file changed, 7 insertions(+), 4 deletions(-) (limited to 'source/core/slang-char-util.cpp') diff --git a/source/core/slang-char-util.cpp b/source/core/slang-char-util.cpp index 298f9b75f..ea9e6dbf2 100644 --- a/source/core/slang-char-util.cpp +++ b/source/core/slang-char-util.cpp @@ -2,10 +2,8 @@ namespace Slang { -static const CharUtil::CharFlagMap _calcCharFlagsMap() +/* static */CharUtil::CharFlagMap CharUtil::makeCharFlagMap() { - typedef CharUtil::Flag Flag; - CharUtil::CharFlagMap map; memset(&map, 0, sizeof(map)); @@ -48,6 +46,11 @@ static const CharUtil::CharFlagMap _calcCharFlagsMap() return map; } -/* static */const CharUtil::CharFlagMap CharUtil::g_charFlagMap = _calcCharFlagsMap(); +/* static */int CharUtil::_ensureLink() +{ + return makeCharFlagMap().flags[0]; +} + +/* static */const CharUtil::CharFlagMap CharUtil::g_charFlagMap = makeCharFlagMap(); } // namespace Slang -- cgit v1.2.3