csources_v2/c_code/5_1/@mextccomp.nim.c
2022-12-16 10:54:01 +08:00

7161 lines
283 KiB
C

/* Generated by Nim Compiler v1.9.0 */
#define NIM_INTBITS 32
#include "nimbase.h"
#include <string.h>
#include <stdio.h>
#include <glob.h>
#undef LANGUAGE_C
#undef MIPSEB
#undef MIPSEL
#undef PPC
#undef R3000
#undef R4000
#undef i386
#undef linux
#undef mips
#undef near
#undef far
#undef powerpc
#undef unix
#define nimfr_(x, y)
#define nimln_(x, y)
typedef struct tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg;
typedef struct NimStrPayload NimStrPayload;
typedef struct NimStringV2 NimStringV2;
typedef struct tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ;
typedef struct tyTuple__7q7q3E6Oj24ZNVJb9aonhAg tyTuple__7q7q3E6Oj24ZNVJb9aonhAg;
typedef struct tyTuple__O3wqxUcQkE83qFgUCv8M2g tyTuple__O3wqxUcQkE83qFgUCv8M2g;
typedef struct tyObject_Target__XQWVo9aPbyuL9b6bNh22dfIg tyObject_Target__XQWVo9aPbyuL9b6bNh22dfIg;
typedef struct tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg;
typedef struct tyObject_MsgConfig__9b2CYq6hCo8aU6ikssKccag tyObject_MsgConfig__9b2CYq6hCo8aU6ikssKccag;
typedef struct tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg;
typedef struct tySequence__npXKLeClRo4ZDs6rPxQ9bRA tySequence__npXKLeClRo4ZDs6rPxQ9bRA;
typedef struct tySequence__npXKLeClRo4ZDs6rPxQ9bRA_Content tySequence__npXKLeClRo4ZDs6rPxQ9bRA_Content;
typedef struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA;
typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw;
typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw_Content tySequence__7lEisrXlQEzwtUKW5pzRCw_Content;
typedef struct tySequence__o8paxaScVM7VHajE9a8rbyw tySequence__o8paxaScVM7VHajE9a8rbyw;
typedef struct tySequence__o8paxaScVM7VHajE9a8rbyw_Content tySequence__o8paxaScVM7VHajE9a8rbyw_Content;
typedef struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg;
typedef struct tySequence__4eRCaZmrYLLw2k30GPTiMw tySequence__4eRCaZmrYLLw2k30GPTiMw;
typedef struct tySequence__4eRCaZmrYLLw2k30GPTiMw_Content tySequence__4eRCaZmrYLLw2k30GPTiMw_Content;
typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content;
typedef struct tyTuple__47w2DboNEPf69aPgubZdd7Q tyTuple__47w2DboNEPf69aPgubZdd7Q;
typedef struct tySequence__SE64IkxZVzsW0aLsNjnJHg tySequence__SE64IkxZVzsW0aLsNjnJHg;
typedef struct tySequence__SE64IkxZVzsW0aLsNjnJHg_Content tySequence__SE64IkxZVzsW0aLsNjnJHg_Content;
typedef struct tyObject_SuggestcolonObjectType___fw9a9cWgWYzM4zKmnq3DGNfQ tyObject_SuggestcolonObjectType___fw9a9cWgWYzM4zKmnq3DGNfQ;
typedef struct tyObject_ProfileDatacolonObjectType___0tIytioPEQIg9axPcCaYjTQ tyObject_ProfileDatacolonObjectType___0tIytioPEQIg9axPcCaYjTQ;
typedef struct tyTuple__ncJ6uplZCCTp9aIcH4ehmWw tyTuple__ncJ6uplZCCTp9aIcH4ehmWw;
typedef struct tyTuple__eCO8mA2VZCpG2fD1wGsc8Q tyTuple__eCO8mA2VZCpG2fD1wGsc8Q;
typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w;
typedef struct tyObject_HSlice__IcpwahpirTotR7457AVF4Q tyObject_HSlice__IcpwahpirTotR7457AVF4Q;
typedef struct tyObject_BuildCache__bsEp9cTzVeuA9a0MLpRaR1yg tyObject_BuildCache__bsEp9cTzVeuA9a0MLpRaR1yg;
typedef struct tySequence__4eQHGndY6XBYpFOH09apV8Q tySequence__4eQHGndY6XBYpFOH09apV8Q;
typedef struct tySequence__4eQHGndY6XBYpFOH09apV8Q_Content tySequence__4eQHGndY6XBYpFOH09apV8Q_Content;
typedef struct tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q;
typedef struct tyObject_Joptions__LkVLf5IMKBOgl3HJApAzgQ tyObject_Joptions__LkVLf5IMKBOgl3HJApAzgQ;
typedef struct tyObject_OrderedTable__ZZvSdVkA2s2sIyifu4cpkg tyObject_OrderedTable__ZZvSdVkA2s2sIyifu4cpkg;
typedef struct tySequence__MlAD6nAPq9bHKla9cWiIZP0g tySequence__MlAD6nAPq9bHKla9cWiIZP0g;
typedef struct tySequence__MlAD6nAPq9bHKla9cWiIZP0g_Content tySequence__MlAD6nAPq9bHKla9cWiIZP0g_Content;
typedef struct tySequence__oLpBKXzW3hF9aCVMo5EymfQ tySequence__oLpBKXzW3hF9aCVMo5EymfQ;
typedef struct tySequence__oLpBKXzW3hF9aCVMo5EymfQ_Content tySequence__oLpBKXzW3hF9aCVMo5EymfQ_Content;
typedef struct TNimTypeV2 TNimTypeV2;
typedef struct Exception Exception;
typedef struct RootObj RootObj;
typedef struct tySequence__uB9b75OUPRENsBAu4AnoePA tySequence__uB9b75OUPRENsBAu4AnoePA;
typedef struct tySequence__uB9b75OUPRENsBAu4AnoePA_Content tySequence__uB9b75OUPRENsBAu4AnoePA_Content;
typedef struct tyTuple__UV3llMMYFckfui8YMBuUZA tyTuple__UV3llMMYFckfui8YMBuUZA;
typedef struct tyTuple__XOVT24GHXwqiEj5GCsEGCA tyTuple__XOVT24GHXwqiEj5GCsEGCA;
typedef struct tyObject_Env_extccompdotnim_callCCompiler___BcZEqupvBAThTu8RE6k9aJA tyObject_Env_extccompdotnim_callCCompiler___BcZEqupvBAThTu8RE6k9aJA;
typedef struct tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A;
typedef struct tyObject_Env_extccompdotnim_execCmdsInParallel___yHnd6tS72p8Z69arkozzppg tyObject_Env_extccompdotnim_execCmdsInParallel___yHnd6tS72p8Z69arkozzppg;
typedef struct tyObject_ProcessObj__2rGNQnv9bU4hanI2g3svReg tyObject_ProcessObj__2rGNQnv9bU4hanI2g3svReg;
typedef struct tyObject_OSError__PeQ9bR8XhClb9cp9cbW28aSyw tyObject_OSError__PeQ9bR8XhClb9cp9cbW28aSyw;
typedef struct tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA;
typedef struct tyObject_DateTime__d9cK9cyKZPJJxFXUmx8dSpPw tyObject_DateTime__d9cK9cyKZPJJxFXUmx8dSpPw;
typedef struct tyObject_TimezonecolonObjectType___F8OvqlxXyGXRSiK9c1fCDVw tyObject_TimezonecolonObjectType___F8OvqlxXyGXRSiK9c1fCDVw;
typedef struct tyObject_TFileInfo__2aBuGcbJEvokyJmg1PN0eg tyObject_TFileInfo__2aBuGcbJEvokyJmg1PN0eg;
typedef struct tyObject_ToJsonOptions__T9bCB8O1ZaL5BIvSkjYqMnQ tyObject_ToJsonOptions__T9bCB8O1ZaL5BIvSkjYqMnQ;
typedef struct tyObject_Env_extccompdotnim_runJsonBuildInstructions___VGgYLDtRkrYcGQHO6dF5ag tyObject_Env_extccompdotnim_runJsonBuildInstructions___VGgYLDtRkrYcGQHO6dF5ag;
typedef struct tyTuple__3N9c2HK9cpi9cfEKxHnvsLXkg tyTuple__3N9c2HK9cpi9cfEKxHnvsLXkg;
typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw;
typedef struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw tyTuple__QeWl6B6ffS4pU6WWrtcrDw;
typedef struct tyTuple__awOivLjlO76sGdHY7nQUjQ tyTuple__awOivLjlO76sGdHY7nQUjQ;
typedef struct tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA;
struct NimStrPayload {
NI cap;
NIM_CHAR data[SEQ_DECL_SIZE];
};
struct NimStringV2 {
NI len;
NimStrPayload* p;
};
typedef NU8 tySet_tyEnum_CfileFlag__quKxtOiNkuU9aFwgmRK07Og;
struct tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ {
NimStringV2 nimname;
NimStringV2 cname;
NimStringV2 obj;
tySet_tyEnum_CfileFlag__quKxtOiNkuU9aFwgmRK07Og flags;
NimStringV2 customArgs;
};
struct tyTuple__7q7q3E6Oj24ZNVJb9aonhAg {
NimStringV2 Field0;
NimStringV2 Field1;
NimStringV2 Field2;
};
typedef NU8 tySet_tyEnum_TInfoCCProp__updY9cayr9bkvHSNHtiR4nRg;
struct tyTuple__O3wqxUcQkE83qFgUCv8M2g {
NimStringV2 Field0;
NimStringV2 Field1;
NimStringV2 Field2;
NimStringV2 Field3;
NimStringV2 Field4;
NimStringV2 Field5;
NimStringV2 Field6;
NimStringV2 Field7;
NimStringV2 Field8;
NimStringV2 Field9;
NimStringV2 Field10;
NimStringV2 Field11;
NimStringV2 Field12;
NimStringV2 Field13;
NimStringV2 Field14;
NimStringV2 Field15;
NimStringV2 Field16;
NimStringV2 Field17;
NimStringV2 Field18;
NimStringV2 Field19;
NimStringV2 Field20;
tySet_tyEnum_TInfoCCProp__updY9cayr9bkvHSNHtiR4nRg Field21;
};
typedef tyTuple__O3wqxUcQkE83qFgUCv8M2g tyArray__lY4i4uS9axks7nZMHAiS1ag[11];
typedef NU8 tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w;
typedef NU8 tyEnum_TSystemCPU__ggCm2K7NXHAwcXG5u9bs1ow;
typedef NU8 tyEnum_TSystemOS__iZn2NSk2cFW6r5TYhTTIjg;
struct tyObject_Target__XQWVo9aPbyuL9b6bNh22dfIg {
tyEnum_TSystemCPU__ggCm2K7NXHAwcXG5u9bs1ow targetCPU;
tyEnum_TSystemCPU__ggCm2K7NXHAwcXG5u9bs1ow hostCPU;
tyEnum_TSystemOS__iZn2NSk2cFW6r5TYhTTIjg targetOS;
tyEnum_TSystemOS__iZn2NSk2cFW6r5TYhTTIjg hostOS;
NI intSize;
NI floatSize;
NI ptrSize;
NimStringV2 tnl;
};
typedef NU32 tySet_tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg;
typedef NU64 tySet_tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw;
struct tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg {
NU16 line;
NI16 col;
NI32 fileIndex;
};
typedef NU8 tySet_tyEnum_TErrorOutput__9ctbjKnMCtYsSPmUdTwRvag;
struct tySequence__npXKLeClRo4ZDs6rPxQ9bRA {
NI len; tySequence__npXKLeClRo4ZDs6rPxQ9bRA_Content* p;
};
struct tySequence__7lEisrXlQEzwtUKW5pzRCw {
NI len; tySequence__7lEisrXlQEzwtUKW5pzRCw_Content* p;
};
struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA {
tySequence__7lEisrXlQEzwtUKW5pzRCw data;
NI counter;
};
struct tySequence__o8paxaScVM7VHajE9a8rbyw {
NI len; tySequence__o8paxaScVM7VHajE9a8rbyw_Content* p;
};
struct tyObject_MsgConfig__9b2CYq6hCo8aU6ikssKccag {
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg trackPos;
NIM_BOOL trackPosAttached;
tySet_tyEnum_TErrorOutput__9ctbjKnMCtYsSPmUdTwRvag errorOutputs;
tySequence__npXKLeClRo4ZDs6rPxQ9bRA msgContext;
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg lastError;
tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA filenameToIndexTbl;
tySequence__o8paxaScVM7VHajE9a8rbyw fileInfos;
NI32 systemFileIdx;
};
typedef NU8 tyEnum_FilenameOption__hVFMNPLaxRz7xWOSR9cMItQ;
typedef NU8 tyEnum_Command__b145RBTl7bacomLHdBguHg;
typedef NU8 tyEnum_TGCMode__yL7PTPtUQsYlPsanXzkjrg;
typedef NU8 tyEnum_ExceptionSystem__ZMRdhT0e8tpR7rr8gLMDuQ;
typedef NU8 tyEnum_SymbolFilesOption__9b9bfTFCONAgeN19bdppgkkHQ;
struct tySequence__4eRCaZmrYLLw2k30GPTiMw {
NI len; tySequence__4eRCaZmrYLLw2k30GPTiMw_Content* p;
};
struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg {
tySequence__4eRCaZmrYLLw2k30GPTiMw data;
NI counter;
};
typedef NU32 tySet_tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA;
typedef NU8 tySet_tyEnum_LegacyFeature__hzKi8qlAHieq3BJnAlkP7g;
typedef NU8 tyEnum_IdeCmd__qiJleSvN9cnmxSLkFbpwy9bg;
typedef NU8 tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g;
typedef NU8 tySet_tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw[12];
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
NI len; tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content* p;
};
struct tyTuple__47w2DboNEPf69aPgubZdd7Q {
NI Field0;
NI Field1;
NI Field2;
};
typedef NU8 tySet_tyEnum_StdOrrKind__C4nP6ZSJZRe8Um4ny9bnbwA;
struct tySequence__SE64IkxZVzsW0aLsNjnJHg {
NI len; tySequence__SE64IkxZVzsW0aLsNjnJHg_Content* p;
};
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (tyObject_SuggestcolonObjectType___fw9a9cWgWYzM4zKmnq3DGNfQ* result, void* ClE_0);
void* ClE_0;
} tyProc__UwsGaXGCDEc7Akhwij5HRA;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (NimStringV2 output, void* ClE_0);
void* ClE_0;
} tyProc__k2HFjxisIgDALbEUFojxaQ;
typedef NU8 tyEnum_Severity__R4Rvu3XsQ2ynPKxZt1L82g;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* config, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info, NimStringV2 msg, tyEnum_Severity__R4Rvu3XsQ2ynPKxZt1L82g severity, void* ClE_0);
void* ClE_0;
} tyProc__9a8L4QvXftisHTVzCsMCKUA;
struct tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg {
tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w backend;
tyObject_Target__XQWVo9aPbyuL9b6bNh22dfIg target;
NI linesCompiled;
tySet_tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg options;
tySet_tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw globalOptions;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* macrosToExpand;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* arcToExpand;
tyObject_MsgConfig__9b2CYq6hCo8aU6ikssKccag m;
tyEnum_FilenameOption__hVFMNPLaxRz7xWOSR9cMItQ filenameOption;
NimStringV2 unitSep;
NI evalTemplateCounter;
NI evalMacroCounter;
NI8 exitcode;
tyEnum_Command__b145RBTl7bacomLHdBguHg cmd;
NimStringV2 cmdInput;
NIM_BOOL projectIsCmd;
NIM_BOOL implicitCmd;
tyEnum_TGCMode__yL7PTPtUQsYlPsanXzkjrg selectedGC;
tyEnum_ExceptionSystem__ZMRdhT0e8tpR7rr8gLMDuQ exc;
NIM_BOOL hintProcessingDots;
NI verbosity;
NI numberOfProcessors;
NF lastCmdTime;
tyEnum_SymbolFilesOption__9b9bfTFCONAgeN19bdppgkkHQ symbolFiles;
NI spellSuggestMax;
tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg cppDefines;
NimStringV2 headerFile;
tySet_tyEnum_Feature__k2wmsadbuVSPLgnQzpreqA features;
tySet_tyEnum_LegacyFeature__hzKi8qlAHieq3BJnAlkP7g legacyFeatures;
NimStringV2 arguments;
tyEnum_IdeCmd__qiJleSvN9cnmxSLkFbpwy9bg ideCmd;
NIM_BOOL oldNewlines;
tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g cCompiler;
tySet_tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw modifiedyNotes;
tySet_tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw cmdlineNotes;
tySet_tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw foreignPackageNotes;
tySet_tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw notes;
tySet_tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw warningAsErrors;
tySet_tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw mainPackageNotes;
NI mainPackageId;
NI errorCounter;
NI hintCounter;
NI warnCounter;
NI errorMax;
NI maxLoopIterationsVM;
NIM_BOOL isVmTrace;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* configVars;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* symbols;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* packageCache;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ nimblePaths;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ searchPaths;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ lazyPaths;
NimStringV2 outFile;
NimStringV2 outDir;
NimStringV2 jsonBuildFile;
NimStringV2 prefixDir;
NimStringV2 libpath;
NimStringV2 nimcacheDir;
tyTuple__47w2DboNEPf69aPgubZdd7Q nimStdlibVersion;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* dllOverrides;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* moduleOverrides;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* cfileSpecificOptions;
NimStringV2 projectName;
NimStringV2 projectPath;
NimStringV2 projectFull;
NIM_BOOL projectIsStdin;
tySet_tyEnum_StdOrrKind__C4nP6ZSJZRe8Um4ny9bnbwA lastMsgWasDot;
NI32 projectMainIdx;
NI32 projectMainIdx2;
NimStringV2 command;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ commandArgs;
NimStringV2 commandLine;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ extraCmds;
NIM_BOOL keepComments;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ implicitImports;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ implicitIncludes;
NimStringV2 docSeeSrcUrl;
NimStringV2 docRoot;
NimStringV2 docCmd;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ configFiles;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ cIncludes;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ cLibs;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ cLinkedLibs;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ externalToLink;
NimStringV2 linkOptionsCmd;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ compileOptionsCmd;
NimStringV2 linkOptions;
NimStringV2 compileOptions;
NimStringV2 cCompilerPath;
tySequence__SE64IkxZVzsW0aLsNjnJHg toCompile;
tyProc__UwsGaXGCDEc7Akhwij5HRA suggestionResultHook;
NI suggestVersion;
NI suggestMaxResults;
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg lastLineInfo;
tyProc__k2HFjxisIgDALbEUFojxaQ writelnHook;
tyProc__9a8L4QvXftisHTVzCsMCKUA structuredErrorHook;
NimStringV2 cppCustomNamespace;
NimStringV2 nimMainPrefix;
tyObject_ProfileDatacolonObjectType___0tIytioPEQIg9axPcCaYjTQ* vmProfileData;
};
typedef NU8 tyArray__YtcvxHNKV4YiecPE9ap1mcA[20];
typedef NU8 tySet_tyEnum_TInfoOSProp__A9bXXG2zpqn62FMnhk2mfYg;
struct tyTuple__ncJ6uplZCCTp9aIcH4ehmWw {
NimStringV2 Field0;
NimStringV2 Field1;
NimStringV2 Field2;
NimStringV2 Field3;
NimStringV2 Field4;
NimStringV2 Field5;
NimStringV2 Field6;
NimStringV2 Field7;
NimStringV2 Field8;
NimStringV2 Field9;
NimStringV2 Field10;
NimStringV2 Field11;
tySet_tyEnum_TInfoOSProp__A9bXXG2zpqn62FMnhk2mfYg Field12;
};
typedef tyTuple__ncJ6uplZCCTp9aIcH4ehmWw tyArray__XdiXqcgUqQLw6YYxQfIxLA[33];
typedef NU8 tyEnum_Endianness__0BVYNY0K9cz7BUPI3AnbEQw;
struct tyTuple__eCO8mA2VZCpG2fD1wGsc8Q {
NimStringV2 Field0;
NI Field1;
tyEnum_Endianness__0BVYNY0K9cz7BUPI3AnbEQw Field2;
NI Field3;
NI Field4;
};
typedef tyTuple__eCO8mA2VZCpG2fD1wGsc8Q tyArray__rHSmP9ci4v5Jt6YycZ9cGtoA[28];
typedef NimStringV2 tyArray__DLxB9cOndPvLDyky9bY9ccM3g[7];
typedef NU8 tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw;
typedef NU8 tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg;
typedef NU8 tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA;
typedef NU8 tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw;
struct tyTuple__kN8up2W6YKc5YA9avn5mV5w {
NimStringV2 Field0;
NI Field1;
NI Field2;
};
typedef NU8 tyEnum_TInfoOSProp__A9bXXG2zpqn62FMnhk2mfYg;
typedef NimStringV2 tyArray__Re75IspeoxXy2oCZHwcRrA[2];
typedef NU8 tyEnum_CfileFlag__quKxtOiNkuU9aFwgmRK07Og;
typedef NimStringV2 tyArray__rmMMhDIqORJzUU5zqeitSQ[16];
typedef NimStringV2 tyArray__68WB4OcBspSFyW4LY9cOceA[18];
typedef NU8 tyEnum_FileMode__4sJyy9aOSN8X63XdWXl5iDg;
typedef NimStringV2 tyArray__nHXaesL0DJZHyVS07ARPRA[1];
struct tyObject_HSlice__IcpwahpirTotR7457AVF4Q {
tyEnum_TSystemOS__iZn2NSk2cFW6r5TYhTTIjg a;
tyEnum_TSystemOS__iZn2NSk2cFW6r5TYhTTIjg b;
};
typedef NU8 tyEnum_TSystemCC__YPXqlEXKlMlX7CDeSTIGVw;
struct tySequence__4eQHGndY6XBYpFOH09apV8Q {
NI len; tySequence__4eQHGndY6XBYpFOH09apV8Q_Content* p;
};
struct tyObject_BuildCache__bsEp9cTzVeuA9a0MLpRaR1yg {
NimStringV2 cacheVersion;
NimStringV2 outputFile;
tySequence__4eQHGndY6XBYpFOH09apV8Q compile;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ link;
NimStringV2 linkcmd;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ extraCmds;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ configFiles;
NIM_BOOL stdinInput;
NIM_BOOL projectIsCmd;
NimStringV2 cmdInput;
NimStringV2 currentDir;
NimStringV2 cmdline;
tySequence__4eQHGndY6XBYpFOH09apV8Q depfiles;
NimStringV2 nimexe;
};
struct tyObject_Joptions__LkVLf5IMKBOgl3HJApAzgQ {
NIM_BOOL allowExtraKeys;
NIM_BOOL allowMissingKeys;
};
typedef NU8 tyEnum_JsonNodeKind__RUngo7nCHe6O8aBGIcrhtg;
struct tySequence__MlAD6nAPq9bHKla9cWiIZP0g {
NI len; tySequence__MlAD6nAPq9bHKla9cWiIZP0g_Content* p;
};
struct tyObject_OrderedTable__ZZvSdVkA2s2sIyifu4cpkg {
tySequence__MlAD6nAPq9bHKla9cWiIZP0g data;
NI counter;
NI first;
NI last;
};
struct tySequence__oLpBKXzW3hF9aCVMo5EymfQ {
NI len; tySequence__oLpBKXzW3hF9aCVMo5EymfQ_Content* p;
};
struct tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q {
NIM_BOOL isUnquoted;
tyEnum_JsonNodeKind__RUngo7nCHe6O8aBGIcrhtg kind;
union{
struct {NimStringV2 str;
} _kind_1;
struct {NI64 num;
} _kind_2;
struct {NF fnum;
} _kind_3;
struct {NIM_BOOL bval;
} _kind_4;
struct {tyObject_OrderedTable__ZZvSdVkA2s2sIyifu4cpkg fields;
} _kind_6;
struct {tySequence__oLpBKXzW3hF9aCVMo5EymfQ elems;
} _kind_7;
};
};
struct TNimTypeV2 {
void* destructor;
NI size;
NI16 align;
NI16 depth;
NU32* display;
void* traceImpl;
void* typeInfoV1;
NI flags;
};
struct RootObj {
TNimTypeV2* m_type;
};
struct tySequence__uB9b75OUPRENsBAu4AnoePA {
NI len; tySequence__uB9b75OUPRENsBAu4AnoePA_Content* p;
};
struct Exception {
RootObj Sup;
Exception* parent;
NCSTRING name;
NimStringV2 message;
tySequence__uB9b75OUPRENsBAu4AnoePA trace;
Exception* up;
};
struct tyTuple__UV3llMMYFckfui8YMBuUZA {
NimStringV2 Field0;
NimStringV2 Field1;
};
struct tyTuple__XOVT24GHXwqiEj5GCsEGCA {
NimStringV2 Field0;
NI Field1;
};
typedef NU8 tySet_tyEnum_ProcessOption__bnU6W8LhTMnT4JaSWtGlSA;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (NI idx, void* ClE_0);
void* ClE_0;
} tyProc__SqRJqa5aOiKB4EuKlKh9asA;
struct tyObject_Env_extccompdotnim_callCCompiler___BcZEqupvBAThTu8RE6k9aJA {
RootObj Sup;
NI colonstate_;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ prettyCmds1;
tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf2;
};
struct tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A {
NI rc;
NI rootIdx;
};
typedef NU8 tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (NI idx, tyObject_ProcessObj__2rGNQnv9bU4hanI2g3svReg* p, void* ClE_0);
void* ClE_0;
} tyProc__oudJckli4GdxAXLVzBBlAw;
struct tyObject_Env_extccompdotnim_execCmdsInParallel___yHnd6tS72p8Z69arkozzppg {
RootObj Sup;
NI colonstate_;
tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf1;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ cmds2;
};
struct tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA {
Exception Sup;
};
struct tyObject_OSError__PeQ9bR8XhClb9cp9cbW28aSyw {
tyObject_CatchableError__qrLSDoe2oBoAqNtJ9badtnA Sup;
NI32 errorCode;
};
typedef NimStringV2 tyArray__yt5VDPNtUGx9cBkOVakHwdQ[6];
typedef NU8 tyEnum_WeekDay__SVfemTA9aCOyua2TJYa6yBg;
struct tyObject_DateTime__d9cK9cyKZPJJxFXUmx8dSpPw {
RootObj Sup;
NI nanosecond;
NI second;
NI minute;
NI hour;
NI monthdayZero;
NI monthZero;
NI year;
tyEnum_WeekDay__SVfemTA9aCOyua2TJYa6yBg weekday;
NI yearday;
NIM_BOOL isDst;
tyObject_TimezonecolonObjectType___F8OvqlxXyGXRSiK9c1fCDVw* timezone;
NI utcOffset;
};
typedef NCSTRING tyUncheckedArray__nvS6J9clHMUMHfoZd8Ad2zg[1];
typedef struct {
N_NIMCALL_PTR(NimStringV2, ClP_0) (NimStringV2 x, void* ClE_0);
void* ClE_0;
} tyProc__oFHfEKFsiYTMAy9a42cSiKw;
typedef N_CLOSURE_PTR(NimStringV2, TM__pZmXgBT0YcBrnAO6VUvpNQ_330) (NimStringV2 x);
typedef N_CLOSURE_PTR(NimStringV2, TM__pZmXgBT0YcBrnAO6VUvpNQ_334) (NimStringV2 x, void* ClE_0);
typedef NU8 tySet_tyEnum_CopyFlag__mhWURcDRsh0F1DeHBSFUVg;
struct tyObject_TFileInfo__2aBuGcbJEvokyJmg1PN0eg {
NimStringV2 fullPath;
NimStringV2 projPath;
NimStringV2 shortName;
NimStringV2 quotedName;
NimStringV2 quotedFullName;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ lines;
NimStringV2 dirtyFile;
NimStringV2 hash;
NIM_BOOL dirty;
};
typedef NU8 tyEnum_EnumMode__VBQLiQclXYpinosAjWkfrg;
typedef NU8 tyEnum_JsonNodeMode__UTXRaEPTjXpNdVaD9bbN0bQ;
struct tyObject_ToJsonOptions__T9bCB8O1ZaL5BIvSkjYqMnQ {
tyEnum_EnumMode__VBQLiQclXYpinosAjWkfrg enumMode;
tyEnum_JsonNodeMode__UTXRaEPTjXpNdVaD9bbN0bQ jsonNodeMode;
};
struct tyObject_Env_extccompdotnim_runJsonBuildInstructions___VGgYLDtRkrYcGQHO6dF5ag {
RootObj Sup;
NI colonstate_;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ prettyCmds1;
tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf2;
};
typedef NimStringV2 tyArray__24KAM9afIUgUaqBaEBB6r9bg[3];
struct tyTuple__3N9c2HK9cpi9cfEKxHnvsLXkg {
tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg Field0;
NimStringV2 Field1;
};
#ifndef tySequence__npXKLeClRo4ZDs6rPxQ9bRA_Content_PP
#define tySequence__npXKLeClRo4ZDs6rPxQ9bRA_Content_PP
struct tySequence__npXKLeClRo4ZDs6rPxQ9bRA_Content { NI cap; tyTuple__3N9c2HK9cpi9cfEKxHnvsLXkg data[SEQ_DECL_SIZE];};
#endif
struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw {
NI Field0;
NimStringV2 Field1;
NI32 Field2;
};
#ifndef tySequence__7lEisrXlQEzwtUKW5pzRCw_Content_PP
#define tySequence__7lEisrXlQEzwtUKW5pzRCw_Content_PP
struct tySequence__7lEisrXlQEzwtUKW5pzRCw_Content { NI cap; tyTuple__xYhUhS7X82rKTqbT9bRfCnw data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__o8paxaScVM7VHajE9a8rbyw_Content_PP
#define tySequence__o8paxaScVM7VHajE9a8rbyw_Content_PP
struct tySequence__o8paxaScVM7VHajE9a8rbyw_Content { NI cap; tyObject_TFileInfo__2aBuGcbJEvokyJmg1PN0eg data[SEQ_DECL_SIZE];};
#endif
struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw {
NI Field0;
NimStringV2 Field1;
};
#ifndef tySequence__4eRCaZmrYLLw2k30GPTiMw_Content_PP
#define tySequence__4eRCaZmrYLLw2k30GPTiMw_Content_PP
struct tySequence__4eRCaZmrYLLw2k30GPTiMw_Content { NI cap; tyTuple__QeWl6B6ffS4pU6WWrtcrDw data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__SE64IkxZVzsW0aLsNjnJHg_Content_PP
#define tySequence__SE64IkxZVzsW0aLsNjnJHg_Content_PP
struct tySequence__SE64IkxZVzsW0aLsNjnJHg_Content { NI cap; tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__SE64IkxZVzsW0aLsNjnJHg_Content_PP
#define tySequence__SE64IkxZVzsW0aLsNjnJHg_Content_PP
struct tySequence__SE64IkxZVzsW0aLsNjnJHg_Content { NI cap; tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__4eQHGndY6XBYpFOH09apV8Q_Content_PP
#define tySequence__4eQHGndY6XBYpFOH09apV8Q_Content_PP
struct tySequence__4eQHGndY6XBYpFOH09apV8Q_Content { NI cap; tyTuple__UV3llMMYFckfui8YMBuUZA data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__4eQHGndY6XBYpFOH09apV8Q_Content_PP
#define tySequence__4eQHGndY6XBYpFOH09apV8Q_Content_PP
struct tySequence__4eQHGndY6XBYpFOH09apV8Q_Content { NI cap; tyTuple__UV3llMMYFckfui8YMBuUZA data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__4eQHGndY6XBYpFOH09apV8Q_Content_PP
#define tySequence__4eQHGndY6XBYpFOH09apV8Q_Content_PP
struct tySequence__4eQHGndY6XBYpFOH09apV8Q_Content { NI cap; tyTuple__UV3llMMYFckfui8YMBuUZA data[SEQ_DECL_SIZE];};
#endif
struct tyTuple__awOivLjlO76sGdHY7nQUjQ {
NI Field0;
NI Field1;
NimStringV2 Field2;
tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* Field3;
};
#ifndef tySequence__MlAD6nAPq9bHKla9cWiIZP0g_Content_PP
#define tySequence__MlAD6nAPq9bHKla9cWiIZP0g_Content_PP
struct tySequence__MlAD6nAPq9bHKla9cWiIZP0g_Content { NI cap; tyTuple__awOivLjlO76sGdHY7nQUjQ data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__oLpBKXzW3hF9aCVMo5EymfQ_Content_PP
#define tySequence__oLpBKXzW3hF9aCVMo5EymfQ_Content_PP
struct tySequence__oLpBKXzW3hF9aCVMo5EymfQ_Content { NI cap; tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* data[SEQ_DECL_SIZE];};
#endif
struct tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA {
NCSTRING procname;
NI line;
NCSTRING filename;
};
#ifndef tySequence__uB9b75OUPRENsBAu4AnoePA_Content_PP
#define tySequence__uB9b75OUPRENsBAu4AnoePA_Content_PP
struct tySequence__uB9b75OUPRENsBAu4AnoePA_Content { NI cap; tyObject_StackTraceEntry__oLyohQ7O2XOvGnflOss8EA data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
#ifndef tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
#define tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content_PP
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content { NI cap; NimStringV2 data[SEQ_DECL_SIZE];};
#endif
static N_INLINE(void, nimZeroMem)(void* p, NI size);
static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size);
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___stdZassertions_16)(NimStringV2* dest, NimStringV2 src);
N_LIB_PRIVATE N_NIMCALL(tyTuple__7q7q3E6Oj24ZNVJb9aonhAg, splitFile__pathutils_31)(NimStringV2 x);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, toObjFile__extccomp_800)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 filename);
static N_INLINE(void, appendString)(NimStringV2* dest, NimStringV2 src);
static N_INLINE(void, copyMem__system_1719)(void* dest, void* source, NI size);
static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, rawNewString)(NI space);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, completeCfilePath__extccomp_795)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 cfile, NIM_BOOL createSubDir);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, completeGeneratedFilePath__options_5127)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 f, NIM_BOOL createSubDir);
N_LIB_PRIVATE N_NIMCALL(void, addExternalFileToCompile__extccomp_1205)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ* c);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, externalFileChanged__extccomp_1189)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ* cfile);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___stdZassertions_13)(NimStringV2* dest);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, toGeneratedFile__options_5122)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 path, NimStringV2 ext);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, mangleModuleName__modulepaths_32)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 path);
N_LIB_PRIVATE N_NIMCALL(void, footprint__extccomp_1185)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ* cfile, tyArray__YtcvxHNKV4YiecPE9ap1mcA Result);
N_LIB_PRIVATE N_NIMCALL(void, secureHash__stdZsha49_856)(NIM_CHAR* str, NI strLen_0, tyArray__YtcvxHNKV4YiecPE9ap1mcA Result);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___stdZsha49_904)(tyArray__YtcvxHNKV4YiecPE9ap1mcA self);
N_LIB_PRIVATE N_NIMCALL(void, secureHashFile__stdZsha49_896)(NimStringV2 filename, tyArray__YtcvxHNKV4YiecPE9ap1mcA Result);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getCompileCFileCmd__extccomp_1116)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ* cfile, NIM_BOOL isMainFile, NIM_BOOL produceOutput);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, useCpp__extccomp_1006)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 cfile);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nsuEndsWith)(NimStringV2 s, NimStringV2 suffix);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, cFileSpecificOptions__extccomp_944)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 nimname, NimStringV2 fullNimFile);
N_LIB_PRIVATE N_NIMCALL(NI, nsuFindStr)(NimStringV2 s, NimStringV2 sub, NI start, NI last);
N_LIB_PRIVATE N_NIMCALL(void, addOpt__extccomp_769)(NimStringV2* dest, NimStringV2 src);
static N_INLINE(NIM_CHAR*, X5BX5D___system_7066)(NimStringV2* s, NI i);
static N_INLINE(void, nimPrepareStrMutationV2)(NimStringV2* s);
N_LIB_PRIVATE N_NIMCALL(void, nimPrepareStrMutationImpl__system_2301)(NimStringV2* s);
N_LIB_PRIVATE N_NIMCALL(void, prepareAdd)(NimStringV2* s, NI addlen);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, existsConfigVar__options_4919)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 key);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getConfigVar__options_4923)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 key, NimStringV2 default_0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getDebug__extccomp_920)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g c);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getConfigVar__extccomp_703)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g c, NimStringV2 suffix);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___stdZassertions_19)(NimStringV2* dest, NimStringV2 src);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___options_138)(tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w e);
static N_INLINE(void, appendChar)(NimStringV2* dest, NIM_CHAR c);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getOptSpeed__extccomp_916)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g c);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getOptSize__extccomp_924)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g c);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getOrDefault__pureZstrtabs_335)(tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* t, NimStringV2 key, NimStringV2 default_0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, noschangeFileExt)(NimStringV2 filename, NimStringV2 ext);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getCompilerExe__extccomp_1080)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g compiler, NIM_BOOL isCpp);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getEnv__stdZenvvars_15)(NimStringV2 key, NimStringV2 default_0);
N_LIB_PRIVATE N_NOINLINE(void, liMessage__msgs_1172)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info, tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA msg, NimStringV2 arg, tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw eh, tyTuple__kN8up2W6YKc5YA9avn5mV5w info2, NIM_BOOL isRaw);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuFormatSingleElem)(NimStringV2 formatstr, NimStringV2 a);
static N_INLINE(NIM_BOOL, needsExeExt__extccomp_991)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nosaddFileExt)(NimStringV2 filename, NimStringV2 ext);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hcrOn__options_588)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf);
static N_INLINE(void, nimAddCharV1)(NimStringV2* s, NIM_CHAR c);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nospquoteShell)(NimStringV2 s);
static N_INLINE(NIM_BOOL, noAbsolutePaths__extccomp_928)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuJoinSep)(NimStringV2* a, NI aLen_0, NimStringV2 sep);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nosjoinPath)(NimStringV2 head, NimStringV2 tail);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nosextractFilename)(NimStringV2 path);
static N_INLINE(NIM_BOOL, isEmpty__options_5393)(NimStringV2 x);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuFormatOpenArray)(NimStringV2 formatstr, NimStringV2* a, NI aLen_0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getPrefixDir__options_4965)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, envFlags__extccomp_1073)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf);
N_LIB_PRIVATE N_NIMCALL(void, nsuAddf)(NimStringV2* s, NimStringV2 formatstr, NimStringV2* a, NI aLen_0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, vccplatform__extccomp_972)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf);
static N_INLINE(NIM_BOOL, eqStrings)(NimStringV2 a, NimStringV2 b);
static N_INLINE(NIM_BOOL, equalMem__system_1727)(void* a, void* b, NI size);
static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, open__stdZsyncio_403)(FILE** f, NimStringV2 filename, tyEnum_FileMode__4sJyy9aOSN8X63XdWXl5iDg mode, NI bufSize);
N_LIB_PRIVATE N_NIMCALL(void, parseSecureHash__stdZsha49_938)(NimStringV2 hash, tyArray__YtcvxHNKV4YiecPE9ap1mcA Result);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, readLine__stdZsyncio_299)(FILE* f);
N_LIB_PRIVATE N_NIMCALL(void, close__stdZsyncio_242)(FILE* f);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___stdZsha49_946)(tyArray__YtcvxHNKV4YiecPE9ap1mcA a, tyArray__YtcvxHNKV4YiecPE9ap1mcA b);
static N_INLINE(void, writeLine__msgs_459)(FILE* f, NimStringV2* x, NI xLen_0);
N_LIB_PRIVATE N_NIMCALL(void, write__stdZsyncio_230)(FILE* f, NimStringV2 s);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nosfileExists)(NimStringV2 filename);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nostryRemoveFile)(NimStringV2 file);
N_LIB_PRIVATE N_NIMCALL(void, add__extccomp_807)(tySequence__SE64IkxZVzsW0aLsNjnJHg* x, tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ* value);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___options_3037)(tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ* dest, tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ* src);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pathutils_55)(tyTuple__7q7q3E6Oj24ZNVJb9aonhAg* dest);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___options_3034)(tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ* dest);
N_LIB_PRIVATE N_NIMCALL(void, insert__extccomp_846)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ* x, NimStringV2 item, NI i);
static N_INLINE(NIM_BOOL, contains__extccomp_688)(tyObject_HSlice__IcpwahpirTotR7457AVF4Q s, tyEnum_TSystemOS__iZn2NSk2cFW6r5TYhTTIjg value);
static N_INLINE(tyObject_HSlice__IcpwahpirTotR7457AVF4Q, dotdot___extccomp_664)(tyEnum_TSystemOS__iZn2NSk2cFW6r5TYhTTIjg a, tyEnum_TSystemOS__iZn2NSk2cFW6r5TYhTTIjg b);
N_LIB_PRIVATE N_NIMCALL(void, add__stdZenumutils_69)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ* x, NimStringV2 value);
N_LIB_PRIVATE N_NIMCALL(tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g, nameToCC__extccomp_587)(NimStringV2 name);
N_LIB_PRIVATE N_NIMCALL(NI, nsuCmpIgnoreStyle)(NimStringV2 a, NimStringV2 b);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, percent___extccomp_733)(NimStringV2* args, NI argsLen_0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, listCCnames__extccomp_623)(void);
N_LIB_PRIVATE N_NIMCALL(void, undefSymbol__condsyms_8)(tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* symbols, NimStringV2 symbol);
N_LIB_PRIVATE N_NIMCALL(void, defineSymbol__condsyms_4)(tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* symbols, NimStringV2 symbol, NimStringV2 value);
N_LIB_PRIVATE N_NIMCALL(void, nstPut)(tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* t, NimStringV2 key, NimStringV2 val);
N_LIB_PRIVATE N_NIMCALL(void, addCompileOption__extccomp_775)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 option);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, absOutFile__options_4942)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___system_3530)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ* dest);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___extccomp_2034)(tyObject_BuildCache__bsEp9cTzVeuA9a0MLpRaR1yg* dest);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___stdZenvvars_85)(tySequence__4eQHGndY6XBYpFOH09apV8Q* dest);
N_LIB_PRIVATE N_NIMCALL(void, fromJson__extccomp_2075)(tyObject_BuildCache__bsEp9cTzVeuA9a0MLpRaR1yg* a, tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* b, tyObject_Joptions__LkVLf5IMKBOgl3HJApAzgQ opt);
N_LIB_PRIVATE N_NIMCALL(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q*, parseFile__pureZjson_5624)(NimStringV2 filename);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZjson_271)(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q** dest);
static N_INLINE(NIM_BOOL, isObjDisplayCheck)(TNimTypeV2* source, NI16 targetDepth, NU32 token);
static N_INLINE(Exception*, nimBorrowCurrentException)(void);
static N_INLINE(void, popCurrentException)(void);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___stdZassertions_33)(Exception** dest, Exception* src, NIM_BOOL cyclic);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nosgetCurrentDir)(void);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___extccomp_2713)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ x, tySequence__sM4lkSb7zS6F7OVMvW9cffQ y);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___options_3164)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ* dest, tySequence__sM4lkSb7zS6F7OVMvW9cffQ src);
N_LIB_PRIVATE N_NIMCALL(tySequence__sM4lkSb7zS6F7OVMvW9cffQ, newSeq__stdZsyncio_509)(NI len);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___options_3161)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ* dest);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nosgetAppFilename)(void);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, slash___pathutils_103)(NimStringV2 base, NimStringV2 f);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getNimcacheDir__options_5056)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf);
N_LIB_PRIVATE N_NIMCALL(tyTuple__XOVT24GHXwqiEj5GCsEGCA, execCmdEx__pureZosproc_1606)(NimStringV2 command, tySet_tyEnum_ProcessOption__bnU6W8LhTMnT4JaSWtGlSA options, tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* env, NimStringV2 workingDir, NimStringV2 input);
N_LIB_PRIVATE N_NIMCALL(NI, parseInt__pureZparseutils_832)(NimStringV2 s, NI* number, NI start);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, genMappingFiles__extccomp_2823)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tySequence__SE64IkxZVzsW0aLsNjnJHg list);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, percent___extccomp_2831)(NimStringV2* args, NI argsLen_0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuEscape)(NimStringV2 s, NimStringV2 prefix, NimStringV2 suffix);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getCompileOptions__extccomp_969)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getLinkOptions__extccomp_980)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, percent___extccomp_2844)(NimStringV2* args, NI argsLen_0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, writeRope__ropes_26)(NimStringV2 head, NimStringV2 filename);
N_LIB_PRIVATE N_NIMCALL(void*, nimNewObj)(NI size, NI alignment);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___extccomp_3005)(tyObject_Env_extccompdotnim_callCCompiler___BcZEqupvBAThTu8RE6k9aJA* dest);
static N_INLINE(NIM_BOOL, nimDecRefIsLast)(void* p);
static N_INLINE(NI, minuspercent___system_790)(NI x, NI y);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___options_3149)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* dest);
N_LIB_PRIVATE N_NIMCALL(void, nimRawDispose)(void* p, NI alignment);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___options_3378)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg** dest, tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* src);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZosproc_528)(tyProc__SqRJqa5aOiKB4EuKlKh9asA* dest);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___extccomp_3026)(tyObject_Env_extccompdotnim_callCCompiler___BcZEqupvBAThTu8RE6k9aJA** dest);
static N_INLINE(NIM_BOOL, nimDecRefIsLastCyclicDyn)(void* p);
N_LIB_PRIVATE N_NOINLINE(void, rememberCycle__system_3157)(NIM_BOOL isDestroyAction, tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A* s, TNimTypeV2* desc);
N_LIB_PRIVATE N_NIMCALL(void, nimDestroyAndDispose)(void* p);
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___extccomp_1397)(NI idx, void* ClE_0);
N_LIB_PRIVATE N_NIMCALL(void, flushDot__msgs_33)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___extccomp_3029)(tyObject_Env_extccompdotnim_callCCompiler___BcZEqupvBAThTu8RE6k9aJA** dest, tyObject_Env_extccompdotnim_callCCompiler___BcZEqupvBAThTu8RE6k9aJA* src, NIM_BOOL cyclic);
static N_INLINE(void, nimIncRefCyclic)(void* p, NIM_BOOL cyclic);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, displayProgressCC__extccomp_1373)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 path, NimStringV2 compileCmd);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hasHint__options_530)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw note);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, demangleModuleName__modulepaths_76)(NimStringV2 path);
N_LIB_PRIVATE N_NIMCALL(tyTuple__7q7q3E6Oj24ZNVJb9aonhAg, nossplitFile)(NimStringV2 path);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZos_231)(tyTuple__7q7q3E6Oj24ZNVJb9aonhAg* dest);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___options_5279)(NimStringV2 x);
N_LIB_PRIVATE N_NIMCALL(void, execCmdsInParallel__extccomp_1298)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tySequence__sM4lkSb7zS6F7OVMvW9cffQ cmds, tyProc__SqRJqa5aOiKB4EuKlKh9asA prettyCb);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___extccomp_3100)(tyObject_Env_extccompdotnim_execCmdsInParallel___yHnd6tS72p8Z69arkozzppg* dest);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___system_3533)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ* dest, tySequence__sM4lkSb7zS6F7OVMvW9cffQ src);
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___extccomp_1304)(NI idx, tyObject_ProcessObj__2rGNQnv9bU4hanI2g3svReg* p, void* ClE_0);
N_LIB_PRIVATE N_NIMCALL(NI, nosppeekExitCode)(tyObject_ProcessObj__2rGNQnv9bU4hanI2g3svReg* p);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, dollar___systemZdollars_3)(NI x);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___extccomp_3124)(tyObject_Env_extccompdotnim_execCmdsInParallel___yHnd6tS72p8Z69arkozzppg** dest, tyObject_Env_extccompdotnim_execCmdsInParallel___yHnd6tS72p8Z69arkozzppg* src, NIM_BOOL cyclic);
N_LIB_PRIVATE N_NIMCALL(NI, nospcountProcessors)(void);
N_LIB_PRIVATE N_NIMCALL(NI, execWithEcho__extccomp_892)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 cmd, tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA msg);
N_LIB_PRIVATE N_NIMCALL(NI, nospexecCmd)(NimStringV2 command);
static N_INLINE(Exception*, getCurrentException)(void);
N_LIB_PRIVATE N_NIMCALL(void, reraiseException)(void);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___stdZoserrors_45)(tyObject_OSError__PeQ9bR8XhClb9cp9cbW28aSyw** dest);
N_LIB_PRIVATE N_NIMCALL(NI, nospexecProcesses)(NimStringV2* cmds, NI cmdsLen_0, tySet_tyEnum_ProcessOption__bnU6W8LhTMnT4JaSWtGlSA options, NI n, tyProc__SqRJqa5aOiKB4EuKlKh9asA beforeRunEvent, tyProc__oudJckli4GdxAXLVzBBlAw afterRunEvent);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZosproc_548)(tyProc__oudJckli4GdxAXLVzBBlAw* dest);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___extccomp_3121)(tyObject_Env_extccompdotnim_execCmdsInParallel___yHnd6tS72p8Z69arkozzppg** dest);
N_LIB_PRIVATE N_NIMCALL(void*, newSeqPayload)(NI cap, NI elemSize, NI elemAlign);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getObjFilePath__extccomp_1362)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ* f);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, hcrLinkTargetName__extccomp_1366)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 objFile, NIM_BOOL isMain);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getLinkCmd__extccomp_1237)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 output, NimStringV2 objfiles, NIM_BOOL isDllBuild, NIM_BOOL removeStaticFile);
N_LIB_PRIVATE N_NIMCALL(void, nosremoveFile)(NimStringV2 file);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getLinkerExe__extccomp_1104)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g compiler);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isVSCompatible__extccomp_648)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf);
N_LIB_PRIVATE N_NIMCALL(void, now__pureZtimes_1691)(tyObject_DateTime__d9cK9cyKZPJJxFXUmx8dSpPw* Result);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, format__extccomp_1264)(tyObject_DateTime__d9cK9cyKZPJJxFXUmx8dSpPw* dt);
static N_INLINE(NI, nanosecond__pureZtimes_1197)(tyObject_DateTime__d9cK9cyKZPJJxFXUmx8dSpPw* dt);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___pureZtimes_1412)(tyObject_DateTime__d9cK9cyKZPJJxFXUmx8dSpPw* dest);
static N_INLINE(NCSTRING, nimToCStringConv)(NimStringV2 s);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, cstrToNimstr)(NCSTRING str);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___system_3536)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ* dest, tySequence__sM4lkSb7zS6F7OVMvW9cffQ src);
static N_INLINE(tySequence__sM4lkSb7zS6F7OVMvW9cffQ, map__extccomp_1515)(NimStringV2* s, NI sLen_0, tyProc__oFHfEKFsiYTMAy9a42cSiKw op);
N_LIB_PRIVATE N_NIMCALL(void, newSeq__system_3408)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ* s, NI len);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, colonanonymous___extccomp_1511)(NimStringV2 curr);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuReplaceStr)(NimStringV2 s, NimStringV2 sub, NimStringV2 by);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, prepareToWriteOutput__options_4962)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf);
N_LIB_PRIVATE N_NIMCALL(void, copyFileWithPermissions__stdZprivateZosfiles_342)(NimStringV2 source, NimStringV2 dest, NIM_BOOL ignorePermissionErrors, tySet_tyEnum_CopyFlag__mhWURcDRsh0F1DeHBSFUVg options);
N_LIB_PRIVATE N_NIMCALL(tySequence__sM4lkSb7zS6F7OVMvW9cffQ, getExtraCmds__extccomp_1289)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 output);
N_LIB_PRIVATE N_NIMCALL(void, linkViaResponseFile__extccomp_1322)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 cmd);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, substr__system_7550)(NimStringV2 s, NI first);
N_LIB_PRIVATE N_NIMCALL(void, writeFile__stdZsyncio_482)(NimStringV2 filename, NimStringV2 content);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nsuReplaceChar)(NimStringV2 s, NIM_CHAR sub, NIM_CHAR by);
N_LIB_PRIVATE N_NIMCALL(void, execLinkCmd__extccomp_1293)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 linkCmd);
N_LIB_PRIVATE N_NIMCALL(void, execExternalProgram__extccomp_905)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 cmd, tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA msg);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, substr__system_7538)(NimStringV2 s, NI first, NI last);
N_LIB_PRIVATE N_NIMCALL(void, generateScript__extccomp_909)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 script);
N_LIB_PRIVATE N_NIMCALL(tySequence__4eQHGndY6XBYpFOH09apV8Q, newSeq__extccomp_1682)(NI len);
N_LIB_PRIVATE N_NIMCALL(void, add__extccomp_1771)(tySequence__4eQHGndY6XBYpFOH09apV8Q* x, tyTuple__UV3llMMYFckfui8YMBuUZA value);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, quoteShellCommand__pureZos_84)(NimStringV2* args, NI argsLen_0);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isDefined__options_2481)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 symbol);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nosisAbsolute)(NimStringV2 path);
N_LIB_PRIVATE N_NIMCALL(void, eqsink___stdZenvvars_91)(tySequence__4eQHGndY6XBYpFOH09apV8Q* dest, tySequence__4eQHGndY6XBYpFOH09apV8Q src);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, jsonBuildInstructionsFile__extccomp_1612)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, pretty__pureZjson_4843)(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* node, NI indent);
N_LIB_PRIVATE N_NIMCALL(tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q*, toJson__extccomp_1891)(tyObject_BuildCache__bsEp9cTzVeuA9a0MLpRaR1yg* a, tyObject_ToJsonOptions__T9bCB8O1ZaL5BIvSkjYqMnQ opt);
N_LIB_PRIVATE N_NIMCALL(tyObject_ToJsonOptions__T9bCB8O1ZaL5BIvSkjYqMnQ, initToJsonOptions__stdZjsonutils_35)(void);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___extccomp_3262)(tyObject_Env_extccompdotnim_runJsonBuildInstructions___VGgYLDtRkrYcGQHO6dF5ag* dest);
N_LIB_PRIVATE N_NIMCALL(void, failedAssertImpl__stdZassertions_224)(NimStringV2 msg);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, percent___extccomp_2777)(NimStringV2* args, NI argsLen_0);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getStackTrace__system_3623)(Exception* e);
N_LIB_PRIVATE N_NIMCALL(void, quit__system_6974)(NimStringV2 errormsg, NI errorcode);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___stdZassertions_30)(Exception** dest);
N_LIB_PRIVATE N_NIMCALL(void, noscreateDir)(NimStringV2 dir);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, nosparentDir)(NimStringV2 path);
N_LIB_PRIVATE N_NIMCALL(NimStringV2, percent___extccomp_2792)(NimStringV2* args, NI argsLen_0);
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___extccomp_2799)(NI idx, void* ClE_0);
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___extccomp_3286)(tyObject_Env_extccompdotnim_runJsonBuildInstructions___VGgYLDtRkrYcGQHO6dF5ag** dest, tyObject_Env_extccompdotnim_runJsonBuildInstructions___VGgYLDtRkrYcGQHO6dF5ag* src, NIM_BOOL cyclic);
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___extccomp_3283)(tyObject_Env_extccompdotnim_runJsonBuildInstructions___VGgYLDtRkrYcGQHO6dF5ag** dest);
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_2 = { 1 | NIM_STRLIT_FLAG, "." };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_3 = {1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_2};
static const struct {
NI cap; NIM_CHAR data[3+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_4 = { 3 | NIM_STRLIT_FLAG, "gcc" };
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_5 = { 1 | NIM_STRLIT_FLAG, "o" };
static const struct {
NI cap; NIM_CHAR data[15+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_6 = { 15 | NIM_STRLIT_FLAG, " -O3 -fno-ident" };
static const struct {
NI cap; NIM_CHAR data[15+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_7 = { 15 | NIM_STRLIT_FLAG, " -Os -fno-ident" };
static const struct {
NI cap; NIM_CHAR data[3+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_8 = { 3 | NIM_STRLIT_FLAG, "g++" };
static const struct {
NI cap; NIM_CHAR data[38+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_9 = { 38 | NIM_STRLIT_FLAG, "-c $options $include -o $objfile $file" };
static const struct {
NI cap; NIM_CHAR data[10+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_10 = { 10 | NIM_STRLIT_FLAG, " -mwindows" };
static const struct {
NI cap; NIM_CHAR data[8+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_11 = { 8 | NIM_STRLIT_FLAG, " -shared" };
static const struct {
NI cap; NIM_CHAR data[25+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_12 = { 25 | NIM_STRLIT_FLAG, "ar rcs $libfile $objfiles" };
static const struct {
NI cap; NIM_CHAR data[0+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_13 = { 0 | NIM_STRLIT_FLAG, "" };
static const struct {
NI cap; NIM_CHAR data[50+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_14 = { 50 | NIM_STRLIT_FLAG, "$buildgui $builddll -o $exefile $objfiles $options" };
static const struct {
NI cap; NIM_CHAR data[3+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_15 = { 3 | NIM_STRLIT_FLAG, " -I" };
static const struct {
NI cap; NIM_CHAR data[3+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_16 = { 3 | NIM_STRLIT_FLAG, " -L" };
static const struct {
NI cap; NIM_CHAR data[5+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_17 = { 5 | NIM_STRLIT_FLAG, " -l$1" };
static const struct {
NI cap; NIM_CHAR data[5+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_18 = { 5 | NIM_STRLIT_FLAG, "-fPIC" };
static const struct {
NI cap; NIM_CHAR data[14+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_19 = { 14 | NIM_STRLIT_FLAG, "__asm__($1);$n" };
static const struct {
NI cap; NIM_CHAR data[9+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_20 = { 9 | NIM_STRLIT_FLAG, "$1 $3 $2 " };
static const struct {
NI cap; NIM_CHAR data[47+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_21 = { 47 | NIM_STRLIT_FLAG, "-Wa,-acdl=$asmfile -g -fverbose-asm -masm=intel" };
static const struct {
NI cap; NIM_CHAR data[28+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_22 = { 28 | NIM_STRLIT_FLAG, "-std=gnu++17 -funsigned-char" };
static const struct {
NI cap; NIM_CHAR data[10+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_23 = { 10 | NIM_STRLIT_FLAG, "switch_gcc" };
static const struct {
NI cap; NIM_CHAR data[5+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_24 = { 5 | NIM_STRLIT_FLAG, " -O3 " };
static const struct {
NI cap; NIM_CHAR data[5+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_25 = { 5 | NIM_STRLIT_FLAG, " -Os " };
static const struct {
NI cap; NIM_CHAR data[20+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_26 = { 20 | NIM_STRLIT_FLAG, "aarch64-none-elf-gcc" };
static const struct {
NI cap; NIM_CHAR data[20+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_27 = { 20 | NIM_STRLIT_FLAG, "aarch64-none-elf-g++" };
static const struct {
NI cap; NIM_CHAR data[61+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_28 = { 61 | NIM_STRLIT_FLAG, "-w -MMD -MP -MF $dfile -c $options $include -o $objfile $file" };
static const struct {
NI cap; NIM_CHAR data[46+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_29 = { 46 | NIM_STRLIT_FLAG, "aarch64-none-elf-gcc-ar rcs $libfile $objfiles" };
static const struct {
NI cap; NIM_CHAR data[68+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_30 = { 68 | NIM_STRLIT_FLAG, "$buildgui $builddll -Wl,-Map,$mapfile -o $exefile $objfiles $options" };
static const struct {
NI cap; NIM_CHAR data[5+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_31 = { 5 | NIM_STRLIT_FLAG, "-fPIE" };
static const struct {
NI cap; NIM_CHAR data[10+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_32 = { 10 | NIM_STRLIT_FLAG, "asm($1);$n" };
static const struct {
NI cap; NIM_CHAR data[8+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_33 = { 8 | NIM_STRLIT_FLAG, "llvm_gcc" };
static const struct {
NI cap; NIM_CHAR data[8+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_34 = { 8 | NIM_STRLIT_FLAG, "llvm-gcc" };
static const struct {
NI cap; NIM_CHAR data[8+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_35 = { 8 | NIM_STRLIT_FLAG, "llvm-g++" };
static const struct {
NI cap; NIM_CHAR data[30+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_36 = { 30 | NIM_STRLIT_FLAG, "llvm-ar rcs $libfile $objfiles" };
static const struct {
NI cap; NIM_CHAR data[5+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_37 = { 5 | NIM_STRLIT_FLAG, "clang" };
static const struct {
NI cap; NIM_CHAR data[7+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_38 = { 7 | NIM_STRLIT_FLAG, "clang++" };
static const struct {
NI cap; NIM_CHAR data[3+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_39 = { 3 | NIM_STRLIT_FLAG, "bcc" };
static const struct {
NI cap; NIM_CHAR data[3+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_40 = { 3 | NIM_STRLIT_FLAG, "obj" };
static const struct {
NI cap; NIM_CHAR data[8+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_41 = { 8 | NIM_STRLIT_FLAG, " -O3 -6 " };
static const struct {
NI cap; NIM_CHAR data[8+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_42 = { 8 | NIM_STRLIT_FLAG, " -O1 -6 " };
static const struct {
NI cap; NIM_CHAR data[6+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_43 = { 6 | NIM_STRLIT_FLAG, "bcc32c" };
static const struct {
NI cap; NIM_CHAR data[6+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_44 = { 6 | NIM_STRLIT_FLAG, "cpp32c" };
static const struct {
NI cap; NIM_CHAR data[37+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_45 = { 37 | NIM_STRLIT_FLAG, "-c $options $include -o$objfile $file" };
static const struct {
NI cap; NIM_CHAR data[4+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_46 = { 4 | NIM_STRLIT_FLAG, " -tW" };
static const struct {
NI cap; NIM_CHAR data[5+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_47 = { 5 | NIM_STRLIT_FLAG, " -tWD" };
static const struct {
NI cap; NIM_CHAR data[5+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_48 = { 5 | NIM_STRLIT_FLAG, "bcc32" };
static const struct {
NI cap; NIM_CHAR data[49+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_49 = { 49 | NIM_STRLIT_FLAG, "$options $buildgui $builddll -e$exefile $objfiles" };
static const struct {
NI cap; NIM_CHAR data[15+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_50 = { 15 | NIM_STRLIT_FLAG, "__asm{$n$1$n}$n" };
static const struct {
NI cap; NIM_CHAR data[5+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_51 = { 5 | NIM_STRLIT_FLAG, "$1 $2" };
static const struct {
NI cap; NIM_CHAR data[3+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_52 = { 3 | NIM_STRLIT_FLAG, "vcc" };
static const struct {
NI cap; NIM_CHAR data[10+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_53 = { 10 | NIM_STRLIT_FLAG, " /Ogityb2 " };
static const struct {
NI cap; NIM_CHAR data[5+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_54 = { 5 | NIM_STRLIT_FLAG, " /O1 " };
static const struct {
NI cap; NIM_CHAR data[2+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_55 = { 2 | NIM_STRLIT_FLAG, "cl" };
static const struct {
NI cap; NIM_CHAR data[58+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_56 = { 58 | NIM_STRLIT_FLAG, "/c$vccplatform $options $include /nologo /Fo$objfile $file" };
static const struct {
NI cap; NIM_CHAR data[31+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_57 = { 31 | NIM_STRLIT_FLAG, " /SUBSYSTEM:WINDOWS user32.lib " };
static const struct {
NI cap; NIM_CHAR data[4+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_58 = { 4 | NIM_STRLIT_FLAG, " /LD" };
static const struct {
NI cap; NIM_CHAR data[64+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_59 = { 64 | NIM_STRLIT_FLAG, "vccexe --command:lib$vccplatform /nologo /OUT:$libfile $objfiles" };
static const struct {
NI cap; NIM_CHAR data[70+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_60 = { 70 | NIM_STRLIT_FLAG, "$builddll$vccplatform /Fe$exefile $objfiles $buildgui /nologo $options" };
static const struct {
NI cap; NIM_CHAR data[3+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_61 = { 3 | NIM_STRLIT_FLAG, " /I" };
static const struct {
NI cap; NIM_CHAR data[10+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_62 = { 10 | NIM_STRLIT_FLAG, " /LIBPATH:" };
static const struct {
NI cap; NIM_CHAR data[7+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_63 = { 7 | NIM_STRLIT_FLAG, " $1.lib" };
static const struct {
NI cap; NIM_CHAR data[11+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_64 = { 11 | NIM_STRLIT_FLAG, " /RTC1 /Z7 " };
static const struct {
NI cap; NIM_CHAR data[9+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_65 = { 9 | NIM_STRLIT_FLAG, "$3$n$1 $2" };
static const struct {
NI cap; NIM_CHAR data[11+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_66 = { 11 | NIM_STRLIT_FLAG, "/Fa$asmfile" };
static const struct {
NI cap; NIM_CHAR data[3+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_67 = { 3 | NIM_STRLIT_FLAG, "tcc" };
static const struct {
NI cap; NIM_CHAR data[18+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_68 = { 18 | NIM_STRLIT_FLAG, "-Wl,-subsystem=gui" };
static const struct {
NI cap; NIM_CHAR data[50+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_69 = { 50 | NIM_STRLIT_FLAG, "-o $exefile $options $buildgui $builddll $objfiles" };
static const struct {
NI cap; NIM_CHAR data[4+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_70 = { 4 | NIM_STRLIT_FLAG, " -g " };
static const struct {
NI cap; NIM_CHAR data[3+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_71 = { 3 | NIM_STRLIT_FLAG, "env" };
static const struct {
NI cap; NIM_CHAR data[5+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_72 = { 5 | NIM_STRLIT_FLAG, " -O1 " };
static const struct {
NI cap; NIM_CHAR data[50+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_73 = { 50 | NIM_STRLIT_FLAG, "-c $ccenvflags $options $include -o $objfile $file" };
static const struct {
NI cap; NIM_CHAR data[9+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_74 = { 9 | NIM_STRLIT_FLAG, " -shared " };
static const struct {
NI cap; NIM_CHAR data[50+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_75 = { 50 | NIM_STRLIT_FLAG, "-o $exefile $buildgui $builddll $objfiles $options" };
static const struct {
NI cap; NIM_CHAR data[3+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_76 = { 3 | NIM_STRLIT_FLAG, "icl" };
static const struct {
NI cap; NIM_CHAR data[3+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_77 = { 3 | NIM_STRLIT_FLAG, "icc" };
static const struct {
NI cap; NIM_CHAR data[8+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_78 = { 8 | NIM_STRLIT_FLAG, "clang_cl" };
static const struct {
NI cap; NIM_CHAR data[8+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_79 = { 8 | NIM_STRLIT_FLAG, "clang-cl" };
static const struct {
NI cap; NIM_CHAR data[83+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_80 = { 83 | NIM_STRLIT_FLAG, "-fuse-ld=lld $builddll$vccplatform /Fe$exefile $objfiles $buildgui /nologo $options" };
static const struct {
NI cap; NIM_CHAR data[4+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_81 = { 4 | NIM_STRLIT_FLAG, "sha1" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_82 = {4, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_81};
static const struct {
NI cap; NIM_CHAR data[2+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_84 = { 2 | NIM_STRLIT_FLAG, ".C" };
static const struct {
NI cap; NIM_CHAR data[3+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_85 = { 3 | NIM_STRLIT_FLAG, ".cc" };
static const struct {
NI cap; NIM_CHAR data[4+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_86 = { 4 | NIM_STRLIT_FLAG, ".cpp" };
static const struct {
NI cap; NIM_CHAR data[4+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_87 = { 4 | NIM_STRLIT_FLAG, ".CPP" };
static const struct {
NI cap; NIM_CHAR data[4+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_88 = { 4 | NIM_STRLIT_FLAG, ".c++" };
static const struct {
NI cap; NIM_CHAR data[3+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_89 = { 3 | NIM_STRLIT_FLAG, ".cp" };
static const struct {
NI cap; NIM_CHAR data[4+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_90 = { 4 | NIM_STRLIT_FLAG, ".cxx" };
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_91 = { 1 | NIM_STRLIT_FLAG, " " };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_92 = {1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_91};
static const struct {
NI cap; NIM_CHAR data[6+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_93 = { 6 | NIM_STRLIT_FLAG, ".debug" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_94 = {6, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_93};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_95 = {0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_96 = {1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_2};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_97 = {0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_98 = {0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_99 = {0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_100 = {0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13};
static const struct {
NI cap; NIM_CHAR data[14+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_101 = { 14 | NIM_STRLIT_FLAG, ".options.debug" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_102 = {14, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_101};
static const struct {
NI cap; NIM_CHAR data[6+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_103 = { 6 | NIM_STRLIT_FLAG, ".speed" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_104 = {6, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_103};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_105 = {0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13};
static const struct {
NI cap; NIM_CHAR data[14+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_106 = { 14 | NIM_STRLIT_FLAG, ".options.speed" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_107 = {14, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_106};
static const struct {
NI cap; NIM_CHAR data[5+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_108 = { 5 | NIM_STRLIT_FLAG, ".size" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_109 = {5, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_108};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_110 = {0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13};
static const struct {
NI cap; NIM_CHAR data[13+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_111 = { 13 | NIM_STRLIT_FLAG, ".options.size" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_112 = {13, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_111};
static const struct {
NI cap; NIM_CHAR data[7+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_113 = { 7 | NIM_STRLIT_FLAG, ".always" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_114 = {7, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_113};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_115 = {0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_116 = {0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_117 = {0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13};
static const struct {
NI cap; NIM_CHAR data[4+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_118 = { 4 | NIM_STRLIT_FLAG, ".exe" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_119 = {4, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_118};
static const struct {
NI cap; NIM_CHAR data[3+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_120 = { 3 | NIM_STRLIT_FLAG, "CXX" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_121 = {3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_120};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_122 = {0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13};
static const struct {
NI cap; NIM_CHAR data[2+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_123 = { 2 | NIM_STRLIT_FLAG, "CC" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_124 = {2, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_123};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_125 = {0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13};
static const struct {
NI cap; NIM_CHAR data[50+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_126 = { 50 | NIM_STRLIT_FLAG, "Compiler \'$1\' doesn\'t support the requested target" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_127 = {50, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_126};
static const struct {
NI cap; NIM_CHAR data[38+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_129 = { 38 | NIM_STRLIT_FLAG, "/home/wind/nimv2/compiler/extccomp.nim" };
static const struct {
NI cap; NIM_CHAR data[3+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_130 = { 3 | NIM_STRLIT_FLAG, "exe" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_131 = {3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_130};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_132 = {0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_133 = {0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13};
static const struct {
NI cap; NIM_CHAR data[2+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_134 = { 2 | NIM_STRLIT_FLAG, ".d" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_135 = {2, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_134};
static const struct {
NI cap; NIM_CHAR data[5+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_136 = { 5 | NIM_STRLIT_FLAG, "dfile" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_137 = {5, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_136};
static const struct {
NI cap; NIM_CHAR data[4+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_138 = { 4 | NIM_STRLIT_FLAG, "file" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_139 = {4, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_138};
static const struct {
NI cap; NIM_CHAR data[7+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_140 = { 7 | NIM_STRLIT_FLAG, "objfile" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_141 = {7, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_140};
static const struct {
NI cap; NIM_CHAR data[7+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_142 = { 7 | NIM_STRLIT_FLAG, "options" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_143 = {7, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_142};
static const struct {
NI cap; NIM_CHAR data[7+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_144 = { 7 | NIM_STRLIT_FLAG, "include" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_145 = {7, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_144};
static const struct {
NI cap; NIM_CHAR data[3+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_146 = { 3 | NIM_STRLIT_FLAG, "nim" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_147 = {3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_146};
static const struct {
NI cap; NIM_CHAR data[3+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_148 = { 3 | NIM_STRLIT_FLAG, "lib" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_149 = {3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_148};
static const struct {
NI cap; NIM_CHAR data[10+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_150 = { 10 | NIM_STRLIT_FLAG, "ccenvflags" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_151 = {10, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_150};
static const struct {
NI cap; NIM_CHAR data[8+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_152 = { 8 | NIM_STRLIT_FLAG, "CXXFLAGS" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_153 = {8, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_152};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_154 = {0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13};
static const struct {
NI cap; NIM_CHAR data[6+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_155 = { 6 | NIM_STRLIT_FLAG, "CFLAGS" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_156 = {6, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_155};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_157 = {0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13};
static const struct {
NI cap; NIM_CHAR data[4+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_158 = { 4 | NIM_STRLIT_FLAG, ".asm" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_159 = {4, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_158};
static const struct {
NI cap; NIM_CHAR data[7+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_160 = { 7 | NIM_STRLIT_FLAG, "asmfile" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_161 = {7, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_160};
static const struct {
NI cap; NIM_CHAR data[25+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_162 = { 25 | NIM_STRLIT_FLAG, "Produced assembler here: " };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_163 = {25, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_162};
static const struct {
NI cap; NIM_CHAR data[64+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_165 = { 64 | NIM_STRLIT_FLAG, "Couldn\'t produce assembler listing for the selected C compiler: " };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_166 = {64, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_165};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_168 = {5, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_136};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_169 = {4, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_138};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_170 = {7, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_140};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_171 = {7, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_142};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_172 = {7, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_144};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_173 = {3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_146};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_174 = {3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_148};
static const struct {
NI cap; NIM_CHAR data[11+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_175 = { 11 | NIM_STRLIT_FLAG, "vccplatform" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_176 = {11, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_175};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_177 = {4, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_118};
static const struct {
NI cap; NIM_CHAR data[10+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_178 = { 10 | NIM_STRLIT_FLAG, "vccexe.exe" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_179 = {10, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_178};
static const struct {
NI cap; NIM_CHAR data[15+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_180 = { 15 | NIM_STRLIT_FLAG, " --platform:x86" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_181 = {15, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_180};
static const struct {
NI cap; NIM_CHAR data[15+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_182 = { 15 | NIM_STRLIT_FLAG, " --platform:arm" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_183 = {15, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_182};
static const struct {
NI cap; NIM_CHAR data[17+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_184 = { 17 | NIM_STRLIT_FLAG, " --platform:amd64" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_185 = {17, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_184};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_186 = {0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_187 = {10, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_150};
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_188 = { 1 | NIM_STRLIT_FLAG, "\012" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_189 = {1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_188};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_190 = {0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13};
static const struct {
NI cap; NIM_CHAR data[2+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_191 = { 2 | NIM_STRLIT_FLAG, ", " };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_192 = {2, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_191};
static const struct {
NI cap; NIM_CHAR data[15+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_194 = { 15 | NIM_STRLIT_FLAG, ".options.always" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_195 = {15, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_194};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_196 = {0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13};
static const struct {
NI cap; NIM_CHAR data[5+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_197 = { 5 | NIM_STRLIT_FLAG, ".path" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_198 = {5, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_197};
static const struct {
NI cap; NIM_CHAR data[4+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_199 = { 4 | NIM_STRLIT_FLAG, "true" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_200 = {4, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_199};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_201 = {0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_202 = {4, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_199};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_203 = {15, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_194};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_204 = {5, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_197};
static const struct {
NI cap; NIM_CHAR data[40+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_205 = { 40 | NIM_STRLIT_FLAG, "Warning: JSON processing failed for: $#\012" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_206 = {40, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_205};
static const struct {
NI cap; NIM_CHAR data[16+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_207 = { 16 | NIM_STRLIT_FLAG, "D20210525T193831" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_208 = {16, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_207};
static const struct {
NI cap; NIM_CHAR data[4+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_209 = { 4 | NIM_STRLIT_FLAG, "json" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_210 = {4, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_209};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_211 = {4, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_118};
static const struct {
NI cap; NIM_CHAR data[13+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_212 = { 13 | NIM_STRLIT_FLAG, " -dumpversion" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_213 = {13, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_212};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_214 = {0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_215 = {0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13};
static const struct {
NI cap; NIM_CHAR data[10+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_217 = { 10 | NIM_STRLIT_FLAG, "[C_Files]\012" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_218 = {10, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_217};
static const struct {
NI cap; NIM_CHAR data[20+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_219 = { 20 | NIM_STRLIT_FLAG, "\012[C_Compiler]\012Flags=" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_220 = {20, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_219};
static const struct {
NI cap; NIM_CHAR data[9+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_221 = { 9 | NIM_STRLIT_FLAG, "__dummy__" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_222 = {9, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_221};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_223 = {9, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_221};
static const struct {
NI cap; NIM_CHAR data[1+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_224 = { 1 | NIM_STRLIT_FLAG, "\"" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_225 = {1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_224};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_226 = {1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_224};
static const struct {
NI cap; NIM_CHAR data[16+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_227 = { 16 | NIM_STRLIT_FLAG, "\012[Linker]\012Flags=" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_228 = {16, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_227};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_229 = {1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_91};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_230 = {1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_91};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_231 = {0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_232 = {1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_91};
static const struct {
NI cap; NIM_CHAR data[15+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_233 = { 15 | NIM_STRLIT_FLAG, ".options.linker" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_234 = {15, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_233};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_235 = {1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_224};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_236 = {1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_224};
static const struct {
NI cap; NIM_CHAR data[23+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_237 = { 23 | NIM_STRLIT_FLAG, "\012[Environment]\012libpath=" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_238 = {23, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_237};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_239 = {1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_224};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_240 = {1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_224};
static const struct {
NI cap; NIM_CHAR data[11+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_241 = { 11 | NIM_STRLIT_FLAG, "mapping.txt" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_242 = {11, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_241};
static const struct {
NI cap; NIM_CHAR data[25+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_243 = { 25 | NIM_STRLIT_FLAG, "could not write to file: " };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_244 = {25, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_243};
N_LIB_PRIVATE TNimTypeV2 NTIv2__BcZEqupvBAThTu8RE6k9aJA_;
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_247 = {0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13};
static const struct {
NI cap; NIM_CHAR data[6+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_248 = { 6 | NIM_STRLIT_FLAG, "CC: $1" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_249 = {6, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_248};
static const struct {
NI cap; NIM_CHAR data[2+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_250 = { 2 | NIM_STRLIT_FLAG, ": " };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_251 = {2, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_250};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_252 = {6, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_248};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_253 = {1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_188};
N_LIB_PRIVATE TNimTypeV2 NTIv2__yHnd6tS72p8Z69arkozzppg_;
static const struct {
NI cap; NIM_CHAR data[43+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_255 = { 43 | NIM_STRLIT_FLAG, "execution of an external compiler program \'" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_256 = {43, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_255};
static const struct {
NI cap; NIM_CHAR data[25+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_257 = { 25 | NIM_STRLIT_FLAG, "\' failed with exit code: " };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_258 = {25, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_257};
static const struct {
NI cap; NIM_CHAR data[2+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_259 = { 2 | NIM_STRLIT_FLAG, "\012\012" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_260 = {2, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_259};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_262 = {0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13};
static const struct {
NI cap; NIM_CHAR data[48+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_264 = { 48 | NIM_STRLIT_FLAG, "invocation of external compiler program failed. " };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_265 = {48, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_264};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_266 = {1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_91};
static const struct {
NI cap; NIM_CHAR data[45+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_268 = { 45 | NIM_STRLIT_FLAG, "execution of an external program failed: \'$1\'" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_269 = {45, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_268};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_270 = {1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_91};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_272 = {45, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_268};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_274 = {48, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_264};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_275 = {1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_91};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_276 = {45, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_268};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_277 = {1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_91};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_278 = {45, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_268};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_279 = {0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_281 = {0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_282 = {4, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_118};
static const struct {
NI cap; NIM_CHAR data[7+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_283 = { 7 | NIM_STRLIT_FLAG, "libfile" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_284 = {7, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_283};
static const struct {
NI cap; NIM_CHAR data[8+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_285 = { 8 | NIM_STRLIT_FLAG, "objfiles" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_286 = {8, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_285};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_287 = {11, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_175};
static const struct {
NI cap; NIM_CHAR data[10+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_288 = { 10 | NIM_STRLIT_FLAG, ".linkerexe" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_289 = {10, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_288};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_290 = {3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_130};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_291 = {0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_292 = {0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13};
static const struct {
NI cap; NIM_CHAR data[4+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_293 = { 4 | NIM_STRLIT_FLAG, ".map" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_294 = {4, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_293};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_295 = {1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_91};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_296 = {15, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_233};
static const struct {
NI cap; NIM_CHAR data[9+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_297 = { 9 | NIM_STRLIT_FLAG, ".linkTmpl" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_298 = {9, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_297};
static const struct {
NI cap; NIM_CHAR data[8+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_299 = { 8 | NIM_STRLIT_FLAG, "builddll" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_300 = {8, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_299};
static const struct {
NI cap; NIM_CHAR data[7+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_301 = { 7 | NIM_STRLIT_FLAG, "mapfile" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_302 = {7, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_301};
static const struct {
NI cap; NIM_CHAR data[8+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_303 = { 8 | NIM_STRLIT_FLAG, "buildgui" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_304 = {8, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_303};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_305 = {7, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_142};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_306 = {8, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_285};
static const struct {
NI cap; NIM_CHAR data[7+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_307 = { 7 | NIM_STRLIT_FLAG, "exefile" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_308 = {7, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_307};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_309 = {3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_146};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_310 = {3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_148};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_311 = {8, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_299};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_312 = {7, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_301};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_313 = {8, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_303};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_314 = {7, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_142};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_315 = {8, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_285};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_316 = {7, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_307};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_317 = {3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_146};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_318 = {3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_148};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_319 = {11, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_175};
extern TNimTypeV2 NTIv2__d9cK9cyKZPJJxFXUmx8dSpPw_;
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_320 = {1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_2};
static const struct {
NI cap; NIM_CHAR data[4+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_321 = { 4 | NIM_STRLIT_FLAG, ".pdb" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_322 = {4, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_321};
static const struct {
NI cap; NIM_CHAR data[12+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_323 = { 12 | NIM_STRLIT_FLAG, " /link /PDB:" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_324 = {12, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_323};
static const struct {
NI cap; NIM_CHAR data[12+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_325 = { 12 | NIM_STRLIT_FLAG, " /Zi /FS /Od" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_326 = {12, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_325};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_327 = {1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_91};
static const struct {
NI cap; NIM_CHAR data[6+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_328 = { 6 | NIM_STRLIT_FLAG, ".*.pdb" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_329 = {6, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_328};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_331 = {2, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_123};
static const struct {
NI cap; NIM_CHAR data[4+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_332 = { 4 | NIM_STRLIT_FLAG, "Link" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_333 = {4, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_332};
static const struct {
NI cap; NIM_CHAR data[15+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_335 = { 15 | NIM_STRLIT_FLAG, "_linkerArgs.txt" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_336 = {15, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_335};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_337 = {45, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_268};
static const struct {
NI cap; NIM_CHAR data[46+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_339 = { 46 | NIM_STRLIT_FLAG, "invocation of external linker program failed. " };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_340 = {46, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_339};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_341 = {1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_91};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_342 = {45, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_268};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_343 = {1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_91};
static const struct {
NI cap; NIM_CHAR data[2+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_344 = { 2 | NIM_STRLIT_FLAG, " @" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_345 = {2, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_344};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_346 = {0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_347 = {1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_188};
static const struct {
NI cap; NIM_CHAR data[8+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_348 = { 8 | NIM_STRLIT_FLAG, "compile_" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_349 = {8, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_348};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_350 = {25, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_243};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_352 = {16, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_207};
static const struct {
NI cap; NIM_CHAR data[12+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_353 = { 12 | NIM_STRLIT_FLAG, "nimBetterRun" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_354 = {12, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_353};
N_LIB_PRIVATE TNimTypeV2 NTIv2__VGgYLDtRkrYcGQHO6dF5ag_;
static const struct {
NI cap; NIM_CHAR data[8+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_356 = { 8 | NIM_STRLIT_FLAG, "nimDebug" };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_357 = {8, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_356};
static const struct {
NI cap; NIM_CHAR data[28+1];
} TM__pZmXgBT0YcBrnAO6VUvpNQ_358 = { 28 | NIM_STRLIT_FLAG, "options.nim(648, 5) `false` " };
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_359 = {28, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_358};
static const NimStringV2 TM__pZmXgBT0YcBrnAO6VUvpNQ_360 = {16, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_207};
N_LIB_PRIVATE NIM_CONST tyArray__lY4i4uS9axks7nZMHAiS1ag CC__extccomp_539 = {{{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_4},
{1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_5},
{15, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_6},
{15, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_7},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_4},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_8},
{38, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_9},
{10, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_10},
{8, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_11},
{25, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_12},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{50, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_14},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_15},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_16},
{5, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_17},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{5, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_18},
{14, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_19},
{9, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_20},
{47, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_21},
{28, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_22},
183}
,
{{10, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_23},
{1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_5},
{5, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_24},
{5, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_25},
{20, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_26},
{20, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_27},
{61, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_28},
{10, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_10},
{8, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_11},
{46, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_29},
{20, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_26},
{68, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_30},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_15},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_16},
{5, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_17},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{5, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_31},
{10, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_32},
{9, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_20},
{47, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_21},
{28, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_22},
183}
,
{{8, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_33},
{1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_5},
{15, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_6},
{15, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_7},
{8, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_34},
{8, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_35},
{38, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_9},
{10, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_10},
{8, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_11},
{30, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_36},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{50, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_14},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_15},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_16},
{5, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_17},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{5, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_18},
{14, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_19},
{9, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_20},
{47, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_21},
{28, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_22},
183}
,
{{5, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_37},
{1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_5},
{15, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_6},
{15, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_7},
{5, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_37},
{7, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_38},
{38, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_9},
{10, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_10},
{8, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_11},
{30, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_36},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{50, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_14},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_15},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_16},
{5, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_17},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{5, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_18},
{14, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_19},
{9, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_20},
{47, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_21},
{28, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_22},
183}
,
{{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_39},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_40},
{8, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_41},
{8, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_42},
{6, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_43},
{6, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_44},
{37, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_45},
{4, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_46},
{5, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_47},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{5, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_48},
{49, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_49},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_15},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{15, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_50},
{5, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_51},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
151}
,
{{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_52},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_40},
{10, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_53},
{5, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_54},
{2, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_55},
{2, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_55},
{58, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_56},
{31, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_57},
{4, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_58},
{64, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_59},
{2, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_55},
{70, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_60},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_61},
{10, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_62},
{7, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_63},
{11, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_64},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{15, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_50},
{9, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_65},
{11, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_66},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
76}
,
{{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_67},
{1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_5},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_67},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{38, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_9},
{18, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_68},
{8, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_11},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_67},
{50, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_69},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_15},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{4, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_70},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{10, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_32},
{5, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_51},
{47, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_21},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
35}
,
{{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_71},
{1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_5},
{5, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_24},
{5, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_72},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{50, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_73},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{9, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_74},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{50, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_75},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_15},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{15, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_50},
{5, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_51},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
32}
,
{{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_76},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_40},
{10, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_53},
{5, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_54},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_76},
{2, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_55},
{58, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_56},
{31, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_57},
{4, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_58},
{64, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_59},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_76},
{70, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_60},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_61},
{10, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_62},
{7, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_63},
{11, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_64},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{15, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_50},
{9, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_65},
{11, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_66},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
76}
,
{{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_77},
{1, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_5},
{15, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_6},
{15, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_7},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_77},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_8},
{38, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_9},
{10, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_10},
{8, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_11},
{25, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_12},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_77},
{50, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_14},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_15},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_16},
{5, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_17},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{5, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_18},
{14, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_19},
{9, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_20},
{47, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_21},
{28, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_22},
183}
,
{{8, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_78},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_40},
{10, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_53},
{5, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_54},
{8, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_79},
{8, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_79},
{58, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_56},
{31, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_57},
{4, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_58},
{64, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_59},
{8, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_79},
{83, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_80},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_61},
{10, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_62},
{7, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_63},
{11, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_64},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
{15, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_50},
{9, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_65},
{11, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_66},
{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
76}
}
;
extern NIM_CONST tyArray__XdiXqcgUqQLw6YYxQfIxLA OS__platform_520;
extern NIM_CONST tyArray__rHSmP9ci4v5Jt6YycZ9cGtoA CPU__platform_720;
static NIM_CONST tyArray__DLxB9cOndPvLDyky9bY9ccM3g TM__pZmXgBT0YcBrnAO6VUvpNQ_83 = {{2, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_84},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_85},
{4, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_86},
{4, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_87},
{4, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_88},
{3, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_89},
{4, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_90}}
;
extern NIM_CONST tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg unknownLineInfo__lineinfos_338;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pZmXgBT0YcBrnAO6VUvpNQ_128 = {{38, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_129},
((NI)521),
((NI)14)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pZmXgBT0YcBrnAO6VUvpNQ_164 = {{38, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_129},
((NI)614),
((NI)18)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pZmXgBT0YcBrnAO6VUvpNQ_167 = {{38, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_129},
((NI)617),
((NI)18)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pZmXgBT0YcBrnAO6VUvpNQ_193 = {{38, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_129},
((NI)340),
((NI)14)}
;
static NIM_CONST tyTuple__XOVT24GHXwqiEj5GCsEGCA TM__pZmXgBT0YcBrnAO6VUvpNQ_216 = {{0, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_13},
((NI)1)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pZmXgBT0YcBrnAO6VUvpNQ_245 = {{38, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_129},
((NI)1062),
((NI)14)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pZmXgBT0YcBrnAO6VUvpNQ_261 = {{38, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_129},
((NI)791),
((NI)16)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pZmXgBT0YcBrnAO6VUvpNQ_263 = {{38, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_129},
((NI)404),
((NI)12)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pZmXgBT0YcBrnAO6VUvpNQ_267 = {{38, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_129},
((NI)771),
((NI)16)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pZmXgBT0YcBrnAO6VUvpNQ_271 = {{38, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_129},
((NI)773),
((NI)16)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pZmXgBT0YcBrnAO6VUvpNQ_273 = {{38, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_129},
((NI)800),
((NI)18)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pZmXgBT0YcBrnAO6VUvpNQ_280 = {{38, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_129},
((NI)808),
((NI)16)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pZmXgBT0YcBrnAO6VUvpNQ_338 = {{38, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_129},
((NI)409),
((NI)14)}
;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pZmXgBT0YcBrnAO6VUvpNQ_351 = {{38, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_129},
((NI)417),
((NI)14)}
;
extern NIM_CONST tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg gCmdLineInfo__msgs_431;
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__pZmXgBT0YcBrnAO6VUvpNQ_361 = {{38, (NimStrPayload*)&TM__pZmXgBT0YcBrnAO6VUvpNQ_129},
((NI)1029),
((NI)15)}
;
extern NIM_BOOL nimInErrorMode__system_3994;
extern Exception* currException__system_3668;
extern Exception* currException__system_3668;
extern Exception* currException__system_3668;
static NIM_CONST NU32 TM__pZmXgBT0YcBrnAO6VUvpNQ_246[2] = {3701606400, 3326388736};
N_LIB_PRIVATE TNimTypeV2 NTIv2__BcZEqupvBAThTu8RE6k9aJA_ = {.destructor = (void*)eqdestroy___extccomp_3005, .size = sizeof(tyObject_Env_extccompdotnim_callCCompiler___BcZEqupvBAThTu8RE6k9aJA), .align = (NI16) NIM_ALIGNOF(tyObject_Env_extccompdotnim_callCCompiler___BcZEqupvBAThTu8RE6k9aJA), .depth = 1, .display = TM__pZmXgBT0YcBrnAO6VUvpNQ_246, .traceImpl = (void*)NIM_NIL, .flags = 0};
static NIM_CONST NU32 TM__pZmXgBT0YcBrnAO6VUvpNQ_254[2] = {3701606400, 2044586496};
N_LIB_PRIVATE TNimTypeV2 NTIv2__yHnd6tS72p8Z69arkozzppg_ = {.destructor = (void*)eqdestroy___extccomp_3100, .size = sizeof(tyObject_Env_extccompdotnim_execCmdsInParallel___yHnd6tS72p8Z69arkozzppg), .align = (NI16) NIM_ALIGNOF(tyObject_Env_extccompdotnim_execCmdsInParallel___yHnd6tS72p8Z69arkozzppg), .depth = 1, .display = TM__pZmXgBT0YcBrnAO6VUvpNQ_254, .traceImpl = (void*)NIM_NIL, .flags = 0};
extern Exception* currException__system_3668;
static NIM_CONST NU32 TM__pZmXgBT0YcBrnAO6VUvpNQ_355[2] = {3701606400, 1746414592};
N_LIB_PRIVATE TNimTypeV2 NTIv2__VGgYLDtRkrYcGQHO6dF5ag_ = {.destructor = (void*)eqdestroy___extccomp_3262, .size = sizeof(tyObject_Env_extccompdotnim_runJsonBuildInstructions___VGgYLDtRkrYcGQHO6dF5ag), .align = (NI16) NIM_ALIGNOF(tyObject_Env_extccompdotnim_runJsonBuildInstructions___VGgYLDtRkrYcGQHO6dF5ag), .depth = 1, .display = TM__pZmXgBT0YcBrnAO6VUvpNQ_355, .traceImpl = (void*)NIM_NIL, .flags = 0};
static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size) {
void* T1_;
T1_ = (void*)0;
T1_ = memset(a, v, ((size_t) (size)));
}
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void) {
NIM_BOOL* result;
result = (NIM_BOOL*)0;
result = (&nimInErrorMode__system_3994);
return result;
}
static N_INLINE(void, nimZeroMem)(void* p, NI size) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
nimSetMem__systemZmemory_7(p, ((int)0), size);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size) {
void* T1_;
T1_ = (void*)0;
T1_ = memcpy(dest, source, ((size_t) (size)));
}
static N_INLINE(void, copyMem__system_1719)(void* dest, void* source, NI size) {
nimCopyMem(dest, source, size);
}
static N_INLINE(void, appendString)(NimStringV2* dest, NimStringV2 src) {
{
if (!(((NI)0) < src.len)) goto LA3_;
copyMem__system_1719(((void*) ((&(*(*dest).p).data[(*dest).len]))), ((void*) ((&(*src.p).data[((NI)0)]))), ((NI) ((NI)(src.len + ((NI)1)))));
(*dest).len += src.len;
}
LA3_: ;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, toObjFile__extccomp_800)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 filename) {
NimStringV2 result;
NimStringV2 T1_;
result.len = 0; result.p = NIM_NIL;
T1_.len = 0; T1_.p = NIM_NIL;
T1_ = rawNewString(filename.len + CC__extccomp_539[((*conf).cCompiler)- 1].Field1.len + 1);
appendString((&T1_), filename);
appendString((&T1_), TM__pZmXgBT0YcBrnAO6VUvpNQ_3);
appendString((&T1_), CC__extccomp_539[((*conf).cCompiler)- 1].Field1);
result = T1_;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, completeCfilePath__extccomp_795)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 cfile, NIM_BOOL createSubDir) {
NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
result = completeGeneratedFilePath__options_5127(conf, cfile, createSubDir);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, useCpp__extccomp_1006)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 cfile) {
NIM_BOOL result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NIM_BOOL)0;
{
NimStringV2 ext;
NI i;
ext.len = 0; ext.p = NIM_NIL;
i = ((NI)0);
{
while (1) {
ext = TM__pZmXgBT0YcBrnAO6VUvpNQ_83[(i)- 0];
{
NIM_BOOL T6_;
T6_ = (NIM_BOOL)0;
T6_ = nsuEndsWith(cfile, ext);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (!T6_) goto LA7_;
result = NIM_TRUE;
goto BeforeRet_;
}
LA7_: ;
{
if (!(((NI)6) <= ((NI) (i)))) goto LA11_;
goto LA2;
}
LA11_: ;
i += ((NI)1);
}
} LA2: ;
}
result = NIM_FALSE;
}BeforeRet_: ;
return result;
}
static N_INLINE(void, nimPrepareStrMutationV2)(NimStringV2* s) {
{
NIM_BOOL T3_;
T3_ = (NIM_BOOL)0;
T3_ = !(((*s).p == ((NimStrPayload*) NIM_NIL)));
if (!(T3_)) goto LA4_;
T3_ = ((NI)((*(*s).p).cap & ((NI)1073741824)) == ((NI)1073741824));
LA4_: ;
if (!T3_) goto LA5_;
nimPrepareStrMutationImpl__system_2301(s);
}
LA5_: ;
}
static N_INLINE(NIM_CHAR*, X5BX5D___system_7066)(NimStringV2* s, NI i) {
NIM_CHAR* result;
result = (NIM_CHAR*)0;
nimPrepareStrMutationV2((&(*s)));
result = (&(*s).p->data[(NI)((*s).len - i)]);
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, addOpt__extccomp_769)(NimStringV2* dest, NimStringV2 src) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
NIM_BOOL T3_;
NIM_CHAR* T5_;
T3_ = (NIM_BOOL)0;
T3_ = ((*dest).len == ((NI)0));
if (T3_) goto LA4_;
T5_ = (NIM_CHAR*)0;
T5_ = X5BX5D___system_7066(dest, ((NI)1));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T3_ = !(((NU8)((*T5_)) == (NU8)(32)));
LA4_: ;
if (!T3_) goto LA6_;
prepareAdd((&(*dest)), 1);
appendString((&(*dest)), TM__pZmXgBT0YcBrnAO6VUvpNQ_92);
}
LA6_: ;
prepareAdd((&(*dest)), src.len + 0);
appendString((&(*dest)), src);
}BeforeRet_: ;
}
static N_INLINE(void, appendChar)(NimStringV2* dest, NIM_CHAR c) {
(*(*dest).p).data[(*dest).len] = c;
(*(*dest).p).data[(NI)((*dest).len + ((NI)1))] = 0;
(*dest).len += ((NI)1);
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getConfigVar__extccomp_703)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g c, NimStringV2 suffix) {
NimStringV2 result;
NimStringV2 fullSuffix;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
fullSuffix.len = 0; fullSuffix.p = NIM_NIL;
eqcopy___stdZassertions_16((&fullSuffix), suffix);
switch ((*conf).backend) {
case ((tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w)2):
case ((tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w)3):
case ((tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w)4):
{
NimStringV2 colontmpD_;
NimStringV2 T3_;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
T3_.len = 0; T3_.p = NIM_NIL;
colontmpD_ = dollar___options_138((*conf).backend);
T3_ = rawNewString(colontmpD_.len + suffix.len + 1);
appendString((&T3_), TM__pZmXgBT0YcBrnAO6VUvpNQ_96);
appendString((&T3_), colontmpD_);
appendString((&T3_), suffix);
eqsink___stdZassertions_19((&fullSuffix), T3_);
eqdestroy___stdZassertions_13((&colontmpD_));
}
break;
case ((tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w)1):
{
}
break;
case ((tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w)0):
{
result = TM__pZmXgBT0YcBrnAO6VUvpNQ_97;
eqdestroy___stdZassertions_13((&fullSuffix));
goto BeforeRet_;
}
break;
}
{
NIM_BOOL T8_;
NIM_BOOL T9_;
NimStringV2 fullCCname;
NimStringV2 T14_;
T8_ = (NIM_BOOL)0;
T9_ = (NIM_BOOL)0;
T9_ = !(((*conf).target.hostOS == (*conf).target.targetOS));
if (T9_) goto LA10_;
T9_ = !(((*conf).target.hostCPU == (*conf).target.targetCPU));
LA10_: ;
T8_ = T9_;
if (!(T8_)) goto LA11_;
T8_ = !((((*conf).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw)4)))&63U)))!=0));
LA11_: ;
if (!T8_) goto LA12_;
fullCCname.len = 0; fullCCname.p = NIM_NIL;
T14_.len = 0; T14_.p = NIM_NIL;
T14_ = rawNewString(CPU__platform_720[((*conf).target.targetCPU)- 1].Field0.len + OS__platform_520[((*conf).target.targetOS)- 1].Field0.len + CC__extccomp_539[(c)- 1].Field0.len + fullSuffix.len + 2);
appendString((&T14_), CPU__platform_720[((*conf).target.targetCPU)- 1].Field0);
appendChar((&T14_), 46);
appendString((&T14_), OS__platform_520[((*conf).target.targetOS)- 1].Field0);
appendChar((&T14_), 46);
appendString((&T14_), CC__extccomp_539[(c)- 1].Field0);
appendString((&T14_), fullSuffix);
fullCCname = T14_;
result = getConfigVar__options_4923(conf, fullCCname, TM__pZmXgBT0YcBrnAO6VUvpNQ_98);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NimStringV2 colontmpD__2;
NimStringV2 T19_;
NimStringV2 T20_;
if (!(result.len == ((NI)0))) goto LA17_;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
T19_.len = 0; T19_.p = NIM_NIL;
T19_ = rawNewString(CC__extccomp_539[(c)- 1].Field0.len + fullSuffix.len + 0);
appendString((&T19_), CC__extccomp_539[(c)- 1].Field0);
appendString((&T19_), fullSuffix);
colontmpD__2 = T19_;
T20_.len = 0; T20_.p = NIM_NIL;
T20_ = getConfigVar__options_4923(conf, colontmpD__2, TM__pZmXgBT0YcBrnAO6VUvpNQ_99);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqsink___stdZassertions_19((&result), T20_);
eqdestroy___stdZassertions_13((&colontmpD__2));
}
LA17_: ;
eqdestroy___stdZassertions_13((&fullCCname));
}
goto LA6_;
LA12_: ;
{
NimStringV2 colontmpD__3;
NimStringV2 T22_;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
T22_.len = 0; T22_.p = NIM_NIL;
T22_ = rawNewString(CC__extccomp_539[(c)- 1].Field0.len + fullSuffix.len + 0);
appendString((&T22_), CC__extccomp_539[(c)- 1].Field0);
appendString((&T22_), fullSuffix);
colontmpD__3 = T22_;
result = getConfigVar__options_4923(conf, colontmpD__3, TM__pZmXgBT0YcBrnAO6VUvpNQ_100);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqdestroy___stdZassertions_13((&colontmpD__3));
}
LA6_: ;
{
LA1_:;
}
{
eqdestroy___stdZassertions_13((&fullSuffix));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getDebug__extccomp_920)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g c) {
NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
result = getConfigVar__extccomp_703(conf, c, TM__pZmXgBT0YcBrnAO6VUvpNQ_102);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
if (!(result.len == 0)) goto LA3_;
eqcopy___stdZassertions_16((&result), CC__extccomp_539[(c)- 1].Field15);
}
LA3_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getOptSpeed__extccomp_916)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g c) {
NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
result = getConfigVar__extccomp_703(conf, c, TM__pZmXgBT0YcBrnAO6VUvpNQ_107);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
if (!(result.len == 0)) goto LA3_;
eqcopy___stdZassertions_16((&result), CC__extccomp_539[(c)- 1].Field2);
}
LA3_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getOptSize__extccomp_924)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g c) {
NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
result = getConfigVar__extccomp_703(conf, c, TM__pZmXgBT0YcBrnAO6VUvpNQ_112);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
if (!(result.len == 0)) goto LA3_;
eqcopy___stdZassertions_16((&result), CC__extccomp_539[(c)- 1].Field3);
}
LA3_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, cFileSpecificOptions__extccomp_944)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 nimname, NimStringV2 fullNimFile) {
NimStringV2 result;
NimStringV2 key;
NimStringV2 colontmpD_;
NimStringV2 T42_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
key.len = 0; key.p = NIM_NIL;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
eqcopy___stdZassertions_16((&result), (*conf).compileOptions);
{
NimStringV2* option;
NI i;
NI L;
NI T2_;
option = (NimStringV2*)0;
i = ((NI)0);
T2_ = (*conf).compileOptionsCmd.len;
L = T2_;
{
while (1) {
if (!(i < L)) goto LA4 ;
option = (&(*conf).compileOptionsCmd.p->data[i]);
{
NI T7_;
T7_ = (NI)0;
T7_ = nsuFindStr(result, (*option), ((NI)0), ((NI)-1));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (!(T7_ < ((NI)0))) goto LA8_;
addOpt__extccomp_769((&result), (*option));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA8_: ;
i += ((NI)1);
} LA4: ;
}
}
{
NimStringV2 key_2;
NimStringV2 T14_;
if (!(((*conf).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw)6)))&63U)))!=0)) goto LA12_;
key_2.len = 0; key_2.p = NIM_NIL;
T14_.len = 0; T14_.p = NIM_NIL;
T14_ = rawNewString(nimname.len + 6);
appendString((&T14_), nimname);
appendString((&T14_), TM__pZmXgBT0YcBrnAO6VUvpNQ_94);
key_2 = T14_;
{
NIM_BOOL T17_;
NimStringV2 colontmpD__2;
T17_ = (NIM_BOOL)0;
T17_ = existsConfigVar__options_4919(conf, key_2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (!T17_) goto LA18_;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
colontmpD__2 = getConfigVar__options_4923(conf, key_2, TM__pZmXgBT0YcBrnAO6VUvpNQ_95);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
addOpt__extccomp_769((&result), colontmpD__2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___stdZassertions_13((&colontmpD__2));
}
goto LA15_;
LA18_: ;
{
NimStringV2 colontmpD__3;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
colontmpD__3 = getDebug__extccomp_920(conf, (*conf).cCompiler);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
addOpt__extccomp_769((&result), colontmpD__3);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___stdZassertions_13((&colontmpD__3));
}
LA15_: ;
eqdestroy___stdZassertions_13((&key_2));
}
LA12_: ;
{
NimStringV2 key_3;
NimStringV2 T25_;
if (!(((*conf).options &((NU32)1<<((NU)((((tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg)15)))&31U)))!=0)) goto LA23_;
key_3.len = 0; key_3.p = NIM_NIL;
T25_.len = 0; T25_.p = NIM_NIL;
T25_ = rawNewString(nimname.len + 6);
appendString((&T25_), nimname);
appendString((&T25_), TM__pZmXgBT0YcBrnAO6VUvpNQ_104);
key_3 = T25_;
{
NIM_BOOL T28_;
NimStringV2 colontmpD__4;
T28_ = (NIM_BOOL)0;
T28_ = existsConfigVar__options_4919(conf, key_3);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (!T28_) goto LA29_;
colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
colontmpD__4 = getConfigVar__options_4923(conf, key_3, TM__pZmXgBT0YcBrnAO6VUvpNQ_105);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
addOpt__extccomp_769((&result), colontmpD__4);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___stdZassertions_13((&colontmpD__4));
}
goto LA26_;
LA29_: ;
{
NimStringV2 colontmpD__5;
colontmpD__5.len = 0; colontmpD__5.p = NIM_NIL;
colontmpD__5 = getOptSpeed__extccomp_916(conf, (*conf).cCompiler);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
addOpt__extccomp_769((&result), colontmpD__5);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___stdZassertions_13((&colontmpD__5));
}
LA26_: ;
eqdestroy___stdZassertions_13((&key_3));
}
goto LA21_;
LA23_: ;
{
NimStringV2 key_4;
NimStringV2 T35_;
if (!(((*conf).options &((NU32)1<<((NU)((((tyEnum_TOption__PrH9cMsvu5oCG0HODAZ3CAg)16)))&31U)))!=0)) goto LA33_;
key_4.len = 0; key_4.p = NIM_NIL;
T35_.len = 0; T35_.p = NIM_NIL;
T35_ = rawNewString(nimname.len + 5);
appendString((&T35_), nimname);
appendString((&T35_), TM__pZmXgBT0YcBrnAO6VUvpNQ_109);
key_4 = T35_;
{
NIM_BOOL T38_;
NimStringV2 colontmpD__6;
T38_ = (NIM_BOOL)0;
T38_ = existsConfigVar__options_4919(conf, key_4);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (!T38_) goto LA39_;
colontmpD__6.len = 0; colontmpD__6.p = NIM_NIL;
colontmpD__6 = getConfigVar__options_4923(conf, key_4, TM__pZmXgBT0YcBrnAO6VUvpNQ_110);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
addOpt__extccomp_769((&result), colontmpD__6);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___stdZassertions_13((&colontmpD__6));
}
goto LA36_;
LA39_: ;
{
NimStringV2 colontmpD__7;
colontmpD__7.len = 0; colontmpD__7.p = NIM_NIL;
colontmpD__7 = getOptSize__extccomp_924(conf, (*conf).cCompiler);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
addOpt__extccomp_769((&result), colontmpD__7);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___stdZassertions_13((&colontmpD__7));
}
LA36_: ;
eqdestroy___stdZassertions_13((&key_4));
}
goto LA21_;
LA33_: ;
LA21_: ;
T42_.len = 0; T42_.p = NIM_NIL;
T42_ = rawNewString(nimname.len + 7);
appendString((&T42_), nimname);
appendString((&T42_), TM__pZmXgBT0YcBrnAO6VUvpNQ_114);
key = T42_;
{
NIM_BOOL T45_;
NimStringV2 colontmpD__8;
T45_ = (NIM_BOOL)0;
T45_ = existsConfigVar__options_4919(conf, key);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (!T45_) goto LA46_;
colontmpD__8.len = 0; colontmpD__8.p = NIM_NIL;
colontmpD__8 = getConfigVar__options_4923(conf, key, TM__pZmXgBT0YcBrnAO6VUvpNQ_115);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
addOpt__extccomp_769((&result), colontmpD__8);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___stdZassertions_13((&colontmpD__8));
}
LA46_: ;
colontmpD_ = getOrDefault__pureZstrtabs_335((*conf).cfileSpecificOptions, fullNimFile, TM__pZmXgBT0YcBrnAO6VUvpNQ_116);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
addOpt__extccomp_769((&result), colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___stdZassertions_13((&colontmpD_));
eqdestroy___stdZassertions_13((&key));
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getCompilerExe__extccomp_1080)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g compiler, NIM_BOOL isCpp) {
NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
{
NimStringV2 T5_;
if (!(compiler == ((tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g)8))) goto LA3_;
T5_.len = 0; T5_.p = NIM_NIL;
{
if (!isCpp) goto LA8_;
result = getEnv__stdZenvvars_15(TM__pZmXgBT0YcBrnAO6VUvpNQ_121, TM__pZmXgBT0YcBrnAO6VUvpNQ_122);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA6_;
LA8_: ;
{
result = getEnv__stdZenvvars_15(TM__pZmXgBT0YcBrnAO6VUvpNQ_124, TM__pZmXgBT0YcBrnAO6VUvpNQ_125);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA6_: ;
}
goto LA1_;
LA3_: ;
{
NimStringV2 T12_;
T12_.len = 0; T12_.p = NIM_NIL;
{
if (!isCpp) goto LA15_;
eqcopy___stdZassertions_16((&result), CC__extccomp_539[(compiler)- 1].Field5);
}
goto LA13_;
LA15_: ;
{
eqcopy___stdZassertions_16((&result), CC__extccomp_539[(compiler)- 1].Field4);
}
LA13_: ;
}
LA1_: ;
{
NimStringV2 colontmpD_;
NimStringV2 colontmpD__2;
if (!(result.len == ((NI)0))) goto LA20_;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
eqcopy___stdZassertions_16((&colontmpD_), CC__extccomp_539[(compiler)- 1].Field0);
colontmpD__2 = nsuFormatSingleElem(TM__pZmXgBT0YcBrnAO6VUvpNQ_127, colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
liMessage__msgs_1172(conf, unknownLineInfo__lineinfos_338, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD__2, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)1), TM__pZmXgBT0YcBrnAO6VUvpNQ_128, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
{
LA22_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__2));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA20_: ;
}BeforeRet_: ;
return result;
}
static N_INLINE(NIM_BOOL, needsExeExt__extccomp_991)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf) {
NIM_BOOL result;
NIM_BOOL T1_;
NIM_BOOL T2_;
result = (NIM_BOOL)0;
T1_ = (NIM_BOOL)0;
T2_ = (NIM_BOOL)0;
T2_ = (((*conf).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw)10)))&63U)))!=0);
if (!(T2_)) goto LA3_;
T2_ = ((*conf).target.targetOS == ((tyEnum_TSystemOS__iZn2NSk2cFW6r5TYhTTIjg)2));
LA3_: ;
T1_ = T2_;
if (T1_) goto LA4_;
T1_ = ((*conf).target.hostOS == ((tyEnum_TSystemOS__iZn2NSk2cFW6r5TYhTTIjg)2));
LA4_: ;
result = T1_;
return result;
}
static N_INLINE(void, nimAddCharV1)(NimStringV2* s, NIM_CHAR c) {
prepareAdd(s, ((NI)1));
(*(*s).p).data[(*s).len] = c;
(*(*s).p).data[(NI)((*s).len + ((NI)1))] = 0;
(*s).len += ((NI)1);
}
static N_INLINE(NIM_BOOL, noAbsolutePaths__extccomp_928)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf) {
NIM_BOOL result;
tySet_tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw colontmpD_;
tySet_tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw colontmpD__2;
tySet_tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw options;
tySet_tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw T6_;
result = (NIM_BOOL)0;
nimZeroMem((void*)(&colontmpD_), sizeof(tySet_tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw));
nimZeroMem((void*)(&colontmpD__2), sizeof(tySet_tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw));
{
if (!((*conf).cCompiler == ((tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g)6))) goto LA3_;
colontmpD_ = 4096;
options = colontmpD_;
}
goto LA1_;
LA3_: ;
{
colontmpD__2 = 5120;
options = colontmpD__2;
}
LA1_: ;
T6_ = 0;
result = !((((*conf).globalOptions & options) == T6_));
return result;
}
static N_INLINE(NIM_BOOL, isEmpty__options_5393)(NimStringV2 x) {
NIM_BOOL result;
result = (NIM_BOOL)0;
result = (x.len == ((NI)0));
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, envFlags__extccomp_1073)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf) {
NimStringV2 result;
NimStringV2 T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
T1_.len = 0; T1_.p = NIM_NIL;
{
if (!((*conf).backend == ((tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w)2))) goto LA4_;
result = getEnv__stdZenvvars_15(TM__pZmXgBT0YcBrnAO6VUvpNQ_153, TM__pZmXgBT0YcBrnAO6VUvpNQ_154);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA2_;
LA4_: ;
{
result = getEnv__stdZenvvars_15(TM__pZmXgBT0YcBrnAO6VUvpNQ_156, TM__pZmXgBT0YcBrnAO6VUvpNQ_157);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA2_: ;
}BeforeRet_: ;
return result;
}
static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size) {
int result;
result = (int)0;
result = memcmp(a, b, ((size_t) (size)));
return result;
}
static N_INLINE(NIM_BOOL, equalMem__system_1727)(void* a, void* b, NI size) {
NIM_BOOL result;
int T1_;
result = (NIM_BOOL)0;
T1_ = (int)0;
T1_ = nimCmpMem(a, b, size);
result = (T1_ == ((NI32)0));
return result;
}
static N_INLINE(NIM_BOOL, eqStrings)(NimStringV2 a, NimStringV2 b) {
NIM_BOOL result;
NI alen;
NI blen;
{ result = (NIM_BOOL)0;
alen = a.len;
blen = b.len;
{
if (!(alen == blen)) goto LA3_;
{
if (!(alen == ((NI)0))) goto LA7_;
result = NIM_TRUE;
goto BeforeRet_;
}
LA7_: ;
result = equalMem__system_1727(((void*) ((&a.p->data[((NI)0)]))), ((void*) ((&b.p->data[((NI)0)]))), ((NI) (alen)));
goto BeforeRet_;
}
LA3_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, vccplatform__extccomp_972)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf) {
NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
{
NimStringV2 exe;
NimStringV2 colontmpD_;
if (!((*conf).cCompiler == ((tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g)6))) goto LA3_;
exe.len = 0; exe.p = NIM_NIL;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
exe = getConfigVar__extccomp_703(conf, (*conf).cCompiler, TM__pZmXgBT0YcBrnAO6VUvpNQ_177);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
NimStringV2 T9_;
colontmpD_ = nosextractFilename(exe);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (!eqStrings(TM__pZmXgBT0YcBrnAO6VUvpNQ_179, colontmpD_)) goto LA7_;
T9_.len = 0; T9_.p = NIM_NIL;
switch ((*conf).target.targetCPU) {
case ((tyEnum_TSystemCPU__ggCm2K7NXHAwcXG5u9bs1ow)1):
{
result = TM__pZmXgBT0YcBrnAO6VUvpNQ_181;
}
break;
case ((tyEnum_TSystemCPU__ggCm2K7NXHAwcXG5u9bs1ow)14):
{
result = TM__pZmXgBT0YcBrnAO6VUvpNQ_183;
}
break;
case ((tyEnum_TSystemCPU__ggCm2K7NXHAwcXG5u9bs1ow)11):
{
result = TM__pZmXgBT0YcBrnAO6VUvpNQ_185;
}
break;
default:
{
result = TM__pZmXgBT0YcBrnAO6VUvpNQ_186;
}
break;
}
}
LA7_: ;
eqdestroy___stdZassertions_13((&colontmpD_));
eqdestroy___stdZassertions_13((&exe));
}
LA3_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getCompileCFileCmd__extccomp_1116)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ* cfile, NIM_BOOL isMainFile, NIM_BOOL produceOutput) {
NimStringV2 result;
NimStringV2 options;
NimStringV2 colontmpD_;
NimStringV2 exe;
NimStringV2 compilePattern;
NimStringV2 includeCmd;
NimStringV2 colontmpD__2;
NimStringV2 colontmpD__3;
NimStringV2 colontmpD__4;
NimStringV2 cf;
NimStringV2 objfile;
NimStringV2 dfile;
NimStringV2 colontmpD__5;
NimStringV2 cfsh;
NimStringV2 colontmpD__6;
NimStringV2 colontmpD__7;
NimStringV2 colontmpD__8;
NimStringV2 colontmpD__9;
NimStringV2 colontmpD__10;
NimStringV2 colontmpD__11;
NimStringV2 colontmpD__12;
NimStringV2 colontmpD__13;
NimStringV2 colontmpD__14;
NimStringV2 colontmpD__15;
tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g c;
NIM_BOOL isCpp;
NimStringV2 T33_;
tyArray__Re75IspeoxXy2oCZHwcRrA T45_;
NimStringV2 T46_;
NimStringV2 T53_;
tyArray__rmMMhDIqORJzUU5zqeitSQ T75_;
tyArray__68WB4OcBspSFyW4LY9cOceA T105_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
options.len = 0; options.p = NIM_NIL;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
exe.len = 0; exe.p = NIM_NIL;
compilePattern.len = 0; compilePattern.p = NIM_NIL;
includeCmd.len = 0; includeCmd.p = NIM_NIL;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
cf.len = 0; cf.p = NIM_NIL;
objfile.len = 0; objfile.p = NIM_NIL;
dfile.len = 0; dfile.p = NIM_NIL;
colontmpD__5.len = 0; colontmpD__5.p = NIM_NIL;
cfsh.len = 0; cfsh.p = NIM_NIL;
colontmpD__6.len = 0; colontmpD__6.p = NIM_NIL;
colontmpD__7.len = 0; colontmpD__7.p = NIM_NIL;
colontmpD__8.len = 0; colontmpD__8.p = NIM_NIL;
colontmpD__9.len = 0; colontmpD__9.p = NIM_NIL;
colontmpD__10.len = 0; colontmpD__10.p = NIM_NIL;
colontmpD__11.len = 0; colontmpD__11.p = NIM_NIL;
colontmpD__12.len = 0; colontmpD__12.p = NIM_NIL;
colontmpD__13.len = 0; colontmpD__13.p = NIM_NIL;
colontmpD__14.len = 0; colontmpD__14.p = NIM_NIL;
colontmpD__15.len = 0; colontmpD__15.p = NIM_NIL;
c = (*conf).cCompiler;
isCpp = useCpp__extccomp_1006(conf, (*cfile).cname);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
colontmpD_ = noschangeFileExt((*cfile).cname, TM__pZmXgBT0YcBrnAO6VUvpNQ_117);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
options = cFileSpecificOptions__extccomp_944(conf, (*cfile).nimname, colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NimStringV2 T6_;
if (!isCpp) goto LA4_;
T6_.len = 0; T6_.p = NIM_NIL;
T6_ = rawNewString(CC__extccomp_539[(c)- 1].Field20.len + options.len + 1);
appendString((&T6_), CC__extccomp_539[(c)- 1].Field20);
appendChar((&T6_), 32);
appendString((&T6_), options);
eqsink___stdZassertions_19((&options), T6_);
(*conf).globalOptions |= ((NU64)1)<<(((((tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw)36))) & 63);
}
LA4_: ;
exe = getConfigVar__extccomp_703(conf, c, TM__pZmXgBT0YcBrnAO6VUvpNQ_119);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NimStringV2 T11_;
if (!(exe.len == ((NI)0))) goto LA9_;
T11_.len = 0; T11_.p = NIM_NIL;
T11_ = getCompilerExe__extccomp_1080(conf, c, isCpp);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqsink___stdZassertions_19((&exe), T11_);
}
LA9_: ;
{
NIM_BOOL T14_;
NimStringV2 T17_;
T14_ = (NIM_BOOL)0;
T14_ = needsExeExt__extccomp_991(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!T14_) goto LA15_;
T17_.len = 0; T17_.p = NIM_NIL;
T17_ = nosaddFileExt(exe, TM__pZmXgBT0YcBrnAO6VUvpNQ_131);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqsink___stdZassertions_19((&exe), T17_);
}
LA15_: ;
{
NIM_BOOL T20_;
NIM_BOOL T21_;
NIM_BOOL T23_;
NimStringV2 colontmpD__16;
NimStringV2 T28_;
T20_ = (NIM_BOOL)0;
T21_ = (NIM_BOOL)0;
T21_ = (((*conf).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw)7)))&63U)))!=0);
if (T21_) goto LA22_;
T23_ = (NIM_BOOL)0;
T23_ = hcrOn__options_588(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!(T23_)) goto LA24_;
T23_ = !(isMainFile);
LA24_: ;
T21_ = T23_;
LA22_: ;
T20_ = T21_;
if (!(T20_)) goto LA25_;
T20_ = ((OS__platform_520[((*conf).target.targetOS)- 1].Field12 &((NU8)1<<((NU)((((tyEnum_TInfoOSProp__A9bXXG2zpqn62FMnhk2mfYg)0)))&7U)))!=0);
LA25_: ;
if (!T20_) goto LA26_;
colontmpD__16.len = 0; colontmpD__16.p = NIM_NIL;
T28_.len = 0; T28_.p = NIM_NIL;
T28_ = rawNewString(CC__extccomp_539[(c)- 1].Field16.len + 1);
appendChar((&T28_), 32);
appendString((&T28_), CC__extccomp_539[(c)- 1].Field16);
colontmpD__16 = T28_;
prepareAdd((&options), colontmpD__16.len + 0);
appendString((&options), colontmpD__16);
eqdestroy___stdZassertions_13((&colontmpD__16));
}
LA26_: ;
{
if (!!(((*cfile).customArgs.len == 0))) goto LA31_;
nimAddCharV1((&options), 32);
prepareAdd((&options), (*cfile).customArgs.len + 0);
appendString((&options), (*cfile).customArgs);
}
LA31_: ;
T33_.len = 0; T33_.p = NIM_NIL;
colontmpD__2 = nospquoteShell((*conf).libpath);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T33_ = rawNewString(CC__extccomp_539[(c)- 1].Field12.len + colontmpD__2.len + 0);
appendString((&T33_), CC__extccomp_539[(c)- 1].Field12);
appendString((&T33_), colontmpD__2);
includeCmd = T33_;
{
NIM_BOOL T36_;
T36_ = (NIM_BOOL)0;
T36_ = noAbsolutePaths__extccomp_928(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!!(T36_)) goto LA37_;
{
NimStringV2* includeDir;
NI i;
NI L;
NI T40_;
includeDir = (NimStringV2*)0;
i = ((NI)0);
T40_ = (*conf).cIncludes.len;
L = T40_;
{
while (1) {
NimStringV2 colontmpD__17;
NimStringV2 colontmpD__18;
tyArray__Re75IspeoxXy2oCZHwcRrA T43_;
if (!(i < L)) goto LA42 ;
colontmpD__17.len = 0; colontmpD__17.p = NIM_NIL;
colontmpD__18.len = 0; colontmpD__18.p = NIM_NIL;
includeDir = (&(*conf).cIncludes.p->data[i]);
T43_[0] = CC__extccomp_539[(c)- 1].Field12;
colontmpD__17 = nospquoteShell((*includeDir));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T43_[1] = colontmpD__17;
colontmpD__18 = nsuJoinSep(T43_, 2, TM__pZmXgBT0YcBrnAO6VUvpNQ_132);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
prepareAdd((&includeCmd), colontmpD__18.len + 0);
appendString((&includeCmd), colontmpD__18);
i += ((NI)1);
eqdestroy___stdZassertions_13((&colontmpD__18));
eqdestroy___stdZassertions_13((&colontmpD__17));
} LA42: ;
}
}
compilePattern = nosjoinPath((*conf).cCompilerPath, exe);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
goto LA34_;
LA37_: ;
{
compilePattern = getCompilerExe__extccomp_1080(conf, c, isCpp);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA34_: ;
T45_[0] = CC__extccomp_539[(c)- 1].Field12;
colontmpD__3 = nospquoteShell((*conf).projectPath);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T45_[1] = colontmpD__3;
colontmpD__4 = nsuJoinSep(T45_, 2, TM__pZmXgBT0YcBrnAO6VUvpNQ_133);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
prepareAdd((&includeCmd), colontmpD__4.len + 0);
appendString((&includeCmd), colontmpD__4);
T46_.len = 0; T46_.p = NIM_NIL;
{
NIM_BOOL T49_;
T49_ = (NIM_BOOL)0;
T49_ = noAbsolutePaths__extccomp_928(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!T49_) goto LA50_;
cf = nosextractFilename((*cfile).cname);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
goto LA47_;
LA50_: ;
{
eqcopy___stdZassertions_16((&cf), (*cfile).cname);
}
LA47_: ;
T53_.len = 0; T53_.p = NIM_NIL;
{
NIM_BOOL T56_;
NimStringV2 T59_;
T56_ = (NIM_BOOL)0;
T56_ = isEmpty__options_5393((*cfile).obj);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!T56_) goto LA57_;
T59_.len = 0; T59_.p = NIM_NIL;
{
NIM_BOOL T62_;
T62_ = (NIM_BOOL)0;
T62_ = !((((*cfile).flags &((NU8)1<<((NU)((((tyEnum_CfileFlag__quKxtOiNkuU9aFwgmRK07Og)1)))&7U)))!=0));
if (T62_) goto LA63_;
T62_ = noAbsolutePaths__extccomp_928(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
LA63_: ;
if (!T62_) goto LA64_;
objfile = toObjFile__extccomp_800(conf, cf);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
goto LA60_;
LA64_: ;
{
NimStringV2 colontmpD__19;
colontmpD__19.len = 0; colontmpD__19.p = NIM_NIL;
colontmpD__19 = toObjFile__extccomp_800(conf, cf);
if (NIM_UNLIKELY(*nimErr_)) goto LA67_;
objfile = completeCfilePath__extccomp_795(conf, colontmpD__19, NIM_TRUE);
if (NIM_UNLIKELY(*nimErr_)) goto LA67_;
{
LA67_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__19));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA60_: ;
}
goto LA54_;
LA57_: ;
{
NIM_BOOL T71_;
T71_ = (NIM_BOOL)0;
T71_ = noAbsolutePaths__extccomp_928(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!T71_) goto LA72_;
objfile = nosextractFilename((*cfile).obj);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
goto LA54_;
LA72_: ;
{
NimStringV2 colontmpD__20;
colontmpD__20.len = 0; colontmpD__20.p = NIM_NIL;
colontmpD__20.len = 0; colontmpD__20.p = NIM_NIL;
eqcopy___stdZassertions_16((&colontmpD__20), (*cfile).obj);
objfile = colontmpD__20;
}
LA54_: ;
colontmpD__5 = noschangeFileExt(objfile, TM__pZmXgBT0YcBrnAO6VUvpNQ_135);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
dfile = nospquoteShell(colontmpD__5);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
cfsh = nospquoteShell(cf);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T75_[0] = TM__pZmXgBT0YcBrnAO6VUvpNQ_137;
T75_[1] = dfile;
T75_[2] = TM__pZmXgBT0YcBrnAO6VUvpNQ_139;
T75_[3] = cfsh;
T75_[4] = TM__pZmXgBT0YcBrnAO6VUvpNQ_141;
colontmpD__6 = nospquoteShell(objfile);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T75_[5] = colontmpD__6;
T75_[6] = TM__pZmXgBT0YcBrnAO6VUvpNQ_143;
T75_[7] = options;
T75_[8] = TM__pZmXgBT0YcBrnAO6VUvpNQ_145;
T75_[9] = includeCmd;
T75_[10] = TM__pZmXgBT0YcBrnAO6VUvpNQ_147;
colontmpD__7 = getPrefixDir__options_4965(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T75_[11] = colontmpD__7;
T75_[12] = TM__pZmXgBT0YcBrnAO6VUvpNQ_149;
T75_[13] = (*conf).libpath;
T75_[14] = TM__pZmXgBT0YcBrnAO6VUvpNQ_151;
colontmpD__8 = envFlags__extccomp_1073(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T75_[15] = colontmpD__8;
colontmpD__9 = nsuFormatOpenArray(compilePattern, T75_, 16);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
result = nospquoteShell(colontmpD__9);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
if (!(((*conf).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw)46)))&63U)))!=0)) goto LA78_;
{
NimStringV2 asmfile;
NimStringV2 colontmpD__21;
NimStringV2 colontmpD__22;
tyArray__Re75IspeoxXy2oCZHwcRrA T85_;
if (!(((NI)0) < CC__extccomp_539[((*conf).cCompiler)- 1].Field19.len)) goto LA82_;
asmfile.len = 0; asmfile.p = NIM_NIL;
colontmpD__21.len = 0; colontmpD__21.p = NIM_NIL;
colontmpD__22.len = 0; colontmpD__22.p = NIM_NIL;
colontmpD__21 = noschangeFileExt(objfile, TM__pZmXgBT0YcBrnAO6VUvpNQ_159);
if (NIM_UNLIKELY(*nimErr_)) goto LA84_;
asmfile = nospquoteShell(colontmpD__21);
if (NIM_UNLIKELY(*nimErr_)) goto LA84_;
T85_[0] = TM__pZmXgBT0YcBrnAO6VUvpNQ_161;
T85_[1] = asmfile;
colontmpD__22 = nsuFormatOpenArray(CC__extccomp_539[((*conf).cCompiler)- 1].Field19, T85_, 2);
if (NIM_UNLIKELY(*nimErr_)) goto LA84_;
addOpt__extccomp_769((&result), colontmpD__22);
if (NIM_UNLIKELY(*nimErr_)) goto LA84_;
{
NimStringV2 colontmpD__23;
NimStringV2 T91_;
if (!produceOutput) goto LA88_;
colontmpD__23.len = 0; colontmpD__23.p = NIM_NIL;
T91_.len = 0; T91_.p = NIM_NIL;
T91_ = rawNewString(asmfile.len + 25);
appendString((&T91_), TM__pZmXgBT0YcBrnAO6VUvpNQ_163);
appendString((&T91_), asmfile);
colontmpD__23 = T91_;
liMessage__msgs_1172(conf, unknownLineInfo__lineinfos_338, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)110), colontmpD__23, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)1), TM__pZmXgBT0YcBrnAO6VUvpNQ_164, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA90_;
{
LA90_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__23));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA84_;
}
LA88_: ;
{
LA84_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__22));
eqdestroy___stdZassertions_13((&colontmpD__21));
eqdestroy___stdZassertions_13((&asmfile));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
goto LA80_;
LA82_: ;
{
{
NimStringV2 colontmpD__24;
NimStringV2 T102_;
if (!produceOutput) goto LA99_;
colontmpD__24.len = 0; colontmpD__24.p = NIM_NIL;
T102_.len = 0; T102_.p = NIM_NIL;
T102_ = rawNewString(CC__extccomp_539[((*conf).cCompiler)- 1].Field0.len + 64);
appendString((&T102_), TM__pZmXgBT0YcBrnAO6VUvpNQ_166);
appendString((&T102_), CC__extccomp_539[((*conf).cCompiler)- 1].Field0);
colontmpD__24 = T102_;
liMessage__msgs_1172(conf, unknownLineInfo__lineinfos_338, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)110), colontmpD__24, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)1), TM__pZmXgBT0YcBrnAO6VUvpNQ_167, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA101_;
{
LA101_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__24));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA99_: ;
}
LA80_: ;
}
LA78_: ;
nimAddCharV1((&result), 32);
T105_[0] = TM__pZmXgBT0YcBrnAO6VUvpNQ_168;
T105_[1] = dfile;
T105_[2] = TM__pZmXgBT0YcBrnAO6VUvpNQ_169;
T105_[3] = cfsh;
T105_[4] = TM__pZmXgBT0YcBrnAO6VUvpNQ_170;
colontmpD__10 = nospquoteShell(objfile);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T105_[5] = colontmpD__10;
T105_[6] = TM__pZmXgBT0YcBrnAO6VUvpNQ_171;
T105_[7] = options;
T105_[8] = TM__pZmXgBT0YcBrnAO6VUvpNQ_172;
T105_[9] = includeCmd;
T105_[10] = TM__pZmXgBT0YcBrnAO6VUvpNQ_173;
colontmpD__11 = getPrefixDir__options_4965(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
colontmpD__12 = nospquoteShell(colontmpD__11);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T105_[11] = colontmpD__12;
T105_[12] = TM__pZmXgBT0YcBrnAO6VUvpNQ_174;
colontmpD__13 = nospquoteShell((*conf).libpath);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T105_[13] = colontmpD__13;
T105_[14] = TM__pZmXgBT0YcBrnAO6VUvpNQ_176;
colontmpD__14 = vccplatform__extccomp_972(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T105_[15] = colontmpD__14;
T105_[16] = TM__pZmXgBT0YcBrnAO6VUvpNQ_187;
colontmpD__15 = envFlags__extccomp_1073(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T105_[17] = colontmpD__15;
nsuAddf((&result), CC__extccomp_539[(c)- 1].Field6, T105_, 18);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
LA1_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__15));
eqdestroy___stdZassertions_13((&colontmpD__14));
eqdestroy___stdZassertions_13((&colontmpD__13));
eqdestroy___stdZassertions_13((&colontmpD__12));
eqdestroy___stdZassertions_13((&colontmpD__11));
eqdestroy___stdZassertions_13((&colontmpD__10));
eqdestroy___stdZassertions_13((&colontmpD__9));
eqdestroy___stdZassertions_13((&colontmpD__8));
eqdestroy___stdZassertions_13((&colontmpD__7));
eqdestroy___stdZassertions_13((&colontmpD__6));
eqdestroy___stdZassertions_13((&cfsh));
eqdestroy___stdZassertions_13((&colontmpD__5));
eqdestroy___stdZassertions_13((&dfile));
eqdestroy___stdZassertions_13((&objfile));
eqdestroy___stdZassertions_13((&cf));
eqdestroy___stdZassertions_13((&colontmpD__4));
eqdestroy___stdZassertions_13((&colontmpD__3));
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___stdZassertions_13((&includeCmd));
eqdestroy___stdZassertions_13((&compilePattern));
eqdestroy___stdZassertions_13((&exe));
eqdestroy___stdZassertions_13((&colontmpD_));
eqdestroy___stdZassertions_13((&options));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, footprint__extccomp_1185)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ* cfile, tyArray__YtcvxHNKV4YiecPE9ap1mcA Result) {
NimStringV2 colontmpD_;
NimStringV2 colontmpD__2;
NimStringV2 colontmpD__3;
NimStringV2 T2_;
tyArray__YtcvxHNKV4YiecPE9ap1mcA T3_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
nimZeroMem((void*)Result, sizeof(tyArray__YtcvxHNKV4YiecPE9ap1mcA));
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
T2_.len = 0; T2_.p = NIM_NIL;
nimZeroMem((void*)T3_, sizeof(tyArray__YtcvxHNKV4YiecPE9ap1mcA));
secureHashFile__stdZsha49_896((*cfile).cname, T3_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
colontmpD_ = dollar___stdZsha49_904(T3_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
colontmpD__2 = getCompileCFileCmd__extccomp_1116(conf, cfile, NIM_FALSE, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T2_ = rawNewString(colontmpD_.len + OS__platform_520[((*conf).target.targetOS)- 1].Field0.len + CPU__platform_720[((*conf).target.targetCPU)- 1].Field0.len + CC__extccomp_539[((*conf).cCompiler)- 1].Field0.len + colontmpD__2.len + 0);
appendString((&T2_), colontmpD_);
appendString((&T2_), OS__platform_520[((*conf).target.targetOS)- 1].Field0);
appendString((&T2_), CPU__platform_720[((*conf).target.targetCPU)- 1].Field0);
appendString((&T2_), CC__extccomp_539[((*conf).cCompiler)- 1].Field0);
appendString((&T2_), colontmpD__2);
colontmpD__3 = T2_;
secureHash__stdZsha49_856(((colontmpD__3).p) ? (colontmpD__3.p->data) : NIM_NIL, colontmpD__3.len, Result);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
LA1_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__3));
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___stdZassertions_13((&colontmpD_));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
static N_INLINE(void, writeLine__msgs_459)(FILE* f, NimStringV2* x, NI xLen_0) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
NimStringV2* i;
NI i_2;
i = (NimStringV2*)0;
i_2 = ((NI)0);
{
while (1) {
if (!(i_2 < xLen_0)) goto LA3 ;
i = (&x[i_2]);
write__stdZsyncio_230(f, (*i));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
i_2 += ((NI)1);
} LA3: ;
}
}
write__stdZsyncio_230(f, TM__pZmXgBT0YcBrnAO6VUvpNQ_189);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, externalFileChanged__extccomp_1189)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ* cfile) {
NIM_BOOL result;
NimStringV2 hashFile;
NimStringV2 colontmpD_;
tyArray__YtcvxHNKV4YiecPE9ap1mcA currentHash;
FILE* f;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NIM_BOOL)0;
hashFile.len = 0; hashFile.p = NIM_NIL;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
{
if (!((*conf).backend == ((tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w)3))) goto LA4_;
result = NIM_FALSE;
eqdestroy___stdZassertions_13((&colontmpD_));
eqdestroy___stdZassertions_13((&hashFile));
goto BeforeRet_;
}
LA4_: ;
colontmpD_ = mangleModuleName__modulepaths_32(conf, (*cfile).cname);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
hashFile = toGeneratedFile__options_5122(conf, colontmpD_, TM__pZmXgBT0YcBrnAO6VUvpNQ_82);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
nimZeroMem((void*)currentHash, sizeof(tyArray__YtcvxHNKV4YiecPE9ap1mcA));
footprint__extccomp_1185(conf, cfile, currentHash);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
f = (FILE*)0;
{
NIM_BOOL T8_;
NimStringV2 colontmpD__2;
tyArray__YtcvxHNKV4YiecPE9ap1mcA oldHash;
NIM_BOOL T12_;
T8_ = (NIM_BOOL)0;
T8_ = open__stdZsyncio_403(&f, hashFile, ((tyEnum_FileMode__4sJyy9aOSN8X63XdWXl5iDg)0), ((NI)-1));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!T8_) goto LA9_;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
nimZeroMem((void*)oldHash, sizeof(tyArray__YtcvxHNKV4YiecPE9ap1mcA));
colontmpD__2 = readLine__stdZsyncio_299(f);
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
parseSecureHash__stdZsha49_938(colontmpD__2, oldHash);
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
close__stdZsyncio_242(f);
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
T12_ = (NIM_BOOL)0;
T12_ = eqeq___stdZsha49_946(oldHash, currentHash);
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
result = !(T12_);
{
LA11_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__2));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
goto LA6_;
LA9_: ;
{
result = NIM_TRUE;
}
LA6_: ;
{
if (!result) goto LA18_;
{
NIM_BOOL T22_;
NimStringV2 colontmpD__3;
tyArray__nHXaesL0DJZHyVS07ARPRA T26_;
T22_ = (NIM_BOOL)0;
T22_ = open__stdZsyncio_403(&f, hashFile, ((tyEnum_FileMode__4sJyy9aOSN8X63XdWXl5iDg)1), ((NI)-1));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!T22_) goto LA23_;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
colontmpD__3 = dollar___stdZsha49_904(currentHash);
if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
T26_[0] = colontmpD__3;
writeLine__msgs_459(f, T26_, 1);
if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
close__stdZsyncio_242(f);
if (NIM_UNLIKELY(*nimErr_)) goto LA25_;
{
LA25_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__3));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA23_: ;
}
LA18_: ;
{
LA1_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD_));
eqdestroy___stdZassertions_13((&hashFile));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, addExternalFileToCompile__extccomp_1205)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ* c) {
tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ colontmpD_;
NIM_BOOL extFileChanged;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
nimZeroMem((void*)(&colontmpD_), sizeof(tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ));
extFileChanged = externalFileChanged__extccomp_1189(conf, (&(*c)));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
NIM_BOOL T3_;
NIM_BOOL T4_;
T3_ = (NIM_BOOL)0;
T4_ = (NIM_BOOL)0;
T4_ = !((((*conf).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw)1)))&63U)))!=0));
if (!(T4_)) goto LA5_;
T4_ = nosfileExists((*c).obj);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
LA5_: ;
T3_ = T4_;
if (!(T3_)) goto LA6_;
T3_ = !(extFileChanged);
LA6_: ;
if (!T3_) goto LA7_;
(*c).flags |= ((NU8)1)<<(((((tyEnum_CfileFlag__quKxtOiNkuU9aFwgmRK07Og)0))) & 7);
}
goto LA1_;
LA7_: ;
{
NIM_BOOL T10_;
T10_ = (NIM_BOOL)0;
T10_ = nostryRemoveFile((*c).obj);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
(void)(T10_);
}
LA1_: ;
nimZeroMem((void*)(&colontmpD_), sizeof(tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ));
eqcopy___options_3037((&colontmpD_), (&(*c)));
add__extccomp_807((&(*conf).toCompile), (&colontmpD_));
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, addExternalFileToCompile__extccomp_1221)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 filename) {
tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ c;
NimStringV2 colontmpD_;
tyTuple__7q7q3E6Oj24ZNVJb9aonhAg colontmpD__2;
NimStringV2 colontmpD__3;
NimStringV2 colontmpD__4;
tySet_tyEnum_CfileFlag__quKxtOiNkuU9aFwgmRK07Og colontmpD__5;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
nimZeroMem((void*)(&c), sizeof(tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ));
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
nimZeroMem((void*)(&colontmpD__2), sizeof(tyTuple__7q7q3E6Oj24ZNVJb9aonhAg));
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
nimZeroMem((void*)(&colontmpD__5), sizeof(tySet_tyEnum_CfileFlag__quKxtOiNkuU9aFwgmRK07Og));
nimZeroMem((void*)(&c), sizeof(tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ));
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD__2 = splitFile__pathutils_31(filename);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqcopy___stdZassertions_16((&colontmpD_), colontmpD__2.Field1);
c.nimname = colontmpD_;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
eqcopy___stdZassertions_16((&colontmpD__3), filename);
c.cname = colontmpD__3;
colontmpD__4 = completeCfilePath__extccomp_795(conf, filename, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
c.obj = toObjFile__extccomp_800(conf, colontmpD__4);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
colontmpD__5 = 2;
c.flags = colontmpD__5;
addExternalFileToCompile__extccomp_1205(conf, (&c));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
LA1_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__4));
eqdestroy___pathutils_55((&colontmpD__2));
eqdestroy___options_3034((&c));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, addExternalFileToLink__extccomp_843)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 filename) {
NimStringV2 colontmpD_;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
eqcopy___stdZassertions_16((&colontmpD_), filename);
insert__extccomp_846((&(*conf).externalToLink), colontmpD_, ((NI)0));
}
static N_INLINE(NIM_BOOL, contains__extccomp_688)(tyObject_HSlice__IcpwahpirTotR7457AVF4Q s, tyEnum_TSystemOS__iZn2NSk2cFW6r5TYhTTIjg value) {
NIM_BOOL result;
NIM_BOOL T1_;
result = (NIM_BOOL)0;
T1_ = (NIM_BOOL)0;
T1_ = (s.a <= value);
if (!(T1_)) goto LA2_;
T1_ = (value <= s.b);
LA2_: ;
result = T1_;
return result;
}
static N_INLINE(tyObject_HSlice__IcpwahpirTotR7457AVF4Q, dotdot___extccomp_664)(tyEnum_TSystemOS__iZn2NSk2cFW6r5TYhTTIjg a, tyEnum_TSystemOS__iZn2NSk2cFW6r5TYhTTIjg b) {
tyObject_HSlice__IcpwahpirTotR7457AVF4Q result;
nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__IcpwahpirTotR7457AVF4Q));
nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__IcpwahpirTotR7457AVF4Q));
result.a = a;
result.b = b;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, isVSCompatible__extccomp_648)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf) {
NIM_BOOL result;
NIM_BOOL T1_;
NIM_BOOL T2_;
NIM_BOOL T5_;
tyObject_HSlice__IcpwahpirTotR7457AVF4Q T7_;
{ result = (NIM_BOOL)0;
T1_ = (NIM_BOOL)0;
T2_ = (NIM_BOOL)0;
T2_ = ((*conf).cCompiler == ((tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g)6));
if (T2_) goto LA3_;
T2_ = ((*conf).cCompiler == ((tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g)11));
LA3_: ;
T1_ = T2_;
if (T1_) goto LA4_;
T5_ = (NIM_BOOL)0;
T5_ = ((*conf).cCompiler == ((tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g)9));
if (!(T5_)) goto LA6_;
T7_ = dotdot___extccomp_664(((tyEnum_TSystemOS__iZn2NSk2cFW6r5TYhTTIjg)1), ((tyEnum_TSystemOS__iZn2NSk2cFW6r5TYhTTIjg)2));
T5_ = contains__extccomp_688(T7_, (*conf).target.hostOS);
LA6_: ;
T1_ = T5_;
LA4_: ;
result = T1_;
goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, addCompileOptionCmd__extccomp_781)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 option) {
NimStringV2 colontmpD_;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
eqcopy___stdZassertions_16((&colontmpD_), option);
add__stdZenumutils_69((&(*conf).compileOptionsCmd), colontmpD_);
}
N_LIB_PRIVATE N_NIMCALL(void, addLinkOptionCmd__extccomp_778)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 option) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
addOpt__extccomp_769((&(*conf).linkOptionsCmd), option);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g, nameToCC__extccomp_587)(NimStringV2 name) {
tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g)0;
{
tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g i;
NI res;
i = (tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g)0;
res = ((NI)1);
{
while (1) {
if (!(res <= ((NI)11))) goto LA3 ;
i = ((tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g) (res));
{
NI T6_;
T6_ = (NI)0;
T6_ = nsuCmpIgnoreStyle(name, CC__extccomp_539[(i)- 1].Field0);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (!(T6_ == ((NI)0))) goto LA7_;
result = i;
goto BeforeRet_;
}
LA7_: ;
res += ((NI)1);
} LA3: ;
}
}
result = ((tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g)0);
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, listCCnames__extccomp_623)(void) {
NimStringV2 result;
result.len = 0; result.p = NIM_NIL;
result = TM__pZmXgBT0YcBrnAO6VUvpNQ_190;
{
tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g i;
NI res;
i = (tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g)0;
res = ((NI)1);
{
while (1) {
if (!(res <= ((NI)11))) goto LA3 ;
i = ((tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g) (res));
{
if (!(((tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g)1) < i)) goto LA6_;
prepareAdd((&result), 2);
appendString((&result), TM__pZmXgBT0YcBrnAO6VUvpNQ_192);
}
LA6_: ;
prepareAdd((&result), CC__extccomp_539[(i)- 1].Field0.len + 0);
appendString((&result), CC__extccomp_539[(i)- 1].Field0);
res += ((NI)1);
} LA3: ;
}
}
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, setCC__extccomp_725)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 ccname, tyObject_TLineInfo__7ZAGqjaN6WqWPlHP9cRagRg info) {
tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g T1_;
NimStringV2 T10_;
NimStringV2 T11_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
T1_ = (tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g)0;
T1_ = nameToCC__extccomp_587(ccname);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
(*conf).cCompiler = T1_;
{
NimStringV2 colontmpD_;
NimStringV2 colontmpD__2;
tyArray__Re75IspeoxXy2oCZHwcRrA T7_;
if (!((*conf).cCompiler == ((tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g)0))) goto LA4_;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
T7_[0] = ccname;
colontmpD_ = listCCnames__extccomp_623();
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
T7_[1] = colontmpD_;
colontmpD__2 = percent___extccomp_733(T7_, 2);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
liMessage__msgs_1172(conf, info, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD__2, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)0), TM__pZmXgBT0YcBrnAO6VUvpNQ_193, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
{
LA6_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___stdZassertions_13((&colontmpD_));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA4_: ;
T10_.len = 0; T10_.p = NIM_NIL;
T10_ = getConfigVar__extccomp_703(conf, (*conf).cCompiler, TM__pZmXgBT0YcBrnAO6VUvpNQ_195);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqsink___stdZassertions_19((&(*conf).compileOptions), T10_);
eqsink___stdZassertions_19((&(*conf).linkOptions), TM__pZmXgBT0YcBrnAO6VUvpNQ_196);
T11_.len = 0; T11_.p = NIM_NIL;
T11_ = getConfigVar__extccomp_703(conf, (*conf).cCompiler, TM__pZmXgBT0YcBrnAO6VUvpNQ_198);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqsink___stdZassertions_19((&(*conf).cCompilerPath), T11_);
{
tyTuple__O3wqxUcQkE83qFgUCv8M2g c;
tyEnum_TSystemCC__YPXqlEXKlMlX7CDeSTIGVw i;
nimZeroMem((void*)(&c), sizeof(tyTuple__O3wqxUcQkE83qFgUCv8M2g));
i = ((tyEnum_TSystemCC__YPXqlEXKlMlX7CDeSTIGVw)1);
{
while (1) {
c = CC__extccomp_539[(i)- 1];
undefSymbol__condsyms_8((*conf).symbols, c.Field0);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
if (!(((tyEnum_TSystemCC__YPXqlEXKlMlX7CDeSTIGVw)11) <= i)) goto LA17_;
goto LA13;
}
LA17_: ;
i += ((NI)1);
}
} LA13: ;
}
defineSymbol__condsyms_4((*conf).symbols, CC__extccomp_539[((*conf).cCompiler)- 1].Field0, TM__pZmXgBT0YcBrnAO6VUvpNQ_200);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, addLinkOption__extccomp_772)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 option) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
addOpt__extccomp_769((&(*conf).linkOptions), option);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, addCompileOption__extccomp_775)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 option) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
NI T3_;
T3_ = (NI)0;
T3_ = nsuFindStr((*conf).compileOptions, option, ((NI)0), ((NI)-1));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (!(T3_ < ((NI)0))) goto LA4_;
addOpt__extccomp_769((&(*conf).compileOptions), option);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA4_: ;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, addLocalCompileOption__extccomp_827)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 option, NimStringV2 nimfile) {
NimStringV2 key;
NimStringV2 colontmpD_;
NimStringV2 value;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
key.len = 0; key.p = NIM_NIL;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
value.len = 0; value.p = NIM_NIL;
colontmpD_ = mangleModuleName__modulepaths_32(conf, nimfile);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
key = completeCfilePath__extccomp_795(conf, colontmpD_, NIM_TRUE);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
value = getOrDefault__pureZstrtabs_335((*conf).cfileSpecificOptions, key, TM__pZmXgBT0YcBrnAO6VUvpNQ_201);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NI T4_;
T4_ = (NI)0;
T4_ = nsuFindStr(value, option, ((NI)0), ((NI)-1));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!(T4_ < ((NI)0))) goto LA5_;
addOpt__extccomp_769((&value), option);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
nstPut((*conf).cfileSpecificOptions, key, value);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA5_: ;
{
LA1_:;
}
{
eqdestroy___stdZassertions_13((&value));
eqdestroy___stdZassertions_13((&colontmpD_));
eqdestroy___stdZassertions_13((&key));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, initVars__extccomp_788)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf) {
NimStringV2 colontmpD_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
{
tyTuple__O3wqxUcQkE83qFgUCv8M2g c;
tyEnum_TSystemCC__YPXqlEXKlMlX7CDeSTIGVw i;
nimZeroMem((void*)(&c), sizeof(tyTuple__O3wqxUcQkE83qFgUCv8M2g));
i = ((tyEnum_TSystemCC__YPXqlEXKlMlX7CDeSTIGVw)1);
{
while (1) {
c = CC__extccomp_539[(i)- 1];
undefSymbol__condsyms_8((*conf).symbols, c.Field0);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
if (!(((tyEnum_TSystemCC__YPXqlEXKlMlX7CDeSTIGVw)11) <= i)) goto LA7_;
goto LA3;
}
LA7_: ;
i += ((NI)1);
}
} LA3: ;
}
defineSymbol__condsyms_4((*conf).symbols, CC__extccomp_539[((*conf).cCompiler)- 1].Field0, TM__pZmXgBT0YcBrnAO6VUvpNQ_202);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
colontmpD_ = getConfigVar__extccomp_703(conf, (*conf).cCompiler, TM__pZmXgBT0YcBrnAO6VUvpNQ_203);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
addCompileOption__extccomp_775(conf, colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NimStringV2 T13_;
if (!((*conf).cCompilerPath.len == ((NI)0))) goto LA11_;
T13_.len = 0; T13_.p = NIM_NIL;
T13_ = getConfigVar__extccomp_703(conf, (*conf).cCompiler, TM__pZmXgBT0YcBrnAO6VUvpNQ_204);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqsink___stdZassertions_19((&(*conf).cCompilerPath), T13_);
}
LA11_: ;
{
LA1_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD_));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___extccomp_2034)(tyObject_BuildCache__bsEp9cTzVeuA9a0MLpRaR1yg* dest) {
eqdestroy___stdZassertions_13((&(*dest).cacheVersion));
eqdestroy___stdZassertions_13((&(*dest).outputFile));
eqdestroy___stdZenvvars_85((&(*dest).compile));
eqdestroy___system_3530((&(*dest).link));
eqdestroy___stdZassertions_13((&(*dest).linkcmd));
eqdestroy___system_3530((&(*dest).extraCmds));
eqdestroy___system_3530((&(*dest).configFiles));
eqdestroy___stdZassertions_13((&(*dest).cmdInput));
eqdestroy___stdZassertions_13((&(*dest).currentDir));
eqdestroy___stdZassertions_13((&(*dest).cmdline));
eqdestroy___stdZenvvars_85((&(*dest).depfiles));
eqdestroy___stdZassertions_13((&(*dest).nimexe));
}
static N_INLINE(NIM_BOOL, isObjDisplayCheck)(TNimTypeV2* source, NI16 targetDepth, NU32 token) {
NIM_BOOL result;
NIM_BOOL T1_;
result = (NIM_BOOL)0;
T1_ = (NIM_BOOL)0;
T1_ = (targetDepth <= (*source).depth);
if (!(T1_)) goto LA2_;
T1_ = ((*source).display[targetDepth] == token);
LA2_: ;
result = T1_;
return result;
}
static N_INLINE(Exception*, nimBorrowCurrentException)(void) {
Exception* result;
result = NIM_NIL;
result = currException__system_3668;
return result;
}
static N_INLINE(void, popCurrentException)(void) {
eqcopy___stdZassertions_33(&currException__system_3668, (*currException__system_3668).up, NIM_FALSE);
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, changeDetectedViaJsonBuildInstructions__extccomp_2070)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 jsonFile) {
NIM_BOOL result;
NimStringV2 colontmpD_;
tyObject_BuildCache__bsEp9cTzVeuA9a0MLpRaR1yg bcache;
NimStringV2 colontmpD__2;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ colontmpD__3;
NimStringV2 colontmpD__4;
NimStringV2 colontmpD__5;
NimStringV2 colontmpD__6;
tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* colontmpD__7;
tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T12_;
tyObject_Joptions__LkVLf5IMKBOgl3HJApAzgQ T13_;
NIM_BOOL oldNimErrFin11_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NIM_BOOL)0;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
nimZeroMem((void*)(&bcache), sizeof(tyObject_BuildCache__bsEp9cTzVeuA9a0MLpRaR1yg));
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
colontmpD__5.len = 0; colontmpD__5.p = NIM_NIL;
colontmpD__6.len = 0; colontmpD__6.p = NIM_NIL;
{
NIM_BOOL T4_;
NIM_BOOL T5_;
NIM_BOOL T7_;
T4_ = (NIM_BOOL)0;
T5_ = (NIM_BOOL)0;
T5_ = nosfileExists(jsonFile);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T4_ = !(T5_);
if (T4_) goto LA6_;
colontmpD_ = absOutFile__options_4942(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T7_ = (NIM_BOOL)0;
T7_ = nosfileExists(colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T4_ = !(T7_);
LA6_: ;
if (!T4_) goto LA8_;
result = NIM_TRUE;
eqdestroy___stdZassertions_13((&colontmpD__6));
eqdestroy___stdZassertions_13((&colontmpD__5));
eqdestroy___stdZassertions_13((&colontmpD__4));
eqdestroy___system_3530((&colontmpD__3));
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___extccomp_2034((&bcache));
eqdestroy___stdZassertions_13((&colontmpD_));
goto BeforeRet_;
}
LA8_: ;
colontmpD__7 = NIM_NIL;
T12_ = NIM_NIL;
T12_ = parseFile__pureZjson_5624(jsonFile);
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
colontmpD__7 = T12_;
nimZeroMem((void*)(&T13_), sizeof(tyObject_Joptions__LkVLf5IMKBOgl3HJApAzgQ));
fromJson__extccomp_2075((&bcache), colontmpD__7, T13_);
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
{
LA11_:;
}
{
oldNimErrFin11_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___pureZjson_271(&colontmpD__7);
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
*nimErr_ = oldNimErrFin11_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
if (NIM_UNLIKELY(*nimErr_)) {
LA10_:;
if (isObjDisplayCheck(nimBorrowCurrentException()->Sup.m_type, 3, 1335990016)||isObjDisplayCheck(nimBorrowCurrentException()->Sup.m_type, 3, 3829286656)||isObjDisplayCheck(nimBorrowCurrentException()->Sup.m_type, 3, 3978211584)) {
NimStringV2 colontmpD__8;
NimStringV2 colontmpD__9;
NimStringV2 T20_;
*nimErr_ = NIM_FALSE;
colontmpD__8.len = 0; colontmpD__8.p = NIM_NIL;
colontmpD__9.len = 0; colontmpD__9.p = NIM_NIL;
colontmpD__8.len = 0; colontmpD__8.p = NIM_NIL;
eqcopy___stdZassertions_16((&colontmpD__8), jsonFile);
T20_.len = 0; T20_.p = NIM_NIL;
T20_ = nsuFormatSingleElem(TM__pZmXgBT0YcBrnAO6VUvpNQ_206, colontmpD__8);
if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
colontmpD__9 = T20_;
write__stdZsyncio_230(__stderrp, colontmpD__9);
if (NIM_UNLIKELY(*nimErr_)) goto LA19_;
result = NIM_TRUE;
eqdestroy___stdZassertions_13((&colontmpD__9));
eqdestroy___stdZassertions_13((&colontmpD__6));
eqdestroy___stdZassertions_13((&colontmpD__5));
eqdestroy___stdZassertions_13((&colontmpD__4));
eqdestroy___system_3530((&colontmpD__3));
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___extccomp_2034((&bcache));
eqdestroy___stdZassertions_13((&colontmpD_));
popCurrentException();
goto BeforeRet_;
{
LA19_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__9));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
popCurrentException();
LA17_:;
}
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NIM_BOOL T25_;
NIM_BOOL T26_;
NIM_BOOL T27_;
NIM_BOOL T28_;
NIM_BOOL T29_;
NIM_BOOL T30_;
NIM_BOOL T31_;
NimStringV2 T32_;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ T34_;
NIM_BOOL T41_;
NimStringV2 T44_;
NimStringV2 T47_;
tyArray__YtcvxHNKV4YiecPE9ap1mcA T48_;
NimStringV2 T49_;
T25_ = (NIM_BOOL)0;
T26_ = (NIM_BOOL)0;
T27_ = (NIM_BOOL)0;
T28_ = (NIM_BOOL)0;
T29_ = (NIM_BOOL)0;
T30_ = (NIM_BOOL)0;
T31_ = (NIM_BOOL)0;
T32_.len = 0; T32_.p = NIM_NIL;
T32_ = nosgetCurrentDir();
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
colontmpD__2 = T32_;
T31_ = !(eqStrings(bcache.currentDir, colontmpD__2));
if (T31_) goto LA33_;
T34_.len = 0; T34_.p = NIM_NIL;
{
tySequence__sM4lkSb7zS6F7OVMvW9cffQ colontmp_;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ resultX60gensym159_;
NI iX60gensym159_;
NI T36_;
colontmp_.len = 0; colontmp_.p = NIM_NIL;
resultX60gensym159_.len = 0; resultX60gensym159_.p = NIM_NIL;
eqcopy___options_3164((&colontmp_), (*conf).configFiles);
iX60gensym159_ = ((NI)0);
T36_ = colontmp_.len;
resultX60gensym159_ = newSeq__stdZsyncio_509(((NI) (T36_)));
{
NimStringV2* it;
NI i;
NI L;
NI T38_;
it = (NimStringV2*)0;
i = ((NI)0);
T38_ = colontmp_.len;
L = T38_;
{
while (1) {
NimStringV2 colontmpD__10;
if (!(i < L)) goto LA40 ;
colontmpD__10.len = 0; colontmpD__10.p = NIM_NIL;
it = (&colontmp_.p->data[i]);
colontmpD__10.len = 0; colontmpD__10.p = NIM_NIL;
eqcopy___stdZassertions_16((&colontmpD__10), (*it));
eqsink___stdZassertions_19((&resultX60gensym159_.p->data[iX60gensym159_]), colontmpD__10);
iX60gensym159_ += ((NI)1);
i += ((NI)1);
} LA40: ;
}
}
colontmpD__3 = resultX60gensym159_;
eqdestroy___options_3161((&colontmp_));
T34_ = colontmpD__3;
}
T41_ = (NIM_BOOL)0;
T41_ = eqeq___extccomp_2713(bcache.configFiles, T34_);
T31_ = !(T41_);
LA33_: ;
T30_ = T31_;
if (T30_) goto LA42_;
T30_ = !(eqStrings(bcache.cacheVersion, TM__pZmXgBT0YcBrnAO6VUvpNQ_208));
LA42_: ;
T29_ = T30_;
if (T29_) goto LA43_;
T44_.len = 0; T44_.p = NIM_NIL;
T44_ = absOutFile__options_4942(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
colontmpD__4 = T44_;
T29_ = !(eqStrings(bcache.outputFile, colontmpD__4));
LA43_: ;
T28_ = T29_;
if (T28_) goto LA45_;
T28_ = !(eqStrings(bcache.cmdline, (*conf).commandLine));
LA45_: ;
T27_ = T28_;
if (T27_) goto LA46_;
T47_.len = 0; T47_.p = NIM_NIL;
T47_ = nosgetAppFilename();
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
colontmpD__5 = T47_;
nimZeroMem((void*)T48_, sizeof(tyArray__YtcvxHNKV4YiecPE9ap1mcA));
secureHashFile__stdZsha49_896(colontmpD__5, T48_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T49_.len = 0; T49_.p = NIM_NIL;
T49_ = dollar___stdZsha49_904(T48_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
colontmpD__6 = T49_;
T27_ = !(eqStrings(bcache.nimexe, colontmpD__6));
LA46_: ;
T26_ = T27_;
if (T26_) goto LA50_;
T26_ = !((bcache.projectIsCmd == (*conf).projectIsCmd));
LA50_: ;
T25_ = T26_;
if (T25_) goto LA51_;
T25_ = !(eqStrings((*conf).cmdInput, bcache.cmdInput));
LA51_: ;
if (!T25_) goto LA52_;
result = NIM_TRUE;
eqdestroy___stdZassertions_13((&colontmpD__6));
eqdestroy___stdZassertions_13((&colontmpD__5));
eqdestroy___stdZassertions_13((&colontmpD__4));
eqdestroy___system_3530((&colontmpD__3));
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___extccomp_2034((&bcache));
eqdestroy___stdZassertions_13((&colontmpD_));
goto BeforeRet_;
}
LA52_: ;
{
NIM_BOOL T56_;
T56_ = (NIM_BOOL)0;
T56_ = bcache.stdinInput;
if (T56_) goto LA57_;
T56_ = (*conf).projectIsStdin;
LA57_: ;
if (!T56_) goto LA58_;
result = NIM_TRUE;
eqdestroy___stdZassertions_13((&colontmpD__6));
eqdestroy___stdZassertions_13((&colontmpD__5));
eqdestroy___stdZassertions_13((&colontmpD__4));
eqdestroy___system_3530((&colontmpD__3));
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___extccomp_2034((&bcache));
eqdestroy___stdZassertions_13((&colontmpD_));
goto BeforeRet_;
}
LA58_: ;
{
NimStringV2* file;
NimStringV2* hash;
NI i_2;
NI L_2;
NI T61_;
file = (NimStringV2*)0;
hash = (NimStringV2*)0;
i_2 = ((NI)0);
T61_ = bcache.depfiles.len;
L_2 = T61_;
{
while (1) {
NimStringV2 colontmpD__11;
if (!(i_2 < L_2)) goto LA63 ;
colontmpD__11.len = 0; colontmpD__11.p = NIM_NIL;
file = (&bcache.depfiles.p->data[i_2].Field0);
hash = (&bcache.depfiles.p->data[i_2].Field1);
{
tyArray__YtcvxHNKV4YiecPE9ap1mcA T67_;
NimStringV2 T68_;
nimZeroMem((void*)T67_, sizeof(tyArray__YtcvxHNKV4YiecPE9ap1mcA));
secureHashFile__stdZsha49_896((*file), T67_);
if (NIM_UNLIKELY(*nimErr_)) goto LA64_;
T68_.len = 0; T68_.p = NIM_NIL;
T68_ = dollar___stdZsha49_904(T67_);
if (NIM_UNLIKELY(*nimErr_)) goto LA64_;
colontmpD__11 = T68_;
if (!!(eqStrings(colontmpD__11, (*hash)))) goto LA69_;
result = NIM_TRUE;
eqdestroy___stdZassertions_13((&colontmpD__11));
eqdestroy___stdZassertions_13((&colontmpD__6));
eqdestroy___stdZassertions_13((&colontmpD__5));
eqdestroy___stdZassertions_13((&colontmpD__4));
eqdestroy___system_3530((&colontmpD__3));
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___extccomp_2034((&bcache));
eqdestroy___stdZassertions_13((&colontmpD_));
goto BeforeRet_;
}
LA69_: ;
i_2 += ((NI)1);
{
LA64_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__11));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
} LA63: ;
}
}
{
LA1_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__6));
eqdestroy___stdZassertions_13((&colontmpD__5));
eqdestroy___stdZassertions_13((&colontmpD__4));
eqdestroy___system_3530((&colontmpD__3));
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___extccomp_2034((&bcache));
eqdestroy___stdZassertions_13((&colontmpD_));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, jsonBuildInstructionsFile__extccomp_1612)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf) {
NimStringV2 result;
NimStringV2 colontmpD_;
NimStringV2 colontmpD__2;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
colontmpD_ = getNimcacheDir__options_5056(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
colontmpD__2 = noschangeFileExt((*conf).outFile, TM__pZmXgBT0YcBrnAO6VUvpNQ_210);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
result = slash___pathutils_103(colontmpD_, colontmpD__2);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
LA1_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___stdZassertions_13((&colontmpD_));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, ccHasSaneOverflow__extccomp_1089)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf) {
NIM_BOOL result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NIM_BOOL)0;
{
NimStringV2 exe;
tyTuple__XOVT24GHXwqiEj5GCsEGCA colontmp_;
NimStringV2 s;
tyTuple__XOVT24GHXwqiEj5GCsEGCA T11_;
NimStringV2 colontmpD_;
NimStringV2 T13_;
tyTuple__XOVT24GHXwqiEj5GCsEGCA T14_;
NI exitCode;
if (!((*conf).cCompiler == ((tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g)1))) goto LA3_;
exe.len = 0; exe.p = NIM_NIL;
nimZeroMem((void*)(&colontmp_), sizeof(tyTuple__XOVT24GHXwqiEj5GCsEGCA));
s.len = 0; s.p = NIM_NIL;
result = NIM_FALSE;
exe = getConfigVar__extccomp_703(conf, (*conf).cCompiler, TM__pZmXgBT0YcBrnAO6VUvpNQ_211);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
{
if (!(exe.len == ((NI)0))) goto LA8_;
eqcopy___stdZassertions_16((&exe), CC__extccomp_539[((*conf).cCompiler)- 1].Field4);
}
LA8_: ;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
T13_.len = 0; T13_.p = NIM_NIL;
T13_ = rawNewString(exe.len + 13);
appendString((&T13_), exe);
appendString((&T13_), TM__pZmXgBT0YcBrnAO6VUvpNQ_213);
colontmpD_ = T13_;
nimZeroMem((void*)(&T14_), sizeof(tyTuple__XOVT24GHXwqiEj5GCsEGCA));
T14_ = execCmdEx__pureZosproc_1606(colontmpD_, 10, ((tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg*) NIM_NIL), TM__pZmXgBT0YcBrnAO6VUvpNQ_214, TM__pZmXgBT0YcBrnAO6VUvpNQ_215);
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
colontmp_ = T14_;
{
LA12_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD_));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
if (NIM_UNLIKELY(*nimErr_)) {
LA10_:;
if (isObjDisplayCheck(nimBorrowCurrentException()->Sup.m_type, 3, 1335990016)||isObjDisplayCheck(nimBorrowCurrentException()->Sup.m_type, 3, 3829286656)||isObjDisplayCheck(nimBorrowCurrentException()->Sup.m_type, 3, 3978211584)) {
*nimErr_ = NIM_FALSE;
colontmp_ = TM__pZmXgBT0YcBrnAO6VUvpNQ_216;
popCurrentException();
LA18_:;
}
}
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
s = colontmp_.Field0;
exitCode = colontmp_.Field1;
{
NI major;
NI T24_;
if (!(exitCode == ((NI)0))) goto LA22_;
major = (NI)0;
T24_ = (NI)0;
T24_ = parseInt__pureZparseutils_832(s, (&major), ((NI)0));
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
(void)(T24_);
result = (((NI)5) <= major);
}
LA22_: ;
{
LA5_:;
}
{
eqdestroy___stdZassertions_13((&s));
eqdestroy___stdZassertions_13((&exe));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA1_;
LA3_: ;
{
result = ((*conf).cCompiler == ((tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g)4));
}
LA1_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, addFileToCompile__extccomp_804)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ* cf) {
tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ colontmpD_;
nimZeroMem((void*)(&colontmpD_), sizeof(tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ));
nimZeroMem((void*)(&colontmpD_), sizeof(tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ));
eqcopy___options_3037((&colontmpD_), cf);
add__extccomp_807((&(*conf).toCompile), (&colontmpD_));
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, genMappingFiles__extccomp_2823)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tySequence__SE64IkxZVzsW0aLsNjnJHg list) {
NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
{
tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ* it;
NI i;
NI L;
NI T2_;
it = (tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ*)0;
i = ((NI)0);
T2_ = list.len;
L = T2_;
{
while (1) {
NimStringV2 colontmpD_;
tyArray__nHXaesL0DJZHyVS07ARPRA T5_;
if (!(i < L)) goto LA4 ;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
it = (&list.p->data[i]);
T5_[0] = (*it).cname;
colontmpD_ = percent___extccomp_2831(T5_, 1);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
prepareAdd((&result), colontmpD_.len + 0);
appendString((&result), colontmpD_);
i += ((NI)1);
eqdestroy___stdZassertions_13((&colontmpD_));
} LA4: ;
}
}
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getCompileOptions__extccomp_969)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf) {
NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
result = cFileSpecificOptions__extccomp_944(conf, TM__pZmXgBT0YcBrnAO6VUvpNQ_222, TM__pZmXgBT0YcBrnAO6VUvpNQ_223);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getLinkOptions__extccomp_980)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf) {
NimStringV2 result;
NimStringV2 T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
T1_.len = 0; T1_.p = NIM_NIL;
T1_ = rawNewString((*conf).linkOptions.len + (*conf).linkOptionsCmd.len + 2);
appendString((&T1_), (*conf).linkOptions);
appendString((&T1_), TM__pZmXgBT0YcBrnAO6VUvpNQ_229);
appendString((&T1_), (*conf).linkOptionsCmd);
appendString((&T1_), TM__pZmXgBT0YcBrnAO6VUvpNQ_230);
result = T1_;
{
NimStringV2* linkedLib;
NI i;
NI L;
NI T3_;
linkedLib = (NimStringV2*)0;
i = ((NI)0);
T3_ = (*conf).cLinkedLibs.len;
L = T3_;
{
while (1) {
NimStringV2 colontmpD_;
NimStringV2 T7_;
if (!(i < L)) goto LA5 ;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
linkedLib = (&(*conf).cLinkedLibs.p->data[i]);
T7_.len = 0; T7_.p = NIM_NIL;
T7_ = nospquoteShell((*linkedLib));
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
colontmpD_ = nsuFormatSingleElem(CC__extccomp_539[((*conf).cCompiler)- 1].Field14, T7_);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
prepareAdd((&result), colontmpD_.len + 0);
appendString((&result), colontmpD_);
i += ((NI)1);
{
LA6_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD_));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
} LA5: ;
}
}
{
NimStringV2* libDir;
NI i_2;
NI L_2;
NI T11_;
libDir = (NimStringV2*)0;
i_2 = ((NI)0);
T11_ = (*conf).cLibs.len;
L_2 = T11_;
{
while (1) {
NimStringV2 colontmpD__2;
NimStringV2 colontmpD__3;
tyArray__Re75IspeoxXy2oCZHwcRrA T14_;
if (!(i_2 < L_2)) goto LA13 ;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
libDir = (&(*conf).cLibs.p->data[i_2]);
T14_[0] = CC__extccomp_539[((*conf).cCompiler)- 1].Field13;
colontmpD__2 = nospquoteShell((*libDir));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T14_[1] = colontmpD__2;
colontmpD__3 = nsuJoinSep(T14_, 2, TM__pZmXgBT0YcBrnAO6VUvpNQ_231);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
prepareAdd((&result), colontmpD__3.len + 0);
appendString((&result), colontmpD__3);
i_2 += ((NI)1);
eqdestroy___stdZassertions_13((&colontmpD__3));
eqdestroy___stdZassertions_13((&colontmpD__2));
} LA13: ;
}
}
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, writeMapping__extccomp_2836)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 symbolMapping) {
NimStringV2 code;
NimStringV2 colontmpD_;
NimStringV2 colontmpD__2;
NimStringV2 colontmpD__3;
NimStringV2 colontmpD__4;
NimStringV2 colontmpD__5;
NimStringV2 colontmpD__6;
NimStringV2 colontmpD__7;
NimStringV2 colontmpD__8;
NimStringV2 colontmpD__9;
NimStringV2 filename;
NimStringV2 T6_;
tyArray__nHXaesL0DJZHyVS07ARPRA T7_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
code.len = 0; code.p = NIM_NIL;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
colontmpD__5.len = 0; colontmpD__5.p = NIM_NIL;
colontmpD__6.len = 0; colontmpD__6.p = NIM_NIL;
colontmpD__7.len = 0; colontmpD__7.p = NIM_NIL;
colontmpD__8.len = 0; colontmpD__8.p = NIM_NIL;
colontmpD__9.len = 0; colontmpD__9.p = NIM_NIL;
filename.len = 0; filename.p = NIM_NIL;
{
if (!!((((*conf).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw)12)))&63U)))!=0))) goto LA4_;
eqdestroy___stdZassertions_13((&filename));
eqdestroy___stdZassertions_13((&colontmpD__9));
eqdestroy___stdZassertions_13((&colontmpD__8));
eqdestroy___stdZassertions_13((&colontmpD__7));
eqdestroy___stdZassertions_13((&colontmpD__6));
eqdestroy___stdZassertions_13((&colontmpD__5));
eqdestroy___stdZassertions_13((&colontmpD__4));
eqdestroy___stdZassertions_13((&colontmpD__3));
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___stdZassertions_13((&colontmpD_));
eqdestroy___stdZassertions_13((&code));
goto BeforeRet_;
}
LA4_: ;
code = TM__pZmXgBT0YcBrnAO6VUvpNQ_218;
colontmpD_ = genMappingFiles__extccomp_2823(conf, (*conf).toCompile);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
prepareAdd((&code), colontmpD_.len + 0);
appendString((&code), colontmpD_);
prepareAdd((&code), 20);
appendString((&code), TM__pZmXgBT0YcBrnAO6VUvpNQ_220);
colontmpD__2 = getCompileOptions__extccomp_969(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
colontmpD__3 = nsuEscape(colontmpD__2, TM__pZmXgBT0YcBrnAO6VUvpNQ_225, TM__pZmXgBT0YcBrnAO6VUvpNQ_226);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
prepareAdd((&code), colontmpD__3.len + 0);
appendString((&code), colontmpD__3);
prepareAdd((&code), 16);
appendString((&code), TM__pZmXgBT0YcBrnAO6VUvpNQ_228);
T6_.len = 0; T6_.p = NIM_NIL;
colontmpD__4 = getLinkOptions__extccomp_980(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
colontmpD__5 = getConfigVar__extccomp_703(conf, (*conf).cCompiler, TM__pZmXgBT0YcBrnAO6VUvpNQ_234);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T6_ = rawNewString(colontmpD__4.len + colontmpD__5.len + 1);
appendString((&T6_), colontmpD__4);
appendString((&T6_), TM__pZmXgBT0YcBrnAO6VUvpNQ_232);
appendString((&T6_), colontmpD__5);
colontmpD__6 = T6_;
colontmpD__7 = nsuEscape(colontmpD__6, TM__pZmXgBT0YcBrnAO6VUvpNQ_235, TM__pZmXgBT0YcBrnAO6VUvpNQ_236);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
prepareAdd((&code), colontmpD__7.len + 0);
appendString((&code), colontmpD__7);
prepareAdd((&code), 23);
appendString((&code), TM__pZmXgBT0YcBrnAO6VUvpNQ_238);
colontmpD__8 = nsuEscape((*conf).libpath, TM__pZmXgBT0YcBrnAO6VUvpNQ_239, TM__pZmXgBT0YcBrnAO6VUvpNQ_240);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
prepareAdd((&code), colontmpD__8.len + 0);
appendString((&code), colontmpD__8);
T7_[0] = symbolMapping;
colontmpD__9 = percent___extccomp_2844(T7_, 1);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
prepareAdd((&code), colontmpD__9.len + 0);
appendString((&code), colontmpD__9);
filename = slash___pathutils_103((*conf).projectPath, TM__pZmXgBT0YcBrnAO6VUvpNQ_242);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NIM_BOOL T10_;
NimStringV2 colontmpD__10;
NimStringV2 T14_;
T10_ = (NIM_BOOL)0;
T10_ = writeRope__ropes_26(code, filename);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!!(T10_)) goto LA11_;
colontmpD__10.len = 0; colontmpD__10.p = NIM_NIL;
T14_.len = 0; T14_.p = NIM_NIL;
T14_ = rawNewString(filename.len + 25);
appendString((&T14_), TM__pZmXgBT0YcBrnAO6VUvpNQ_244);
appendString((&T14_), filename);
colontmpD__10 = T14_;
liMessage__msgs_1172(conf, unknownLineInfo__lineinfos_338, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD__10, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)1), TM__pZmXgBT0YcBrnAO6VUvpNQ_245, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA13_;
{
LA13_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__10));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA11_: ;
{
LA1_:;
}
{
eqdestroy___stdZassertions_13((&filename));
eqdestroy___stdZassertions_13((&colontmpD__9));
eqdestroy___stdZassertions_13((&colontmpD__8));
eqdestroy___stdZassertions_13((&colontmpD__7));
eqdestroy___stdZassertions_13((&colontmpD__6));
eqdestroy___stdZassertions_13((&colontmpD__5));
eqdestroy___stdZassertions_13((&colontmpD__4));
eqdestroy___stdZassertions_13((&colontmpD__3));
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___stdZassertions_13((&colontmpD_));
eqdestroy___stdZassertions_13((&code));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
static N_INLINE(NI, minuspercent___system_790)(NI x, NI y) {
NI result;
result = (NI)0;
result = ((NI) ((NU)((NU32)(((NU) (x))) - (NU32)(((NU) (y))))));
return result;
}
static N_INLINE(NIM_BOOL, nimDecRefIsLast)(void* p) {
NIM_BOOL result;
result = (NIM_BOOL)0;
{
tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A* cell;
NI T5_;
if (!!((p == NIM_NIL))) goto LA3_;
T5_ = (NI)0;
T5_ = minuspercent___system_790(((NI) (ptrdiff_t) (p)), ((NI)8));
cell = ((tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A*) (T5_));
{
if (!((NI)((*cell).rc & ((NI)-16)) == ((NI)0))) goto LA8_;
result = NIM_TRUE;
}
goto LA6_;
LA8_: ;
{
(*cell).rc -= ((NI)16);
}
LA6_: ;
}
LA3_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___extccomp_3005)(tyObject_Env_extccompdotnim_callCCompiler___BcZEqupvBAThTu8RE6k9aJA* dest) {
eqdestroy___system_3530((&(*dest).prettyCmds1));
{
NIM_BOOL T3_;
T3_ = (NIM_BOOL)0;
T3_ = nimDecRefIsLast((*dest).conf2);
if (!T3_) goto LA4_;
eqdestroy___options_3149((*dest).conf2);
nimRawDispose((*dest).conf2, ((NI)4));
}
LA4_: ;
}
static N_INLINE(NIM_BOOL, nimDecRefIsLastCyclicDyn)(void* p) {
NIM_BOOL result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NIM_BOOL)0;
{
tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A* cell;
NI T5_;
if (!!((p == NIM_NIL))) goto LA3_;
T5_ = (NI)0;
T5_ = minuspercent___system_790(((NI) (ptrdiff_t) (p)), ((NI)8));
cell = ((tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A*) (T5_));
{
if (!((NI)((*cell).rc & ((NI)-16)) == ((NI)0))) goto LA8_;
result = NIM_TRUE;
}
goto LA6_;
LA8_: ;
{
(*cell).rc -= ((NI)16);
}
LA6_: ;
rememberCycle__system_3157(result, cell, (*((TNimTypeV2**) (p))));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA3_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___extccomp_3026)(tyObject_Env_extccompdotnim_callCCompiler___BcZEqupvBAThTu8RE6k9aJA** dest) {
{
NIM_BOOL T3_;
T3_ = (NIM_BOOL)0;
T3_ = nimDecRefIsLastCyclicDyn((*dest));
if (!T3_) goto LA4_;
nimDestroyAndDispose((*dest));
}
LA4_: ;
}
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___extccomp_1397)(NI idx, void* ClE_0) {
tyObject_Env_extccompdotnim_callCCompiler___BcZEqupvBAThTu8RE6k9aJA* colonenvP_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
colonenvP_ = (tyObject_Env_extccompdotnim_callCCompiler___BcZEqupvBAThTu8RE6k9aJA*) ClE_0;
{
tyArray__nHXaesL0DJZHyVS07ARPRA T5_;
if (!(((NI)0) < (*colonenvP_).prettyCmds1.p->data[idx].len)) goto LA3_;
flushDot__msgs_33((*colonenvP_).conf2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T5_[0] = (*colonenvP_).prettyCmds1.p->data[idx];
writeLine__msgs_459(__stderrp, T5_, 1);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA3_: ;
}BeforeRet_: ;
}
static N_INLINE(void, nimIncRefCyclic)(void* p, NIM_BOOL cyclic) {
tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A* h;
NI T1_;
T1_ = (NI)0;
T1_ = minuspercent___system_790(((NI) (ptrdiff_t) (p)), ((NI)8));
h = ((tyObject_RefHeader__Gi7WQzlT1ZRToh9a2ueYb4A*) (T1_));
(*h).rc += ((NI)16);
}
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___extccomp_3029)(tyObject_Env_extccompdotnim_callCCompiler___BcZEqupvBAThTu8RE6k9aJA** dest, tyObject_Env_extccompdotnim_callCCompiler___BcZEqupvBAThTu8RE6k9aJA* src, NIM_BOOL cyclic) {
tyObject_Env_extccompdotnim_callCCompiler___BcZEqupvBAThTu8RE6k9aJA* colontmp_;
colontmp_ = (*dest);
{
if (!src) goto LA3_;
nimIncRefCyclic(src, cyclic);
}
LA3_: ;
(*dest) = src;
{
NIM_BOOL T7_;
T7_ = (NIM_BOOL)0;
T7_ = nimDecRefIsLastCyclicDyn(colontmp_);
if (!T7_) goto LA8_;
nimDestroyAndDispose(colontmp_);
}
LA8_: ;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, displayProgressCC__extccomp_1373)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 path, NimStringV2 compileCmd) {
NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
{
NIM_BOOL T3_;
T3_ = (NIM_BOOL)0;
T3_ = hasHint__options_530(conf, ((tyEnum_TMsgKind__w451l0dg4CacKSKYxza9cvw)80));
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (!T3_) goto LA4_;
{
NIM_BOOL T8_;
tyTuple__7q7q3E6Oj24ZNVJb9aonhAg colontmpD_;
NimStringV2 colontmpD__2;
NimStringV2 T13_;
T8_ = (NIM_BOOL)0;
T8_ = (((*conf).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw)3)))&63U)))!=0);
if (T8_) goto LA9_;
T8_ = (((NI)1) < (*conf).verbosity);
LA9_: ;
if (!T8_) goto LA10_;
nimZeroMem((void*)(&colontmpD_), sizeof(tyTuple__7q7q3E6Oj24ZNVJb9aonhAg));
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
T13_.len = 0; T13_.p = NIM_NIL;
colontmpD_ = nossplitFile(path);
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
colontmpD__2 = demangleModuleName__modulepaths_76(colontmpD_.Field1);
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
T13_ = rawNewString(colontmpD__2.len + compileCmd.len + 2);
appendString((&T13_), colontmpD__2);
appendString((&T13_), TM__pZmXgBT0YcBrnAO6VUvpNQ_251);
appendString((&T13_), compileCmd);
result = nsuFormatSingleElem(TM__pZmXgBT0YcBrnAO6VUvpNQ_249, T13_);
if (NIM_UNLIKELY(*nimErr_)) goto LA12_;
{
LA12_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___pureZos_231((&colontmpD_));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA6_;
LA10_: ;
{
tyTuple__7q7q3E6Oj24ZNVJb9aonhAg colontmpD__3;
NimStringV2 T18_;
nimZeroMem((void*)(&colontmpD__3), sizeof(tyTuple__7q7q3E6Oj24ZNVJb9aonhAg));
colontmpD__3 = nossplitFile(path);
if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
T18_.len = 0; T18_.p = NIM_NIL;
T18_ = demangleModuleName__modulepaths_76(colontmpD__3.Field1);
if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
result = nsuFormatSingleElem(TM__pZmXgBT0YcBrnAO6VUvpNQ_252, T18_);
if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
{
LA17_:;
}
{
eqdestroy___pureZos_231((&colontmpD__3));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA6_: ;
}
LA4_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___extccomp_3100)(tyObject_Env_extccompdotnim_execCmdsInParallel___yHnd6tS72p8Z69arkozzppg* dest) {
{
NIM_BOOL T3_;
T3_ = (NIM_BOOL)0;
T3_ = nimDecRefIsLast((*dest).conf1);
if (!T3_) goto LA4_;
eqdestroy___options_3149((*dest).conf1);
nimRawDispose((*dest).conf1, ((NI)4));
}
LA4_: ;
eqdestroy___system_3530((&(*dest).cmds2));
}
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___extccomp_1304)(NI idx, tyObject_ProcessObj__2rGNQnv9bU4hanI2g3svReg* p, void* ClE_0) {
tyObject_Env_extccompdotnim_execCmdsInParallel___yHnd6tS72p8Z69arkozzppg* colonenvP_;
NI exitCode;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
colonenvP_ = (tyObject_Env_extccompdotnim_execCmdsInParallel___yHnd6tS72p8Z69arkozzppg*) ClE_0;
exitCode = nosppeekExitCode(p);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
{
NimStringV2 colontmpD_;
NimStringV2 colontmpD__2;
NimStringV2 T6_;
if (!!((exitCode == ((NI)0)))) goto LA3_;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
T6_.len = 0; T6_.p = NIM_NIL;
colontmpD_ = dollar___systemZdollars_3(exitCode);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
T6_ = rawNewString((*colonenvP_).cmds2.p->data[idx].len + colontmpD_.len + 70);
appendString((&T6_), TM__pZmXgBT0YcBrnAO6VUvpNQ_256);
appendString((&T6_), (*colonenvP_).cmds2.p->data[idx]);
appendString((&T6_), TM__pZmXgBT0YcBrnAO6VUvpNQ_258);
appendString((&T6_), colontmpD_);
appendString((&T6_), TM__pZmXgBT0YcBrnAO6VUvpNQ_260);
colontmpD__2 = T6_;
liMessage__msgs_1172((*colonenvP_).conf1, unknownLineInfo__lineinfos_338, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD__2, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)1), TM__pZmXgBT0YcBrnAO6VUvpNQ_261, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
{
LA5_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___stdZassertions_13((&colontmpD_));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA3_: ;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___extccomp_3124)(tyObject_Env_extccompdotnim_execCmdsInParallel___yHnd6tS72p8Z69arkozzppg** dest, tyObject_Env_extccompdotnim_execCmdsInParallel___yHnd6tS72p8Z69arkozzppg* src, NIM_BOOL cyclic) {
tyObject_Env_extccompdotnim_execCmdsInParallel___yHnd6tS72p8Z69arkozzppg* colontmp_;
colontmp_ = (*dest);
{
if (!src) goto LA3_;
nimIncRefCyclic(src, cyclic);
}
LA3_: ;
(*dest) = src;
{
NIM_BOOL T7_;
T7_ = (NIM_BOOL)0;
T7_ = nimDecRefIsLastCyclicDyn(colontmp_);
if (!T7_) goto LA8_;
nimDestroyAndDispose(colontmp_);
}
LA8_: ;
}
N_LIB_PRIVATE N_NIMCALL(NI, execWithEcho__extccomp_892)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 cmd, tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA msg) {
NI result;
NimStringV2 colontmpD_;
NimStringV2 colontmpD__2;
NimStringV2 T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result = (NI)0;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
T2_.len = 0; T2_.p = NIM_NIL;
{
NIM_BOOL T5_;
NIM_BOOL T7_;
T5_ = (NIM_BOOL)0;
T5_ = (msg == ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)100));
if (!(T5_)) goto LA6_;
T7_ = (NIM_BOOL)0;
T7_ = (((*conf).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw)3)))&63U)))!=0);
if (T7_) goto LA8_;
T7_ = (((NI)1) < (*conf).verbosity);
LA8_: ;
T5_ = !(T7_);
LA6_: ;
if (!T5_) goto LA9_;
colontmpD_ = TM__pZmXgBT0YcBrnAO6VUvpNQ_262;
T2_ = colontmpD_;
}
goto LA3_;
LA9_: ;
{
eqcopy___stdZassertions_16((&colontmpD__2), cmd);
T2_ = colontmpD__2;
}
LA3_: ;
liMessage__msgs_1172(conf, unknownLineInfo__lineinfos_338, msg, T2_, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)1), TM__pZmXgBT0YcBrnAO6VUvpNQ_263, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
result = nospexecCmd(cmd);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
LA1_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___stdZassertions_13((&colontmpD_));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
static N_INLINE(Exception*, getCurrentException)(void) {
Exception* result;
result = NIM_NIL;
eqcopy___stdZassertions_33(&result, currException__system_3668, NIM_FALSE);
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___extccomp_3121)(tyObject_Env_extccompdotnim_execCmdsInParallel___yHnd6tS72p8Z69arkozzppg** dest) {
{
NIM_BOOL T3_;
T3_ = (NIM_BOOL)0;
T3_ = nimDecRefIsLastCyclicDyn((*dest));
if (!T3_) goto LA4_;
nimDestroyAndDispose((*dest));
}
LA4_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, execCmdsInParallel__extccomp_1298)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tySequence__sM4lkSb7zS6F7OVMvW9cffQ cmds, tyProc__SqRJqa5aOiKB4EuKlKh9asA prettyCb) {
tyObject_Env_extccompdotnim_execCmdsInParallel___yHnd6tS72p8Z69arkozzppg* colonenv_;
tyProc__oudJckli4GdxAXLVzBBlAw runCb;
tyObject_Env_extccompdotnim_execCmdsInParallel___yHnd6tS72p8Z69arkozzppg* colontmpD_;
tyObject_Env_extccompdotnim_execCmdsInParallel___yHnd6tS72p8Z69arkozzppg* T2_;
tyProc__oudJckli4GdxAXLVzBBlAw T3_;
NI res;
NIM_BOOL oldNimErrFin22_;
NIM_BOOL oldNimErrFin56_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
colonenv_ = NIM_NIL;
nimZeroMem((void*)(&runCb), sizeof(tyProc__oudJckli4GdxAXLVzBBlAw));
colontmpD_ = NIM_NIL;
T2_ = NIM_NIL;
T2_ = (tyObject_Env_extccompdotnim_execCmdsInParallel___yHnd6tS72p8Z69arkozzppg*) nimNewObj(sizeof(tyObject_Env_extccompdotnim_execCmdsInParallel___yHnd6tS72p8Z69arkozzppg), NIM_ALIGNOF(tyObject_Env_extccompdotnim_execCmdsInParallel___yHnd6tS72p8Z69arkozzppg));
(*T2_).Sup.m_type = (&NTIv2__yHnd6tS72p8Z69arkozzppg_);
colonenv_ = T2_;
eqcopy___options_3378(&(*colonenv_).conf1, conf);
eqcopy___system_3533((&(*colonenv_).cmds2), cmds);
colontmpD_ = 0;
eqcopy___extccomp_3124(&colontmpD_, colonenv_, NIM_TRUE);
nimZeroMem((void*)(&T3_), sizeof(tyProc__oudJckli4GdxAXLVzBBlAw));
T3_.ClP_0 = colonanonymous___extccomp_1304; T3_.ClE_0 = colontmpD_;
runCb.ClE_0 = T3_.ClE_0;
runCb.ClP_0 = T3_.ClP_0;
{
NI T8_;
if (!((*(*colonenv_).conf1).numberOfProcessors == ((NI)0))) goto LA6_;
T8_ = (NI)0;
T8_ = nospcountProcessors();
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
(*(*colonenv_).conf1).numberOfProcessors = T8_;
}
LA6_: ;
res = ((NI)0);
{
if (!((*(*colonenv_).conf1).numberOfProcessors <= ((NI)1))) goto LA11_;
{
NI i;
NI colontmp_;
NI T14_;
NI res_2;
i = (NI)0;
colontmp_ = (NI)0;
T14_ = ((*colonenv_).cmds2.len-1);
colontmp_ = T14_;
res_2 = ((NI)0);
{
while (1) {
NI T18_;
if (!(res_2 <= colontmp_)) goto LA16 ;
i = res_2;
T18_ = (NI)0;
T18_ = execWithEcho__extccomp_892((*colonenv_).conf1, (*colonenv_).cmds2.p->data[i], ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)99));
if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
res = T18_;
if (NIM_UNLIKELY(*nimErr_)) {
LA17_:;
if (isObjDisplayCheck(nimBorrowCurrentException()->Sup.m_type, 3, 3829286656)) {
tyObject_OSError__PeQ9bR8XhClb9cp9cbW28aSyw* oseX60gensym67_;
Exception* T23_;
*nimErr_ = NIM_FALSE;
oseX60gensym67_ = NIM_NIL;
T23_ = NIM_NIL;
T23_ = getCurrentException();
oseX60gensym67_ = ((tyObject_OSError__PeQ9bR8XhClb9cp9cbW28aSyw*) (T23_));
{
NimStringV2 colontmpD__2;
NimStringV2 colontmpD__3;
NimStringV2 T29_;
NimStringV2 T30_;
if (!NIM_TRUE) goto LA26_;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
T29_.len = 0; T29_.p = NIM_NIL;
T30_.len = 0; T30_.p = NIM_NIL;
T30_ = dollar___systemZdollars_3(((NI) ((*oseX60gensym67_).errorCode)));
if (NIM_UNLIKELY(*nimErr_)) goto LA28_;
colontmpD__2 = T30_;
T29_ = rawNewString((*oseX60gensym67_).Sup.Sup.message.len + colontmpD__2.len + 49);
appendString((&T29_), TM__pZmXgBT0YcBrnAO6VUvpNQ_265);
appendString((&T29_), (*oseX60gensym67_).Sup.Sup.message);
appendString((&T29_), TM__pZmXgBT0YcBrnAO6VUvpNQ_266);
appendString((&T29_), colontmpD__2);
colontmpD__3 = T29_;
liMessage__msgs_1172((*colonenv_).conf1, unknownLineInfo__lineinfos_338, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD__3, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)1), TM__pZmXgBT0YcBrnAO6VUvpNQ_267, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA28_;
{
LA28_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__3));
eqdestroy___stdZassertions_13((&colontmpD__2));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
}
goto LA24_;
LA26_: ;
{
NimStringV2 colontmpD__4;
NimStringV2 colontmpD__5;
NimStringV2 T35_;
NimStringV2 T36_;
NimStringV2 T37_;
colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
colontmpD__5.len = 0; colontmpD__5.p = NIM_NIL;
T35_.len = 0; T35_.p = NIM_NIL;
T36_.len = 0; T36_.p = NIM_NIL;
T36_ = dollar___systemZdollars_3(((NI) ((*oseX60gensym67_).errorCode)));
if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
colontmpD__4 = T36_;
T35_ = rawNewString((*oseX60gensym67_).Sup.Sup.message.len + colontmpD__4.len + 1);
appendString((&T35_), (*oseX60gensym67_).Sup.Sup.message);
appendString((&T35_), TM__pZmXgBT0YcBrnAO6VUvpNQ_270);
appendString((&T35_), colontmpD__4);
T37_.len = 0; T37_.p = NIM_NIL;
T37_ = nsuFormatSingleElem(TM__pZmXgBT0YcBrnAO6VUvpNQ_269, T35_);
if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
colontmpD__5 = T37_;
liMessage__msgs_1172((*colonenv_).conf1, unknownLineInfo__lineinfos_338, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD__5, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)1), TM__pZmXgBT0YcBrnAO6VUvpNQ_271, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA34_;
{
LA34_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__5));
eqdestroy___stdZassertions_13((&colontmpD__4));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA22_;
}
LA24_: ;
reraiseException();
goto LA22_;
{
LA22_:;
}
{
oldNimErrFin22_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___stdZoserrors_45(&oseX60gensym67_);
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
*nimErr_ = oldNimErrFin22_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA20_;
popCurrentException();
LA20_:;
}
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NimStringV2 colontmpD__6;
NimStringV2 colontmpD__7;
NimStringV2 T47_;
if (!!((res == ((NI)0)))) goto LA44_;
colontmpD__6.len = 0; colontmpD__6.p = NIM_NIL;
colontmpD__7.len = 0; colontmpD__7.p = NIM_NIL;
colontmpD__6.len = 0; colontmpD__6.p = NIM_NIL;
eqcopy___stdZassertions_16((&colontmpD__6), (*colonenv_).cmds2.p->data[i]);
T47_.len = 0; T47_.p = NIM_NIL;
T47_ = nsuFormatSingleElem(TM__pZmXgBT0YcBrnAO6VUvpNQ_272, colontmpD__6);
if (NIM_UNLIKELY(*nimErr_)) goto LA46_;
colontmpD__7 = T47_;
liMessage__msgs_1172((*colonenv_).conf1, unknownLineInfo__lineinfos_338, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD__7, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)1), TM__pZmXgBT0YcBrnAO6VUvpNQ_273, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA46_;
{
LA46_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__7));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA44_: ;
res_2 += ((NI)1);
} LA16: ;
}
}
}
goto LA9_;
LA11_: ;
{
NI T52_;
T52_ = (NI)0;
T52_ = nospexecProcesses((((*colonenv_).cmds2).p) ? ((*colonenv_).cmds2.p->data) : NIM_NIL, (*colonenv_).cmds2.len, 26, (*(*colonenv_).conf1).numberOfProcessors, prettyCb, runCb);
if (NIM_UNLIKELY(*nimErr_)) goto LA51_;
res = T52_;
if (NIM_UNLIKELY(*nimErr_)) {
LA51_:;
if (isObjDisplayCheck(nimBorrowCurrentException()->Sup.m_type, 3, 3829286656)) {
tyObject_OSError__PeQ9bR8XhClb9cp9cbW28aSyw* oseX60gensym76_;
Exception* T57_;
*nimErr_ = NIM_FALSE;
oseX60gensym76_ = NIM_NIL;
T57_ = NIM_NIL;
T57_ = getCurrentException();
oseX60gensym76_ = ((tyObject_OSError__PeQ9bR8XhClb9cp9cbW28aSyw*) (T57_));
{
NimStringV2 colontmpD__8;
NimStringV2 colontmpD__9;
NimStringV2 T63_;
NimStringV2 T64_;
if (!NIM_TRUE) goto LA60_;
colontmpD__8.len = 0; colontmpD__8.p = NIM_NIL;
colontmpD__9.len = 0; colontmpD__9.p = NIM_NIL;
T63_.len = 0; T63_.p = NIM_NIL;
T64_.len = 0; T64_.p = NIM_NIL;
T64_ = dollar___systemZdollars_3(((NI) ((*oseX60gensym76_).errorCode)));
if (NIM_UNLIKELY(*nimErr_)) goto LA62_;
colontmpD__8 = T64_;
T63_ = rawNewString((*oseX60gensym76_).Sup.Sup.message.len + colontmpD__8.len + 49);
appendString((&T63_), TM__pZmXgBT0YcBrnAO6VUvpNQ_274);
appendString((&T63_), (*oseX60gensym76_).Sup.Sup.message);
appendString((&T63_), TM__pZmXgBT0YcBrnAO6VUvpNQ_275);
appendString((&T63_), colontmpD__8);
colontmpD__9 = T63_;
liMessage__msgs_1172((*colonenv_).conf1, unknownLineInfo__lineinfos_338, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD__9, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)1), TM__pZmXgBT0YcBrnAO6VUvpNQ_267, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA62_;
{
LA62_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__9));
eqdestroy___stdZassertions_13((&colontmpD__8));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA56_;
}
goto LA58_;
LA60_: ;
{
NimStringV2 colontmpD__10;
NimStringV2 colontmpD__11;
NimStringV2 T69_;
NimStringV2 T70_;
NimStringV2 T71_;
colontmpD__10.len = 0; colontmpD__10.p = NIM_NIL;
colontmpD__11.len = 0; colontmpD__11.p = NIM_NIL;
T69_.len = 0; T69_.p = NIM_NIL;
T70_.len = 0; T70_.p = NIM_NIL;
T70_ = dollar___systemZdollars_3(((NI) ((*oseX60gensym76_).errorCode)));
if (NIM_UNLIKELY(*nimErr_)) goto LA68_;
colontmpD__10 = T70_;
T69_ = rawNewString((*oseX60gensym76_).Sup.Sup.message.len + colontmpD__10.len + 1);
appendString((&T69_), (*oseX60gensym76_).Sup.Sup.message);
appendString((&T69_), TM__pZmXgBT0YcBrnAO6VUvpNQ_277);
appendString((&T69_), colontmpD__10);
T71_.len = 0; T71_.p = NIM_NIL;
T71_ = nsuFormatSingleElem(TM__pZmXgBT0YcBrnAO6VUvpNQ_276, T69_);
if (NIM_UNLIKELY(*nimErr_)) goto LA68_;
colontmpD__11 = T71_;
liMessage__msgs_1172((*colonenv_).conf1, unknownLineInfo__lineinfos_338, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD__11, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)1), TM__pZmXgBT0YcBrnAO6VUvpNQ_271, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA68_;
{
LA68_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__11));
eqdestroy___stdZassertions_13((&colontmpD__10));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA56_;
}
LA58_: ;
reraiseException();
goto LA56_;
{
LA56_:;
}
{
oldNimErrFin56_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___stdZoserrors_45(&oseX60gensym76_);
if (NIM_UNLIKELY(*nimErr_)) goto LA54_;
*nimErr_ = oldNimErrFin56_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA54_;
popCurrentException();
LA54_:;
}
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA9_: ;
{
if (!!((res == ((NI)0)))) goto LA78_;
{
NimStringV2 colontmpD__12;
NimStringV2 T85_;
NimStringV2 T86_;
if (!((*(*colonenv_).conf1).numberOfProcessors <= ((NI)1))) goto LA82_;
colontmpD__12.len = 0; colontmpD__12.p = NIM_NIL;
T85_.len = 0; T85_.p = NIM_NIL;
T85_ = nsuJoinSep((((*colonenv_).cmds2).p) ? ((*colonenv_).cmds2.p->data) : NIM_NIL, (*colonenv_).cmds2.len, TM__pZmXgBT0YcBrnAO6VUvpNQ_279);
if (NIM_UNLIKELY(*nimErr_)) goto LA84_;
T86_.len = 0; T86_.p = NIM_NIL;
T86_ = nsuFormatSingleElem(TM__pZmXgBT0YcBrnAO6VUvpNQ_278, T85_);
if (NIM_UNLIKELY(*nimErr_)) goto LA84_;
colontmpD__12 = T86_;
liMessage__msgs_1172((*colonenv_).conf1, unknownLineInfo__lineinfos_338, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD__12, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)1), TM__pZmXgBT0YcBrnAO6VUvpNQ_280, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA84_;
{
LA84_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__12));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA82_: ;
}
LA78_: ;
{
LA1_:;
}
{
eqdestroy___pureZosproc_548((&runCb));
eqdestroy___extccomp_3121(&colonenv_);
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getObjFilePath__extccomp_1362)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ* f) {
NimStringV2 result;
NimStringV2 T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
T1_.len = 0; T1_.p = NIM_NIL;
{
NIM_BOOL T4_;
T4_ = (NIM_BOOL)0;
T4_ = noAbsolutePaths__extccomp_928(conf);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (!T4_) goto LA5_;
result = nosextractFilename((*f).obj);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA2_;
LA5_: ;
{
NimStringV2 colontmpD_;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
eqcopy___stdZassertions_16((&colontmpD_), (*f).obj);
result = colontmpD_;
}
LA2_: ;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, hcrLinkTargetName__extccomp_1366)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 objFile, NIM_BOOL isMain) {
NimStringV2 result;
NimStringV2 basename;
tyTuple__7q7q3E6Oj24ZNVJb9aonhAg colontmpD_;
NimStringV2 targetName;
NimStringV2 colontmpD__2;
NimStringV2 T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
basename.len = 0; basename.p = NIM_NIL;
nimZeroMem((void*)(&colontmpD_), sizeof(tyTuple__7q7q3E6Oj24ZNVJb9aonhAg));
targetName.len = 0; targetName.p = NIM_NIL;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
colontmpD_ = nossplitFile(objFile);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqcopy___stdZassertions_16((&basename), colontmpD_.Field1);
T2_.len = 0; T2_.p = NIM_NIL;
{
NimStringV2 T7_;
if (!isMain) goto LA5_;
T7_.len = 0; T7_.p = NIM_NIL;
T7_ = rawNewString(basename.len + 4);
appendString((&T7_), basename);
appendString((&T7_), TM__pZmXgBT0YcBrnAO6VUvpNQ_282);
targetName = T7_;
}
goto LA3_;
LA5_: ;
{
NimStringV2 blitTmp;
blitTmp = basename;
basename.len = 0; basename.p = NIM_NIL;
targetName = nsuFormatSingleElem(OS__platform_520[((*conf).target.targetOS)- 1].Field2, blitTmp);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA3_: ;
colontmpD__2 = getNimcacheDir__options_5056(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
result = slash___pathutils_103(colontmpD__2, targetName);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
LA1_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___stdZassertions_13((&targetName));
eqdestroy___pureZos_231((&colontmpD_));
eqdestroy___stdZassertions_13((&basename));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getLinkerExe__extccomp_1104)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g compiler) {
NimStringV2 result;
NimStringV2 T1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
T1_.len = 0; T1_.p = NIM_NIL;
{
if (!(((NI)0) < CC__extccomp_539[(compiler)- 1].Field10.len)) goto LA4_;
eqcopy___stdZassertions_16((&result), CC__extccomp_539[(compiler)- 1].Field10);
}
goto LA2_;
LA4_: ;
{
NIM_BOOL T7_;
T7_ = (NIM_BOOL)0;
T7_ = (((*conf).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw)36)))&63U)))!=0);
if (T7_) goto LA8_;
T7_ = ((*conf).backend == ((tyEnum_TBackend__s27DA9b8P4ksjjsndcLjR2w)2));
LA8_: ;
result = getCompilerExe__extccomp_1080(conf, compiler, T7_);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA2_: ;
}BeforeRet_: ;
return result;
}
static N_INLINE(NI, nanosecond__pureZtimes_1197)(tyObject_DateTime__d9cK9cyKZPJJxFXUmx8dSpPw* dt) {
NI result;
result = (NI)0;
result = (*dt).nanosecond;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, getLinkCmd__extccomp_1237)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 output, NimStringV2 objfiles, NIM_BOOL isDllBuild, NIM_BOOL removeStaticFile) {
NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
{
NimStringV2 colontmpD_;
NimStringV2 colontmpD__2;
tyArray__yt5VDPNtUGx9cBkOVakHwdQ T10_;
if (!(((*conf).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw)8)))&63U)))!=0)) goto LA3_;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
{
if (!removeStaticFile) goto LA8_;
nosremoveFile(output);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
}
LA8_: ;
T10_[0] = TM__pZmXgBT0YcBrnAO6VUvpNQ_284;
colontmpD_ = nospquoteShell(output);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
T10_[1] = colontmpD_;
T10_[2] = TM__pZmXgBT0YcBrnAO6VUvpNQ_286;
T10_[3] = objfiles;
T10_[4] = TM__pZmXgBT0YcBrnAO6VUvpNQ_287;
colontmpD__2 = vccplatform__extccomp_972(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
T10_[5] = colontmpD__2;
result = nsuFormatOpenArray(CC__extccomp_539[((*conf).cCompiler)- 1].Field9, T10_, 6);
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
{
LA5_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___stdZassertions_13((&colontmpD_));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
goto LA1_;
LA3_: ;
{
NimStringV2 linkerExe;
NimStringV2 buildgui;
NimStringV2 builddll;
NimStringV2 exefile;
NimStringV2 mapfile;
NimStringV2 colontmpD__3;
tyTuple__7q7q3E6Oj24ZNVJb9aonhAg colontmpD__4;
NimStringV2 colontmpD__5;
NimStringV2 colontmpD__6;
NimStringV2 linkOptions;
NimStringV2 colontmpD__7;
NimStringV2 colontmpD__8;
NimStringV2 linkTmpl;
NimStringV2 colontmpD__9;
NimStringV2 colontmpD__10;
NimStringV2 colontmpD__11;
NimStringV2 colontmpD__12;
NimStringV2 colontmpD__13;
NimStringV2 colontmpD__14;
NimStringV2 T32_;
NimStringV2 T40_;
NimStringV2 T46_;
NimStringV2 T47_;
tyArray__rmMMhDIqORJzUU5zqeitSQ T52_;
NimStringV2 T53_;
tyArray__68WB4OcBspSFyW4LY9cOceA T54_;
linkerExe.len = 0; linkerExe.p = NIM_NIL;
buildgui.len = 0; buildgui.p = NIM_NIL;
builddll.len = 0; builddll.p = NIM_NIL;
exefile.len = 0; exefile.p = NIM_NIL;
mapfile.len = 0; mapfile.p = NIM_NIL;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
nimZeroMem((void*)(&colontmpD__4), sizeof(tyTuple__7q7q3E6Oj24ZNVJb9aonhAg));
colontmpD__5.len = 0; colontmpD__5.p = NIM_NIL;
colontmpD__6.len = 0; colontmpD__6.p = NIM_NIL;
linkOptions.len = 0; linkOptions.p = NIM_NIL;
colontmpD__7.len = 0; colontmpD__7.p = NIM_NIL;
colontmpD__8.len = 0; colontmpD__8.p = NIM_NIL;
linkTmpl.len = 0; linkTmpl.p = NIM_NIL;
colontmpD__9.len = 0; colontmpD__9.p = NIM_NIL;
colontmpD__10.len = 0; colontmpD__10.p = NIM_NIL;
colontmpD__11.len = 0; colontmpD__11.p = NIM_NIL;
colontmpD__12.len = 0; colontmpD__12.p = NIM_NIL;
colontmpD__13.len = 0; colontmpD__13.p = NIM_NIL;
colontmpD__14.len = 0; colontmpD__14.p = NIM_NIL;
linkerExe = getConfigVar__extccomp_703(conf, (*conf).cCompiler, TM__pZmXgBT0YcBrnAO6VUvpNQ_289);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
{
NimStringV2 T19_;
if (!(linkerExe.len == ((NI)0))) goto LA17_;
T19_.len = 0; T19_.p = NIM_NIL;
T19_ = getLinkerExe__extccomp_1104(conf, (*conf).cCompiler);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
eqsink___stdZassertions_19((&linkerExe), T19_);
}
LA17_: ;
{
NIM_BOOL T22_;
NimStringV2 T25_;
T22_ = (NIM_BOOL)0;
T22_ = needsExeExt__extccomp_991(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
if (!T22_) goto LA23_;
T25_.len = 0; T25_.p = NIM_NIL;
T25_ = nosaddFileExt(linkerExe, TM__pZmXgBT0YcBrnAO6VUvpNQ_290);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
eqsink___stdZassertions_19((&linkerExe), T25_);
}
LA23_: ;
{
NIM_BOOL T28_;
T28_ = (NIM_BOOL)0;
T28_ = noAbsolutePaths__extccomp_928(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
if (!T28_) goto LA29_;
result = linkerExe;
linkerExe.len = 0; linkerExe.p = NIM_NIL;
}
goto LA26_;
LA29_: ;
{
result = nosjoinPath((*conf).cCompilerPath, linkerExe);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
}
LA26_: ;
T32_.len = 0; T32_.p = NIM_NIL;
{
NIM_BOOL T35_;
T35_ = (NIM_BOOL)0;
T35_ = (((*conf).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw)9)))&63U)))!=0);
if (!(T35_)) goto LA36_;
T35_ = ((*conf).target.targetOS == ((tyEnum_TSystemOS__iZn2NSk2cFW6r5TYhTTIjg)2));
LA36_: ;
if (!T35_) goto LA37_;
eqcopy___stdZassertions_16((&buildgui), CC__extccomp_539[((*conf).cCompiler)- 1].Field7);
}
goto LA33_;
LA37_: ;
{
buildgui = TM__pZmXgBT0YcBrnAO6VUvpNQ_291;
}
LA33_: ;
T40_.len = 0; T40_.p = NIM_NIL;
{
if (!isDllBuild) goto LA43_;
eqcopy___stdZassertions_16((&builddll), CC__extccomp_539[((*conf).cCompiler)- 1].Field8);
}
goto LA41_;
LA43_: ;
{
builddll = TM__pZmXgBT0YcBrnAO6VUvpNQ_292;
}
LA41_: ;
exefile = nospquoteShell(output);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
colontmpD__3 = getNimcacheDir__options_5056(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
T46_.len = 0; T46_.p = NIM_NIL;
colontmpD__4 = splitFile__pathutils_31(output);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
T46_ = rawNewString(colontmpD__4.Field1.len + 4);
appendString((&T46_), colontmpD__4.Field1);
appendString((&T46_), TM__pZmXgBT0YcBrnAO6VUvpNQ_294);
colontmpD__5 = T46_;
colontmpD__6 = slash___pathutils_103(colontmpD__3, colontmpD__5);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
mapfile = nospquoteShell(colontmpD__6);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
T47_.len = 0; T47_.p = NIM_NIL;
colontmpD__7 = getLinkOptions__extccomp_980(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
colontmpD__8 = getConfigVar__extccomp_703(conf, (*conf).cCompiler, TM__pZmXgBT0YcBrnAO6VUvpNQ_296);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
T47_ = rawNewString(colontmpD__7.len + colontmpD__8.len + 1);
appendString((&T47_), colontmpD__7);
appendString((&T47_), TM__pZmXgBT0YcBrnAO6VUvpNQ_295);
appendString((&T47_), colontmpD__8);
linkOptions = T47_;
linkTmpl = getConfigVar__extccomp_703(conf, (*conf).cCompiler, TM__pZmXgBT0YcBrnAO6VUvpNQ_298);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
{
if (!(linkTmpl.len == ((NI)0))) goto LA50_;
eqcopy___stdZassertions_16((&linkTmpl), CC__extccomp_539[((*conf).cCompiler)- 1].Field11);
}
LA50_: ;
T52_[0] = TM__pZmXgBT0YcBrnAO6VUvpNQ_300;
T52_[1] = builddll;
T52_[2] = TM__pZmXgBT0YcBrnAO6VUvpNQ_302;
T52_[3] = mapfile;
T52_[4] = TM__pZmXgBT0YcBrnAO6VUvpNQ_304;
T52_[5] = buildgui;
T52_[6] = TM__pZmXgBT0YcBrnAO6VUvpNQ_305;
T52_[7] = linkOptions;
T52_[8] = TM__pZmXgBT0YcBrnAO6VUvpNQ_306;
T52_[9] = objfiles;
T52_[10] = TM__pZmXgBT0YcBrnAO6VUvpNQ_308;
T52_[11] = exefile;
T52_[12] = TM__pZmXgBT0YcBrnAO6VUvpNQ_309;
colontmpD__9 = getPrefixDir__options_4965(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
T52_[13] = colontmpD__9;
T52_[14] = TM__pZmXgBT0YcBrnAO6VUvpNQ_310;
T52_[15] = (*conf).libpath;
colontmpD__10 = nsuFormatOpenArray(result, T52_, 16);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
T53_.len = 0; T53_.p = NIM_NIL;
T53_ = nospquoteShell(colontmpD__10);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
eqsink___stdZassertions_19((&result), T53_);
nimAddCharV1((&result), 32);
T54_[0] = TM__pZmXgBT0YcBrnAO6VUvpNQ_311;
T54_[1] = builddll;
T54_[2] = TM__pZmXgBT0YcBrnAO6VUvpNQ_312;
T54_[3] = mapfile;
T54_[4] = TM__pZmXgBT0YcBrnAO6VUvpNQ_313;
T54_[5] = buildgui;
T54_[6] = TM__pZmXgBT0YcBrnAO6VUvpNQ_314;
T54_[7] = linkOptions;
T54_[8] = TM__pZmXgBT0YcBrnAO6VUvpNQ_315;
T54_[9] = objfiles;
T54_[10] = TM__pZmXgBT0YcBrnAO6VUvpNQ_316;
T54_[11] = exefile;
T54_[12] = TM__pZmXgBT0YcBrnAO6VUvpNQ_317;
colontmpD__11 = getPrefixDir__options_4965(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
colontmpD__12 = nospquoteShell(colontmpD__11);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
T54_[13] = colontmpD__12;
T54_[14] = TM__pZmXgBT0YcBrnAO6VUvpNQ_318;
colontmpD__13 = nospquoteShell((*conf).libpath);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
T54_[15] = colontmpD__13;
T54_[16] = TM__pZmXgBT0YcBrnAO6VUvpNQ_319;
colontmpD__14 = vccplatform__extccomp_972(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
T54_[17] = colontmpD__14;
nsuAddf((&result), linkTmpl, T54_, 18);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
{
NIM_BOOL T57_;
tyObject_DateTime__d9cK9cyKZPJJxFXUmx8dSpPw t;
NimStringV2 pdb;
NimStringV2 colontmpD__15;
NimStringV2 colontmpD__16;
NimStringV2 colontmpD__17;
NimStringV2 T61_;
NI T62_;
NimStringV2 T63_;
T57_ = (NIM_BOOL)0;
T57_ = hcrOn__options_588(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
if (!(T57_)) goto LA58_;
T57_ = isVSCompatible__extccomp_648(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
LA58_: ;
if (!T57_) goto LA59_;
nimZeroMem((void*)(&t), sizeof(tyObject_DateTime__d9cK9cyKZPJJxFXUmx8dSpPw));
t.Sup.m_type = (&NTIv2__d9cK9cyKZPJJxFXUmx8dSpPw_);
pdb.len = 0; pdb.p = NIM_NIL;
colontmpD__15.len = 0; colontmpD__15.p = NIM_NIL;
colontmpD__16.len = 0; colontmpD__16.p = NIM_NIL;
colontmpD__17.len = 0; colontmpD__17.p = NIM_NIL;
now__pureZtimes_1691((&t));
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
T61_.len = 0; T61_.p = NIM_NIL;
colontmpD__15 = format__extccomp_1264((&t));
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
T62_ = (NI)0;
T62_ = nanosecond__pureZtimes_1197((&t));
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
colontmpD__16 = dollar___systemZdollars_3(((NI) (T62_)));
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
T61_ = rawNewString(output.len + colontmpD__15.len + colontmpD__16.len + 5);
appendString((&T61_), output);
appendString((&T61_), TM__pZmXgBT0YcBrnAO6VUvpNQ_320);
appendString((&T61_), colontmpD__15);
appendString((&T61_), colontmpD__16);
appendString((&T61_), TM__pZmXgBT0YcBrnAO6VUvpNQ_322);
pdb = T61_;
T63_.len = 0; T63_.p = NIM_NIL;
T63_ = rawNewString(pdb.len + 12);
appendString((&T63_), TM__pZmXgBT0YcBrnAO6VUvpNQ_324);
appendString((&T63_), pdb);
colontmpD__17 = T63_;
prepareAdd((&result), colontmpD__17.len + 0);
appendString((&result), colontmpD__17);
eqdestroy___stdZassertions_13((&colontmpD__17));
eqdestroy___stdZassertions_13((&colontmpD__16));
eqdestroy___stdZassertions_13((&colontmpD__15));
eqdestroy___stdZassertions_13((&pdb));
eqdestroy___pureZtimes_1412((&t));
}
LA59_: ;
{
LA14_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__14));
eqdestroy___stdZassertions_13((&colontmpD__13));
eqdestroy___stdZassertions_13((&colontmpD__12));
eqdestroy___stdZassertions_13((&colontmpD__11));
eqdestroy___stdZassertions_13((&colontmpD__10));
eqdestroy___stdZassertions_13((&colontmpD__9));
eqdestroy___stdZassertions_13((&linkTmpl));
eqdestroy___stdZassertions_13((&colontmpD__8));
eqdestroy___stdZassertions_13((&colontmpD__7));
eqdestroy___stdZassertions_13((&linkOptions));
eqdestroy___stdZassertions_13((&colontmpD__6));
eqdestroy___stdZassertions_13((&colontmpD__5));
eqdestroy___pathutils_55((&colontmpD__4));
eqdestroy___stdZassertions_13((&colontmpD__3));
eqdestroy___stdZassertions_13((&mapfile));
eqdestroy___stdZassertions_13((&exefile));
eqdestroy___stdZassertions_13((&builddll));
eqdestroy___stdZassertions_13((&buildgui));
eqdestroy___stdZassertions_13((&linkerExe));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA1_: ;
{
NIM_BOOL T68_;
T68_ = (NIM_BOOL)0;
T68_ = (((*conf).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw)6)))&63U)))!=0);
if (!(T68_)) goto LA69_;
T68_ = ((*conf).cCompiler == ((tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g)6));
LA69_: ;
if (!T68_) goto LA70_;
prepareAdd((&result), 12);
appendString((&result), TM__pZmXgBT0YcBrnAO6VUvpNQ_326);
}
LA70_: ;
}BeforeRet_: ;
return result;
}
static N_INLINE(NCSTRING, nimToCStringConv)(NimStringV2 s) {
NCSTRING result;
result = (NCSTRING)0;
{
if (!(s.len == ((NI)0))) goto LA3_;
result = "";
}
goto LA1_;
LA3_: ;
{
result = ((NCSTRING) ((*s.p).data));
}
LA1_: ;
return result;
}
static N_INLINE(tySequence__sM4lkSb7zS6F7OVMvW9cffQ, map__extccomp_1515)(NimStringV2* s, NI sLen_0, tyProc__oFHfEKFsiYTMAy9a42cSiKw op) {
tySequence__sM4lkSb7zS6F7OVMvW9cffQ result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
newSeq__system_3408((&result), ((NI) (sLen_0)));
{
NI i;
NI colontmp_;
NI i_2;
i = (NI)0;
colontmp_ = (NI)0;
colontmp_ = sLen_0;
i_2 = ((NI)0);
{
while (1) {
NimStringV2 T4_;
if (!(i_2 < colontmp_)) goto LA3 ;
i = i_2;
T4_.len = 0; T4_.p = NIM_NIL;
T4_ = op.ClE_0? op.ClP_0(s[i], op.ClE_0):((TM__pZmXgBT0YcBrnAO6VUvpNQ_330)(op.ClP_0))(s[i]);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqsink___stdZassertions_19((&result.p->data[i]), T4_);
i_2 += ((NI)1);
} LA3: ;
}
}
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringV2, colonanonymous___extccomp_1511)(NimStringV2 curr) {
NimStringV2 result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
result.len = 0; result.p = NIM_NIL;
result = nsuReplaceStr(curr, TM__pZmXgBT0YcBrnAO6VUvpNQ_331, TM__pZmXgBT0YcBrnAO6VUvpNQ_333);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
goto BeforeRet_;
}BeforeRet_: ;
return result;
}
N_LIB_PRIVATE N_NIMCALL(tySequence__sM4lkSb7zS6F7OVMvW9cffQ, getExtraCmds__extccomp_1289)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 output) {
tySequence__sM4lkSb7zS6F7OVMvW9cffQ result;
result.len = 0; result.p = NIM_NIL;
return result;
}
N_LIB_PRIVATE N_NIMCALL(void, execExternalProgram__extccomp_905)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 cmd, tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA msg) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
{
NI T3_;
NimStringV2 colontmpD_;
NimStringV2 colontmpD__2;
T3_ = (NI)0;
T3_ = execWithEcho__extccomp_892(conf, cmd, msg);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
if (!!((T3_ == ((NI)0)))) goto LA4_;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
eqcopy___stdZassertions_16((&colontmpD_), cmd);
colontmpD__2 = nsuFormatSingleElem(TM__pZmXgBT0YcBrnAO6VUvpNQ_337, colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
liMessage__msgs_1172(conf, unknownLineInfo__lineinfos_338, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD__2, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)1), TM__pZmXgBT0YcBrnAO6VUvpNQ_338, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA6_;
{
LA6_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__2));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA4_: ;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, execLinkCmd__extccomp_1293)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 linkCmd) {
NIM_BOOL oldNimErrFin5_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
execExternalProgram__extccomp_905(conf, linkCmd, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)100));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (NIM_UNLIKELY(*nimErr_)) {
LA1_:;
if (isObjDisplayCheck(nimBorrowCurrentException()->Sup.m_type, 3, 3829286656)) {
tyObject_OSError__PeQ9bR8XhClb9cp9cbW28aSyw* oseX60gensym58_;
Exception* T6_;
*nimErr_ = NIM_FALSE;
oseX60gensym58_ = NIM_NIL;
T6_ = NIM_NIL;
T6_ = getCurrentException();
oseX60gensym58_ = ((tyObject_OSError__PeQ9bR8XhClb9cp9cbW28aSyw*) (T6_));
{
NimStringV2 colontmpD_;
NimStringV2 colontmpD__2;
NimStringV2 T12_;
NimStringV2 T13_;
if (!NIM_TRUE) goto LA9_;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
T12_.len = 0; T12_.p = NIM_NIL;
T13_.len = 0; T13_.p = NIM_NIL;
T13_ = dollar___systemZdollars_3(((NI) ((*oseX60gensym58_).errorCode)));
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
colontmpD_ = T13_;
T12_ = rawNewString((*oseX60gensym58_).Sup.Sup.message.len + colontmpD_.len + 47);
appendString((&T12_), TM__pZmXgBT0YcBrnAO6VUvpNQ_340);
appendString((&T12_), (*oseX60gensym58_).Sup.Sup.message);
appendString((&T12_), TM__pZmXgBT0YcBrnAO6VUvpNQ_341);
appendString((&T12_), colontmpD_);
colontmpD__2 = T12_;
liMessage__msgs_1172(conf, unknownLineInfo__lineinfos_338, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD__2, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)1), TM__pZmXgBT0YcBrnAO6VUvpNQ_267, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA11_;
{
LA11_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___stdZassertions_13((&colontmpD_));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
}
goto LA7_;
LA9_: ;
{
NimStringV2 colontmpD__3;
NimStringV2 colontmpD__4;
NimStringV2 T18_;
NimStringV2 T19_;
NimStringV2 T20_;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
T18_.len = 0; T18_.p = NIM_NIL;
T19_.len = 0; T19_.p = NIM_NIL;
T19_ = dollar___systemZdollars_3(((NI) ((*oseX60gensym58_).errorCode)));
if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
colontmpD__3 = T19_;
T18_ = rawNewString((*oseX60gensym58_).Sup.Sup.message.len + colontmpD__3.len + 1);
appendString((&T18_), (*oseX60gensym58_).Sup.Sup.message);
appendString((&T18_), TM__pZmXgBT0YcBrnAO6VUvpNQ_343);
appendString((&T18_), colontmpD__3);
T20_.len = 0; T20_.p = NIM_NIL;
T20_ = nsuFormatSingleElem(TM__pZmXgBT0YcBrnAO6VUvpNQ_342, T18_);
if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
colontmpD__4 = T20_;
liMessage__msgs_1172(conf, unknownLineInfo__lineinfos_338, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD__4, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)1), TM__pZmXgBT0YcBrnAO6VUvpNQ_271, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA17_;
{
LA17_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__4));
eqdestroy___stdZassertions_13((&colontmpD__3));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA5_;
}
LA7_: ;
reraiseException();
goto LA5_;
{
LA5_:;
}
{
oldNimErrFin5_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___stdZoserrors_45(&oseX60gensym58_);
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
*nimErr_ = oldNimErrFin5_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
popCurrentException();
LA3_:;
}
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, linkViaResponseFile__extccomp_1322)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 cmd) {
NimStringV2 linkerArgs;
NimStringV2 args;
NI i;
NI last;
NimStringV2 T21_;
NimStringV2 colontmpD__2;
NimStringV2 colontmpD__3;
NimStringV2 T34_;
NIM_BOOL oldNimErrFin32_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
linkerArgs.len = 0; linkerArgs.p = NIM_NIL;
args.len = 0; args.p = NIM_NIL;
i = ((NI)0);
last = ((NI)0);
{
NIM_BOOL T4_;
T4_ = (NIM_BOOL)0;
T4_ = (((NI)0) < cmd.len);
if (!(T4_)) goto LA5_;
T4_ = ((NU8)(cmd.p->data[((NI)0)]) == (NU8)(34));
LA5_: ;
if (!T4_) goto LA6_;
i += ((NI)1);
{
while (1) {
NIM_BOOL T10_;
T10_ = (NIM_BOOL)0;
T10_ = (i < cmd.len);
if (!(T10_)) goto LA11_;
T10_ = !(((NU8)(cmd.p->data[i]) == (NU8)(34)));
LA11_: ;
if (!T10_) goto LA9 ;
i += ((NI)1);
} LA9: ;
}
last = i;
i += ((NI)1);
}
goto LA2_;
LA6_: ;
{
{
while (1) {
NIM_BOOL T15_;
T15_ = (NIM_BOOL)0;
T15_ = (i < cmd.len);
if (!(T15_)) goto LA16_;
T15_ = !(((NU8)(cmd.p->data[i]) == (NU8)(32)));
LA16_: ;
if (!T15_) goto LA14 ;
i += ((NI)1);
} LA14: ;
}
last = i;
}
LA2_: ;
{
while (1) {
NIM_BOOL T19_;
T19_ = (NIM_BOOL)0;
T19_ = (i < cmd.len);
if (!(T19_)) goto LA20_;
T19_ = ((NU8)(cmd.p->data[i]) == (NU8)(32));
LA20_: ;
if (!T19_) goto LA18 ;
i += ((NI)1);
} LA18: ;
}
T21_.len = 0; T21_.p = NIM_NIL;
T21_ = rawNewString((*conf).projectName.len + 15);
appendString((&T21_), (*conf).projectName);
appendString((&T21_), TM__pZmXgBT0YcBrnAO6VUvpNQ_336);
linkerArgs = T21_;
args = substr__system_7550(cmd, i);
{
NIM_BOOL T24_;
NimStringV2 colontmpD_;
T24_ = (NIM_BOOL)0;
T24_ = ((*conf).cCompiler == ((tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g)1));
if (T24_) goto LA25_;
T24_ = ((*conf).cCompiler == ((tyEnum_TSystemCC__dgUCsRcxVc28Cqkdlw0u8g)4));
LA25_: ;
if (!T24_) goto LA26_;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD_ = nsuReplaceChar(args, 92, 47);
if (NIM_UNLIKELY(*nimErr_)) goto LA28_;
writeFile__stdZsyncio_482(linkerArgs, colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto LA28_;
{
LA28_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD_));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
goto LA22_;
LA26_: ;
{
writeFile__stdZsyncio_482(linkerArgs, args);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA22_: ;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
T34_.len = 0; T34_.p = NIM_NIL;
colontmpD__2 = substr__system_7538(cmd, ((NI)0), last);
T34_ = rawNewString(colontmpD__2.len + linkerArgs.len + 2);
appendString((&T34_), colontmpD__2);
appendString((&T34_), TM__pZmXgBT0YcBrnAO6VUvpNQ_345);
appendString((&T34_), linkerArgs);
colontmpD__3 = T34_;
execLinkCmd__extccomp_1293(conf, colontmpD__3);
if (NIM_UNLIKELY(*nimErr_)) goto LA33_;
{
LA33_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__3));
eqdestroy___stdZassertions_13((&colontmpD__2));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA32_;
{
LA32_:;
}
{
oldNimErrFin32_ = *nimErr_; *nimErr_ = NIM_FALSE;
nosremoveFile(linkerArgs);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
*nimErr_ = oldNimErrFin32_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
LA1_:;
}
{
eqdestroy___stdZassertions_13((&args));
eqdestroy___stdZassertions_13((&linkerArgs));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, generateScript__extccomp_909)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 script) {
tyTuple__7q7q3E6Oj24ZNVJb9aonhAg colontmp_;
NimStringV2 _;
NimStringV2 name;
NimStringV2 __2;
NimStringV2 filename;
NimStringV2 colontmpD_;
NimStringV2 colontmpD__2;
NimStringV2 colontmpD__3;
NimStringV2 T2_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
nimZeroMem((void*)(&colontmp_), sizeof(tyTuple__7q7q3E6Oj24ZNVJb9aonhAg));
_.len = 0; _.p = NIM_NIL;
name.len = 0; name.p = NIM_NIL;
__2.len = 0; __2.p = NIM_NIL;
filename.len = 0; filename.p = NIM_NIL;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
colontmp_ = nossplitFile((*conf).outFile);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
_ = colontmp_.Field0;
name = colontmp_.Field1;
__2 = colontmp_.Field2;
colontmpD_ = getNimcacheDir__options_5056(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T2_.len = 0; T2_.p = NIM_NIL;
T2_ = rawNewString(name.len + 8);
appendString((&T2_), TM__pZmXgBT0YcBrnAO6VUvpNQ_349);
appendString((&T2_), name);
colontmpD__2 = T2_;
colontmpD__3 = nosaddFileExt(colontmpD__2, OS__platform_520[((*conf).target.targetOS)- 1].Field8);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
filename = slash___pathutils_103(colontmpD_, colontmpD__3);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NIM_BOOL T5_;
NimStringV2 colontmpD__4;
NimStringV2 T9_;
T5_ = (NIM_BOOL)0;
T5_ = writeRope__ropes_26(script, filename);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!!(T5_)) goto LA6_;
colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
T9_.len = 0; T9_.p = NIM_NIL;
T9_ = rawNewString(filename.len + 25);
appendString((&T9_), TM__pZmXgBT0YcBrnAO6VUvpNQ_350);
appendString((&T9_), filename);
colontmpD__4 = T9_;
liMessage__msgs_1172(conf, unknownLineInfo__lineinfos_338, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD__4, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)1), TM__pZmXgBT0YcBrnAO6VUvpNQ_351, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA8_;
{
LA8_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__4));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA6_: ;
{
LA1_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__3));
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___stdZassertions_13((&colontmpD_));
eqdestroy___stdZassertions_13((&filename));
eqdestroy___stdZassertions_13((&__2));
eqdestroy___stdZassertions_13((&name));
eqdestroy___stdZassertions_13((&_));
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, callCCompiler__extccomp_1382)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf) {
tyObject_Env_extccompdotnim_callCCompiler___BcZEqupvBAThTu8RE6k9aJA* colonenv_;
NimStringV2 linkCmd;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ extraCmds;
NimStringV2 script;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ cmds;
tyProc__SqRJqa5aOiKB4EuKlKh9asA prettyCb;
tyObject_Env_extccompdotnim_callCCompiler___BcZEqupvBAThTu8RE6k9aJA* colontmpD_;
tyObject_Env_extccompdotnim_callCCompiler___BcZEqupvBAThTu8RE6k9aJA* T2_;
tyProc__SqRJqa5aOiKB4EuKlKh9asA T7_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
colonenv_ = NIM_NIL;
linkCmd.len = 0; linkCmd.p = NIM_NIL;
extraCmds.len = 0; extraCmds.p = NIM_NIL;
script.len = 0; script.p = NIM_NIL;
cmds.len = 0; cmds.p = NIM_NIL;
nimZeroMem((void*)(&prettyCb), sizeof(tyProc__SqRJqa5aOiKB4EuKlKh9asA));
colontmpD_ = NIM_NIL;
T2_ = NIM_NIL;
T2_ = (tyObject_Env_extccompdotnim_callCCompiler___BcZEqupvBAThTu8RE6k9aJA*) nimNewObj(sizeof(tyObject_Env_extccompdotnim_callCCompiler___BcZEqupvBAThTu8RE6k9aJA), NIM_ALIGNOF(tyObject_Env_extccompdotnim_callCCompiler___BcZEqupvBAThTu8RE6k9aJA));
(*T2_).Sup.m_type = (&NTIv2__BcZEqupvBAThTu8RE6k9aJA_);
colonenv_ = T2_;
eqcopy___options_3378(&(*colonenv_).conf2, conf);
{
if (!(((*(*colonenv_).conf2).globalOptions & 1040) == 16)) goto LA5_;
eqdestroy___pureZosproc_528((&prettyCb));
eqdestroy___system_3530((&cmds));
eqdestroy___stdZassertions_13((&script));
eqdestroy___system_3530((&extraCmds));
eqdestroy___stdZassertions_13((&linkCmd));
eqdestroy___extccomp_3026(&colonenv_);
goto BeforeRet_;
}
LA5_: ;
script = TM__pZmXgBT0YcBrnAO6VUvpNQ_247;
colontmpD_ = 0;
eqcopy___extccomp_3029(&colontmpD_, colonenv_, NIM_TRUE);
nimZeroMem((void*)(&T7_), sizeof(tyProc__SqRJqa5aOiKB4EuKlKh9asA));
T7_.ClP_0 = colonanonymous___extccomp_1397; T7_.ClE_0 = colontmpD_;
prettyCb.ClE_0 = T7_.ClE_0;
prettyCb.ClP_0 = T7_.ClP_0;
{
tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ it;
NI idx;
NI i;
NI L;
NI T10_;
nimZeroMem((void*)(&it), sizeof(tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ));
idx = (NI)0;
i = ((NI)0);
T10_ = (*(*colonenv_).conf2).toCompile.len;
L = T10_;
{
while (1) {
if (!(i < L)) goto LA12 ;
idx = i;
eqcopy___options_3037((&it), (&(*(*colonenv_).conf2).toCompile.p->data[i]));
{
NimStringV2 compileCmd;
NI T19_;
compileCmd.len = 0; compileCmd.p = NIM_NIL;
{
if (!((it.flags &((NU8)1<<((NU)((((tyEnum_CfileFlag__quKxtOiNkuU9aFwgmRK07Og)0)))&7U)))!=0)) goto LA17_;
eqdestroy___stdZassertions_13((&compileCmd));
goto LA13;
}
LA17_: ;
T19_ = (*(*colonenv_).conf2).toCompile.len;
compileCmd = getCompileCFileCmd__extccomp_1116((*colonenv_).conf2, (&it), (idx == (NI)(T19_ - ((NI)1))), NIM_TRUE);
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
{
NimStringV2 colontmpD__2;
NimStringV2 colontmpD__3;
NimStringV2 T25_;
if (!!((((*(*colonenv_).conf2).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw)4)))&63U)))!=0))) goto LA22_;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
eqcopy___stdZassertions_16((&colontmpD__2), compileCmd);
add__stdZenumutils_69((&cmds), colontmpD__2);
colontmpD__3 = dollar___options_5279(it.cname);
if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
T25_.len = 0; T25_.p = NIM_NIL;
T25_ = displayProgressCC__extccomp_1373((*colonenv_).conf2, colontmpD__3, compileCmd);
if (NIM_UNLIKELY(*nimErr_)) goto LA24_;
add__stdZenumutils_69((&(*colonenv_).prettyCmds1), T25_);
{
LA24_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__3));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA14_;
}
LA22_: ;
{
if (!(((*(*colonenv_).conf2).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw)10)))&63U)))!=0)) goto LA30_;
prepareAdd((&script), compileCmd.len + 0);
appendString((&script), compileCmd);
prepareAdd((&script), 1);
appendString((&script), TM__pZmXgBT0YcBrnAO6VUvpNQ_253);
}
LA30_: ;
{
LA14_:;
}
{
eqdestroy___stdZassertions_13((&compileCmd));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA9_;
} LA13: ;
i += ((NI)1);
} LA12: ;
}
{
LA9_:;
}
{
eqdestroy___options_3034((&it));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
{
if (!!((((*(*colonenv_).conf2).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw)4)))&63U)))!=0))) goto LA38_;
execCmdsInParallel__extccomp_1298((*colonenv_).conf2, cmds, prettyCb);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA38_: ;
{
NimStringV2 objfiles;
if (!!((((*(*colonenv_).conf2).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw)5)))&63U)))!=0))) goto LA42_;
objfiles.len = 0; objfiles.p = NIM_NIL;
objfiles = TM__pZmXgBT0YcBrnAO6VUvpNQ_281;
{
NimStringV2* it_2;
NI i_2;
NI L_2;
NI T46_;
it_2 = (NimStringV2*)0;
i_2 = ((NI)0);
T46_ = (*(*colonenv_).conf2).externalToLink.len;
L_2 = T46_;
{
while (1) {
NimStringV2 objFile;
NimStringV2 colontmpD__4;
NimStringV2 colontmpD__5;
NimStringV2 T49_;
if (!(i_2 < L_2)) goto LA48 ;
objFile.len = 0; objFile.p = NIM_NIL;
colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
colontmpD__5.len = 0; colontmpD__5.p = NIM_NIL;
it_2 = (&(*(*colonenv_).conf2).externalToLink.p->data[i_2]);
T49_.len = 0; T49_.p = NIM_NIL;
{
NIM_BOOL T52_;
T52_ = (NIM_BOOL)0;
T52_ = noAbsolutePaths__extccomp_928((*colonenv_).conf2);
if (NIM_UNLIKELY(*nimErr_)) goto LA44_;
if (!T52_) goto LA53_;
objFile = nosextractFilename((*it_2));
if (NIM_UNLIKELY(*nimErr_)) goto LA44_;
}
goto LA50_;
LA53_: ;
{
eqcopy___stdZassertions_16((&objFile), (*it_2));
}
LA50_: ;
nimAddCharV1((&objfiles), 32);
colontmpD__4 = nosaddFileExt(objFile, CC__extccomp_539[((*(*colonenv_).conf2).cCompiler)- 1].Field1);
if (NIM_UNLIKELY(*nimErr_)) goto LA44_;
colontmpD__5 = nospquoteShell(colontmpD__4);
if (NIM_UNLIKELY(*nimErr_)) goto LA44_;
prepareAdd((&objfiles), colontmpD__5.len + 0);
appendString((&objfiles), colontmpD__5);
i_2 += ((NI)1);
eqdestroy___stdZassertions_13((&colontmpD__5));
eqdestroy___stdZassertions_13((&colontmpD__4));
eqdestroy___stdZassertions_13((&objFile));
} LA48: ;
}
}
{
NIM_BOOL T58_;
NI mainFileIdx;
NI T61_;
tyProc__oFHfEKFsiYTMAy9a42cSiKw T103_;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ T104_;
T58_ = (NIM_BOOL)0;
T58_ = hcrOn__options_588((*colonenv_).conf2);
if (NIM_UNLIKELY(*nimErr_)) goto LA44_;
if (!T58_) goto LA59_;
cmds.len = 0; cmds.p = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ_Content*) newSeqPayload(0, sizeof(NimStringV2), NIM_ALIGNOF(NimStringV2));
T61_ = (*(*colonenv_).conf2).toCompile.len;
mainFileIdx = (NI)(T61_ - ((NI)1));
{
tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ x;
NI idx_2;
NI i_3;
NI L_3;
NI T64_;
nimZeroMem((void*)(&x), sizeof(tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ));
idx_2 = (NI)0;
i_3 = ((NI)0);
T64_ = (*(*colonenv_).conf2).toCompile.len;
L_3 = T64_;
{
while (1) {
if (!(i_3 < L_3)) goto LA66 ;
idx_2 = i_3;
eqcopy___options_3037((&x), (&(*(*colonenv_).conf2).toCompile.p->data[i_3]));
{
NimStringV2 objFile_2;
NimStringV2 linkTarget;
NimStringV2 colontmpD__6;
NimStringV2 colontmpD__7;
NIM_BOOL buildDll;
NimStringV2 T73_;
NimStringV2 T74_;
objFile_2.len = 0; objFile_2.p = NIM_NIL;
linkTarget.len = 0; linkTarget.p = NIM_NIL;
colontmpD__6.len = 0; colontmpD__6.p = NIM_NIL;
colontmpD__7.len = 0; colontmpD__7.p = NIM_NIL;
{
if (!((x.flags &((NU8)1<<((NU)((((tyEnum_CfileFlag__quKxtOiNkuU9aFwgmRK07Og)0)))&7U)))!=0)) goto LA71_;
eqdestroy___stdZassertions_13((&colontmpD__7));
eqdestroy___stdZassertions_13((&colontmpD__6));
eqdestroy___stdZassertions_13((&linkTarget));
eqdestroy___stdZassertions_13((&objFile_2));
goto LA67;
}
LA71_: ;
objFile_2 = getObjFilePath__extccomp_1362((*colonenv_).conf2, (&x));
if (NIM_UNLIKELY(*nimErr_)) goto LA68_;
buildDll = !((idx_2 == mainFileIdx));
linkTarget = hcrLinkTargetName__extccomp_1366((*colonenv_).conf2, objFile_2, !(buildDll));
if (NIM_UNLIKELY(*nimErr_)) goto LA68_;
T73_.len = 0; T73_.p = NIM_NIL;
colontmpD__6 = nospquoteShell(objFile_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA68_;
T73_ = rawNewString(objfiles.len + colontmpD__6.len + 1);
appendString((&T73_), objfiles);
appendString((&T73_), TM__pZmXgBT0YcBrnAO6VUvpNQ_327);
appendString((&T73_), colontmpD__6);
colontmpD__7 = T73_;
T74_.len = 0; T74_.p = NIM_NIL;
T74_ = getLinkCmd__extccomp_1237((*colonenv_).conf2, linkTarget, colontmpD__7, buildDll, NIM_TRUE);
if (NIM_UNLIKELY(*nimErr_)) goto LA68_;
add__stdZenumutils_69((&cmds), T74_);
{
NIM_BOOL T77_;
T77_ = (NIM_BOOL)0;
T77_ = isVSCompatible__extccomp_648((*colonenv_).conf2);
if (NIM_UNLIKELY(*nimErr_)) goto LA68_;
if (!T77_) goto LA78_;
{
NimStringV2 pdb;
NimStringV2 colontmpD__8;
NimStringV2 colontmp_;
NimStringV2 T81_;
glob_t fX60gensym5_;
NI resX60gensym5_;
int T82_;
pdb.len = 0; pdb.p = NIM_NIL;
colontmpD__8.len = 0; colontmpD__8.p = NIM_NIL;
colontmp_.len = 0; colontmp_.p = NIM_NIL;
colontmpD__8.len = 0; colontmpD__8.p = NIM_NIL;
pdb = colontmpD__8;
colontmp_.len = 0; colontmp_.p = NIM_NIL;
T81_.len = 0; T81_.p = NIM_NIL;
T81_ = rawNewString(objFile_2.len + 6);
appendString((&T81_), objFile_2);
appendString((&T81_), TM__pZmXgBT0YcBrnAO6VUvpNQ_329);
colontmp_ = T81_;
nimZeroMem((void*)(&fX60gensym5_), sizeof(glob_t));
resX60gensym5_ = (NI)0;
fX60gensym5_.gl_offs = ((NI)0);
fX60gensym5_.gl_pathc = ((NI)0);
fX60gensym5_.gl_pathv = ((NCSTRING*) NIM_NIL);
T82_ = (int)0;
T82_ = glob(nimToCStringConv(colontmp_), ((int)0), NIM_NIL, (&fX60gensym5_));
resX60gensym5_ = ((NI) (T82_));
{
if (!(resX60gensym5_ == ((NI)0))) goto LA86_;
{
NI iX60gensym5_;
NI colontmp__2;
NI res;
iX60gensym5_ = (NI)0;
colontmp__2 = (NI)0;
colontmp__2 = (NI)(fX60gensym5_.gl_pathc - ((NI)1));
res = ((NI)0);
{
while (1) {
NimStringV2 pathX60gensym5_;
if (!(res <= colontmp__2)) goto LA90 ;
pathX60gensym5_.len = 0; pathX60gensym5_.p = NIM_NIL;
iX60gensym5_ = res;
pathX60gensym5_ = cstrToNimstr(fX60gensym5_.gl_pathv[iX60gensym5_]);
{
NIM_BOOL T93_;
NIM_BOOL T96_;
T93_ = (NIM_BOOL)0;
T93_ = nosfileExists(pathX60gensym5_);
if (NIM_UNLIKELY(*nimErr_)) goto LA83_;
if (!T93_) goto LA94_;
pdb = pathX60gensym5_;
T96_ = (NIM_BOOL)0;
T96_ = nostryRemoveFile(pdb);
if (NIM_UNLIKELY(*nimErr_)) goto LA83_;
(void)(T96_);
}
LA94_: ;
res += ((NI)1);
eqdestroy___stdZassertions_13((&pathX60gensym5_));
} LA90: ;
}
}
}
LA86_: ;
{
LA83_:;
}
{
globfree((&fX60gensym5_));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA68_;
eqdestroy___stdZassertions_13((&colontmp_));
eqdestroy___stdZassertions_13((&colontmpD__8));
}
}
LA78_: ;
{
LA68_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__7));
eqdestroy___stdZassertions_13((&colontmpD__6));
eqdestroy___stdZassertions_13((&linkTarget));
eqdestroy___stdZassertions_13((&objFile_2));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA63_;
} LA67: ;
i_3 += ((NI)1);
} LA66: ;
}
{
LA63_:;
}
{
eqdestroy___options_3034((&x));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA44_;
}
nimZeroMem((void*)(&T103_), sizeof(tyProc__oFHfEKFsiYTMAy9a42cSiKw));
T103_.ClP_0 = ((TM__pZmXgBT0YcBrnAO6VUvpNQ_334) (colonanonymous___extccomp_1511)); T103_.ClE_0 = NIM_NIL;
T104_.len = 0; T104_.p = NIM_NIL;
T104_ = map__extccomp_1515((((*colonenv_).prettyCmds1).p) ? ((*colonenv_).prettyCmds1.p->data) : NIM_NIL, (*colonenv_).prettyCmds1.len, T103_);
if (NIM_UNLIKELY(*nimErr_)) goto LA44_;
eqsink___system_3536((&(*colonenv_).prettyCmds1), T104_);
execCmdsInParallel__extccomp_1298((*colonenv_).conf2, cmds, prettyCb);
if (NIM_UNLIKELY(*nimErr_)) goto LA44_;
{
NimStringV2 mainObjFile;
NimStringV2 src;
NimStringV2 dst;
if (!!((((*(*colonenv_).conf2).toCompile.p->data[mainFileIdx].flags &((NU8)1<<((NU)((((tyEnum_CfileFlag__quKxtOiNkuU9aFwgmRK07Og)0)))&7U)))!=0))) goto LA107_;
mainObjFile.len = 0; mainObjFile.p = NIM_NIL;
src.len = 0; src.p = NIM_NIL;
dst.len = 0; dst.p = NIM_NIL;
mainObjFile = getObjFilePath__extccomp_1362((*colonenv_).conf2, (&(*(*colonenv_).conf2).toCompile.p->data[mainFileIdx]));
if (NIM_UNLIKELY(*nimErr_)) goto LA109_;
src = hcrLinkTargetName__extccomp_1366((*colonenv_).conf2, mainObjFile, NIM_TRUE);
if (NIM_UNLIKELY(*nimErr_)) goto LA109_;
dst = prepareToWriteOutput__options_4962((*colonenv_).conf2);
if (NIM_UNLIKELY(*nimErr_)) goto LA109_;
copyFileWithPermissions__stdZprivateZosfiles_342(src, dst, NIM_TRUE, 2);
if (NIM_UNLIKELY(*nimErr_)) goto LA109_;
{
LA109_:;
}
{
eqdestroy___stdZassertions_13((&dst));
eqdestroy___stdZassertions_13((&src));
eqdestroy___stdZassertions_13((&mainObjFile));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA44_;
}
LA107_: ;
}
goto LA56_;
LA59_: ;
{
NimStringV2 mainOutput;
NimStringV2 T125_;
mainOutput.len = 0; mainOutput.p = NIM_NIL;
{
tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ* x_2;
NI i_4;
NI L_4;
NI T115_;
x_2 = (tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ*)0;
i_4 = ((NI)0);
T115_ = (*(*colonenv_).conf2).toCompile.len;
L_4 = T115_;
{
while (1) {
NimStringV2 objFile_3;
NimStringV2 colontmpD__9;
NimStringV2 T118_;
if (!(i_4 < L_4)) goto LA117 ;
objFile_3.len = 0; objFile_3.p = NIM_NIL;
colontmpD__9.len = 0; colontmpD__9.p = NIM_NIL;
x_2 = (&(*(*colonenv_).conf2).toCompile.p->data[i_4]);
T118_.len = 0; T118_.p = NIM_NIL;
{
NIM_BOOL T121_;
T121_ = (NIM_BOOL)0;
T121_ = noAbsolutePaths__extccomp_928((*colonenv_).conf2);
if (NIM_UNLIKELY(*nimErr_)) goto LA113_;
if (!T121_) goto LA122_;
objFile_3 = nosextractFilename((*x_2).obj);
if (NIM_UNLIKELY(*nimErr_)) goto LA113_;
}
goto LA119_;
LA122_: ;
{
NimStringV2 colontmpD__10;
colontmpD__10.len = 0; colontmpD__10.p = NIM_NIL;
colontmpD__10.len = 0; colontmpD__10.p = NIM_NIL;
eqcopy___stdZassertions_16((&colontmpD__10), (*x_2).obj);
objFile_3 = colontmpD__10;
}
LA119_: ;
nimAddCharV1((&objfiles), 32);
colontmpD__9 = nospquoteShell(objFile_3);
if (NIM_UNLIKELY(*nimErr_)) goto LA113_;
prepareAdd((&objfiles), colontmpD__9.len + 0);
appendString((&objfiles), colontmpD__9);
i_4 += ((NI)1);
eqdestroy___stdZassertions_13((&colontmpD__9));
eqdestroy___stdZassertions_13((&objFile_3));
} LA117: ;
}
}
T125_.len = 0; T125_.p = NIM_NIL;
{
if (!!((((*(*colonenv_).conf2).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw)10)))&63U)))!=0))) goto LA128_;
mainOutput = prepareToWriteOutput__options_4962((*colonenv_).conf2);
if (NIM_UNLIKELY(*nimErr_)) goto LA113_;
}
goto LA126_;
LA128_: ;
{
NimStringV2 colontmpD__11;
colontmpD__11.len = 0; colontmpD__11.p = NIM_NIL;
colontmpD__11.len = 0; colontmpD__11.p = NIM_NIL;
eqcopy___stdZassertions_16((&colontmpD__11), (*(*colonenv_).conf2).outFile);
mainOutput = colontmpD__11;
}
LA126_: ;
linkCmd = getLinkCmd__extccomp_1237((*colonenv_).conf2, mainOutput, objfiles, (((*(*colonenv_).conf2).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw)7)))&63U)))!=0), NIM_TRUE);
if (NIM_UNLIKELY(*nimErr_)) goto LA113_;
extraCmds = getExtraCmds__extccomp_1289((*colonenv_).conf2, mainOutput);
if (NIM_UNLIKELY(*nimErr_)) goto LA113_;
{
if (!!((((*(*colonenv_).conf2).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw)4)))&63U)))!=0))) goto LA133_;
{
if (!(((NI)32000) < linkCmd.len)) goto LA137_;
linkViaResponseFile__extccomp_1322((*colonenv_).conf2, linkCmd);
if (NIM_UNLIKELY(*nimErr_)) goto LA113_;
}
goto LA135_;
LA137_: ;
{
execLinkCmd__extccomp_1293((*colonenv_).conf2, linkCmd);
if (NIM_UNLIKELY(*nimErr_)) goto LA113_;
}
LA135_: ;
{
NimStringV2* cmd;
NI i_5;
NI L_5;
NI T141_;
cmd = (NimStringV2*)0;
i_5 = ((NI)0);
T141_ = extraCmds.len;
L_5 = T141_;
{
while (1) {
if (!(i_5 < L_5)) goto LA143 ;
cmd = (&extraCmds.p->data[i_5]);
execExternalProgram__extccomp_905((*colonenv_).conf2, (*cmd), ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)99));
if (NIM_UNLIKELY(*nimErr_)) goto LA113_;
i_5 += ((NI)1);
} LA143: ;
}
}
}
LA133_: ;
{
LA113_:;
}
{
eqdestroy___stdZassertions_13((&mainOutput));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA44_;
}
LA56_: ;
{
LA44_:;
}
{
eqdestroy___stdZassertions_13((&objfiles));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
goto LA40_;
LA42_: ;
{
linkCmd = TM__pZmXgBT0YcBrnAO6VUvpNQ_346;
}
LA40_: ;
{
if (!(((*(*colonenv_).conf2).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw)10)))&63U)))!=0)) goto LA151_;
prepareAdd((&script), linkCmd.len + 0);
appendString((&script), linkCmd);
prepareAdd((&script), 1);
appendString((&script), TM__pZmXgBT0YcBrnAO6VUvpNQ_347);
generateScript__extccomp_909((*colonenv_).conf2, script);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA151_: ;
{
LA1_:;
}
{
eqdestroy___pureZosproc_528((&prettyCb));
eqdestroy___system_3530((&cmds));
eqdestroy___stdZassertions_13((&script));
eqdestroy___system_3530((&extraCmds));
eqdestroy___stdZassertions_13((&linkCmd));
eqdestroy___extccomp_3026(&colonenv_);
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, writeJsonBuildInstructions__extccomp_1631)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf) {
tySequence__sM4lkSb7zS6F7OVMvW9cffQ linkFiles;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ collectResult;
tyObject_BuildCache__bsEp9cTzVeuA9a0MLpRaR1yg bcache;
tySequence__4eQHGndY6XBYpFOH09apV8Q collectResult_2;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ colontmpD_;
NimStringV2 colontmpD__2;
NimStringV2 colontmpD__3;
NimStringV2 colontmpD__4;
NIM_BOOL colontmpD__5;
NIM_BOOL colontmpD__6;
NimStringV2 colontmpD__7;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ colontmpD__8;
tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* colontmpD__9;
NimStringV2 colontmpD__10;
tySequence__4eQHGndY6XBYpFOH09apV8Q blitTmp;
NimStringV2 T62_;
tyObject_ToJsonOptions__T9bCB8O1ZaL5BIvSkjYqMnQ T63_;
NIM_BOOL oldNimErrFin1_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
linkFiles.len = 0; linkFiles.p = NIM_NIL;
collectResult.len = 0; collectResult.p = NIM_NIL;
nimZeroMem((void*)(&bcache), sizeof(tyObject_BuildCache__bsEp9cTzVeuA9a0MLpRaR1yg));
collectResult_2.len = 0; collectResult_2.p = NIM_NIL;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
colontmpD__3.len = 0; colontmpD__3.p = NIM_NIL;
colontmpD__4.len = 0; colontmpD__4.p = NIM_NIL;
colontmpD__5 = (NIM_BOOL)0;
colontmpD__6 = (NIM_BOOL)0;
colontmpD__7.len = 0; colontmpD__7.p = NIM_NIL;
colontmpD__8.len = 0; colontmpD__8.p = NIM_NIL;
colontmpD__9 = NIM_NIL;
colontmpD__10.len = 0; colontmpD__10.p = NIM_NIL;
collectResult = newSeq__stdZsyncio_509(((NI)0));
{
NimStringV2* it;
NI i;
NI L;
NI T3_;
it = (NimStringV2*)0;
i = ((NI)0);
T3_ = (*conf).externalToLink.len;
L = T3_;
{
while (1) {
NimStringV2 it_2;
NimStringV2 T12_;
if (!(i < L)) goto LA5 ;
it_2.len = 0; it_2.p = NIM_NIL;
it = (&(*conf).externalToLink.p->data[i]);
eqcopy___stdZassertions_16((&it_2), (*it));
{
NIM_BOOL T8_;
NimStringV2 T11_;
T8_ = (NIM_BOOL)0;
T8_ = noAbsolutePaths__extccomp_928(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
if (!T8_) goto LA9_;
T11_.len = 0; T11_.p = NIM_NIL;
T11_ = nosextractFilename(it_2);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqsink___stdZassertions_19((&it_2), T11_);
}
LA9_: ;
T12_.len = 0; T12_.p = NIM_NIL;
T12_ = nosaddFileExt(it_2, CC__extccomp_539[((*conf).cCompiler)- 1].Field1);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
add__stdZenumutils_69((&collectResult), T12_);
i += ((NI)1);
eqdestroy___stdZassertions_13((&it_2));
} LA5: ;
}
}
linkFiles = collectResult;
collectResult.len = 0; collectResult.p = NIM_NIL;
{
tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ* it_3;
NI i_2;
NI L_2;
NI T14_;
it_3 = (tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ*)0;
i_2 = ((NI)0);
T14_ = (*conf).toCompile.len;
L_2 = T14_;
{
while (1) {
NimStringV2 colontmpD__11;
if (!(i_2 < L_2)) goto LA16 ;
colontmpD__11.len = 0; colontmpD__11.p = NIM_NIL;
it_3 = (&(*conf).toCompile.p->data[i_2]);
colontmpD__11.len = 0; colontmpD__11.p = NIM_NIL;
eqcopy___stdZassertions_16((&colontmpD__11), (*it_3).obj);
add__stdZenumutils_69((&linkFiles), colontmpD__11);
i_2 += ((NI)1);
} LA16: ;
}
}
nimZeroMem((void*)(&bcache), sizeof(tyObject_BuildCache__bsEp9cTzVeuA9a0MLpRaR1yg));
bcache.cacheVersion = TM__pZmXgBT0YcBrnAO6VUvpNQ_352;
bcache.outputFile = absOutFile__options_4942(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
collectResult_2 = newSeq__extccomp_1682(((NI)0));
{
tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ it_4;
NI i_3;
NI i_4;
NI L_3;
NI T19_;
nimZeroMem((void*)(&it_4), sizeof(tyObject_Cfile__MtXNOrgFiCQ50Z86OxawlQ));
i_3 = (NI)0;
i_4 = ((NI)0);
T19_ = (*conf).toCompile.len;
L_3 = T19_;
{
while (1) {
if (!(i_4 < L_3)) goto LA21 ;
i_3 = i_4;
eqcopy___options_3037((&it_4), (&(*conf).toCompile.p->data[i_4]));
{
NimStringV2 colontmpD__12;
tyTuple__UV3llMMYFckfui8YMBuUZA T26_;
NimStringV2 T27_;
if (!!(((it_4.flags &((NU8)1<<((NU)((((tyEnum_CfileFlag__quKxtOiNkuU9aFwgmRK07Og)0)))&7U)))!=0))) goto LA24_;
colontmpD__12.len = 0; colontmpD__12.p = NIM_NIL;
colontmpD__12.len = 0; colontmpD__12.p = NIM_NIL;
eqcopy___stdZassertions_16((&colontmpD__12), it_4.cname);
T26_.Field0 = colontmpD__12;
T27_.len = 0; T27_.p = NIM_NIL;
T27_ = getCompileCFileCmd__extccomp_1116(conf, (&it_4), NIM_FALSE, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA18_;
T26_.Field1 = T27_;
add__extccomp_1771((&collectResult_2), T26_);
}
LA24_: ;
i_4 += ((NI)1);
} LA21: ;
}
{
LA18_:;
}
{
eqdestroy___options_3034((&it_4));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
blitTmp = collectResult_2;
collectResult_2.len = 0; collectResult_2.p = NIM_NIL;
bcache.compile = blitTmp;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
eqcopy___system_3533((&colontmpD_), linkFiles);
bcache.link = colontmpD_;
colontmpD__2 = absOutFile__options_4942(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
colontmpD__3 = quoteShellCommand__pureZos_84(((linkFiles).p) ? (linkFiles.p->data) : NIM_NIL, linkFiles.len);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
bcache.linkcmd = getLinkCmd__extccomp_1237(conf, colontmpD__2, colontmpD__3, (((*conf).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw)7)))&63U)))!=0), NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
colontmpD__4 = absOutFile__options_4942(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
bcache.extraCmds = getExtraCmds__extccomp_1289(conf, colontmpD__4);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
colontmpD__5 = (*conf).projectIsStdin;
bcache.stdinInput = colontmpD__5;
colontmpD__6 = (*conf).projectIsCmd;
bcache.projectIsCmd = colontmpD__6;
colontmpD__7.len = 0; colontmpD__7.p = NIM_NIL;
eqcopy___stdZassertions_16((&colontmpD__7), (*conf).cmdInput);
bcache.cmdInput = colontmpD__7;
{
tySequence__sM4lkSb7zS6F7OVMvW9cffQ colontmp_;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ resultX60gensym116_;
NI iX60gensym116_;
NI T31_;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ blitTmp_2;
colontmp_.len = 0; colontmp_.p = NIM_NIL;
resultX60gensym116_.len = 0; resultX60gensym116_.p = NIM_NIL;
eqcopy___options_3164((&colontmp_), (*conf).configFiles);
iX60gensym116_ = ((NI)0);
T31_ = colontmp_.len;
resultX60gensym116_ = newSeq__stdZsyncio_509(((NI) (T31_)));
{
NimStringV2* it_5;
NI i_5;
NI L_4;
NI T33_;
it_5 = (NimStringV2*)0;
i_5 = ((NI)0);
T33_ = colontmp_.len;
L_4 = T33_;
{
while (1) {
NimStringV2 colontmpD__13;
if (!(i_5 < L_4)) goto LA35 ;
colontmpD__13.len = 0; colontmpD__13.p = NIM_NIL;
it_5 = (&colontmp_.p->data[i_5]);
colontmpD__13.len = 0; colontmpD__13.p = NIM_NIL;
eqcopy___stdZassertions_16((&colontmpD__13), (*it_5));
eqsink___stdZassertions_19((&resultX60gensym116_.p->data[iX60gensym116_]), colontmpD__13);
iX60gensym116_ += ((NI)1);
i_5 += ((NI)1);
} LA35: ;
}
}
colontmpD__8 = resultX60gensym116_;
eqdestroy___options_3161((&colontmp_));
blitTmp_2 = colontmpD__8;
colontmpD__8.len = 0; colontmpD__8.p = NIM_NIL;
bcache.configFiles = blitTmp_2;
}
bcache.currentDir = nosgetCurrentDir();
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NIM_BOOL T38_;
tySequence__4eQHGndY6XBYpFOH09apV8Q collectResult_3;
NimStringV2 colontmpD__14;
tyArray__YtcvxHNKV4YiecPE9ap1mcA T58_;
NimStringV2 T59_;
T38_ = (NIM_BOOL)0;
T38_ = (((*conf).globalOptions &((NU64)1<<((NU)((((tyEnum_TGlobalOption__9bU4j0PZjdMiF7DRotXVQZw)13)))&63U)))!=0);
if (T38_) goto LA39_;
T38_ = isDefined__options_2481(conf, TM__pZmXgBT0YcBrnAO6VUvpNQ_354);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
LA39_: ;
if (!T38_) goto LA40_;
collectResult_3.len = 0; collectResult_3.p = NIM_NIL;
colontmpD__14.len = 0; colontmpD__14.p = NIM_NIL;
eqcopy___stdZassertions_16((&bcache.cmdline), (*conf).commandLine);
collectResult_3 = newSeq__extccomp_1682(((NI)0));
{
tyObject_TFileInfo__2aBuGcbJEvokyJmg1PN0eg* it_6;
NI i_6;
NI L_5;
NI T44_;
it_6 = (tyObject_TFileInfo__2aBuGcbJEvokyJmg1PN0eg*)0;
i_6 = ((NI)0);
T44_ = (*conf).m.fileInfos.len;
L_5 = T44_;
{
while (1) {
NimStringV2 path;
NimStringV2 colontmpD__15;
if (!(i_6 < L_5)) goto LA46 ;
path.len = 0; path.p = NIM_NIL;
colontmpD__15.len = 0; colontmpD__15.p = NIM_NIL;
it_6 = (&(*conf).m.fileInfos.p->data[i_6]);
colontmpD__15.len = 0; colontmpD__15.p = NIM_NIL;
eqcopy___stdZassertions_16((&colontmpD__15), (*it_6).fullPath);
path = colontmpD__15;
{
NIM_BOOL T50_;
NimStringV2 colontmpD__16;
tyTuple__UV3llMMYFckfui8YMBuUZA T53_;
tyArray__YtcvxHNKV4YiecPE9ap1mcA T54_;
NimStringV2 T55_;
T50_ = (NIM_BOOL)0;
T50_ = nosisAbsolute(path);
if (NIM_UNLIKELY(*nimErr_)) goto LA47_;
if (!T50_) goto LA51_;
colontmpD__16.len = 0; colontmpD__16.p = NIM_NIL;
colontmpD__16.len = 0; colontmpD__16.p = NIM_NIL;
eqcopy___stdZassertions_16((&colontmpD__16), path);
T53_.Field0 = colontmpD__16;
nimZeroMem((void*)T54_, sizeof(tyArray__YtcvxHNKV4YiecPE9ap1mcA));
secureHashFile__stdZsha49_896(path, T54_);
if (NIM_UNLIKELY(*nimErr_)) goto LA47_;
T55_.len = 0; T55_.p = NIM_NIL;
T55_ = dollar___stdZsha49_904(T54_);
if (NIM_UNLIKELY(*nimErr_)) goto LA47_;
T53_.Field1 = T55_;
add__extccomp_1771((&collectResult_3), T53_);
}
LA51_: ;
i_6 += ((NI)1);
{
LA47_:;
}
{
eqdestroy___stdZassertions_13((&path));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA42_;
} LA46: ;
}
}
eqsink___stdZenvvars_91((&bcache.depfiles), collectResult_3);
collectResult_3.len = 0; collectResult_3.p = NIM_NIL;
colontmpD__14 = nosgetAppFilename();
if (NIM_UNLIKELY(*nimErr_)) goto LA42_;
nimZeroMem((void*)T58_, sizeof(tyArray__YtcvxHNKV4YiecPE9ap1mcA));
secureHashFile__stdZsha49_896(colontmpD__14, T58_);
if (NIM_UNLIKELY(*nimErr_)) goto LA42_;
T59_.len = 0; T59_.p = NIM_NIL;
T59_ = dollar___stdZsha49_904(T58_);
if (NIM_UNLIKELY(*nimErr_)) goto LA42_;
eqsink___stdZassertions_19((&bcache.nimexe), T59_);
{
LA42_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__14));
eqdestroy___stdZenvvars_85((&collectResult_3));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA40_: ;
T62_.len = 0; T62_.p = NIM_NIL;
T62_ = jsonBuildInstructionsFile__extccomp_1612(conf);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
eqsink___stdZassertions_19((&(*conf).jsonBuildFile), T62_);
T63_ = initToJsonOptions__stdZjsonutils_35();
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
colontmpD__9 = toJson__extccomp_1891((&bcache), T63_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
colontmpD__10 = pretty__pureZjson_4843(colontmpD__9, ((NI)2));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
writeFile__stdZsyncio_482((*conf).jsonBuildFile, colontmpD__10);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
LA1_:;
}
{
oldNimErrFin1_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___stdZassertions_13((&colontmpD__10));
eqdestroy___pureZjson_271(&colontmpD__9);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
eqdestroy___system_3530((&colontmpD__8));
eqdestroy___stdZassertions_13((&colontmpD__4));
eqdestroy___stdZassertions_13((&colontmpD__3));
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___stdZenvvars_85((&collectResult_2));
eqdestroy___extccomp_2034((&bcache));
eqdestroy___system_3530((&collectResult));
eqdestroy___system_3530((&linkFiles));
*nimErr_ = oldNimErrFin1_;
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___extccomp_3262)(tyObject_Env_extccompdotnim_runJsonBuildInstructions___VGgYLDtRkrYcGQHO6dF5ag* dest) {
eqdestroy___system_3530((&(*dest).prettyCmds1));
{
NIM_BOOL T3_;
T3_ = (NIM_BOOL)0;
T3_ = nimDecRefIsLast((*dest).conf2);
if (!T3_) goto LA4_;
eqdestroy___options_3149((*dest).conf2);
nimRawDispose((*dest).conf2, ((NI)4));
}
LA4_: ;
}
N_LIB_PRIVATE N_CLOSURE(void, colonanonymous___extccomp_2799)(NI idx, void* ClE_0) {
tyObject_Env_extccompdotnim_runJsonBuildInstructions___VGgYLDtRkrYcGQHO6dF5ag* colonenvP_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
colonenvP_ = (tyObject_Env_extccompdotnim_runJsonBuildInstructions___VGgYLDtRkrYcGQHO6dF5ag*) ClE_0;
{
tyArray__nHXaesL0DJZHyVS07ARPRA T5_;
if (!(((NI)0) < (*colonenvP_).prettyCmds1.p->data[idx].len)) goto LA3_;
flushDot__msgs_33((*colonenvP_).conf2);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
T5_[0] = (*colonenvP_).prettyCmds1.p->data[idx];
writeLine__msgs_459(__stderrp, T5_, 1);
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}
LA3_: ;
}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqcopy___extccomp_3286)(tyObject_Env_extccompdotnim_runJsonBuildInstructions___VGgYLDtRkrYcGQHO6dF5ag** dest, tyObject_Env_extccompdotnim_runJsonBuildInstructions___VGgYLDtRkrYcGQHO6dF5ag* src, NIM_BOOL cyclic) {
tyObject_Env_extccompdotnim_runJsonBuildInstructions___VGgYLDtRkrYcGQHO6dF5ag* colontmp_;
colontmp_ = (*dest);
{
if (!src) goto LA3_;
nimIncRefCyclic(src, cyclic);
}
LA3_: ;
(*dest) = src;
{
NIM_BOOL T7_;
T7_ = (NIM_BOOL)0;
T7_ = nimDecRefIsLastCyclicDyn(colontmp_);
if (!T7_) goto LA8_;
nimDestroyAndDispose(colontmp_);
}
LA8_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, eqdestroy___extccomp_3283)(tyObject_Env_extccompdotnim_runJsonBuildInstructions___VGgYLDtRkrYcGQHO6dF5ag** dest) {
{
NIM_BOOL T3_;
T3_ = (NIM_BOOL)0;
T3_ = nimDecRefIsLastCyclicDyn((*dest));
if (!T3_) goto LA4_;
nimDestroyAndDispose((*dest));
}
LA4_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, runJsonBuildInstructions__extccomp_2767)(tyObject_ConfigRefcolonObjectType___2BjaRtGfBjUbX51p9a4g9a9cg* conf, NimStringV2 jsonFile) {
tyObject_Env_extccompdotnim_runJsonBuildInstructions___VGgYLDtRkrYcGQHO6dF5ag* colonenv_;
tyObject_BuildCache__bsEp9cTzVeuA9a0MLpRaR1yg bcache;
NimStringV2 output;
NimStringV2 colontmpD_;
NimStringV2 outputCurrent;
NimStringV2 colontmpD__2;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ cmds;
tyProc__SqRJqa5aOiKB4EuKlKh9asA prettyCb;
tyObject_Env_extccompdotnim_runJsonBuildInstructions___VGgYLDtRkrYcGQHO6dF5ag* colontmpD__3;
tyObject_Env_extccompdotnim_runJsonBuildInstructions___VGgYLDtRkrYcGQHO6dF5ag* T2_;
tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* colontmpD__4;
tyObject_JsonNodeObj__df9bshXB7C9cTiWPIOtX3j1Q* T5_;
tyObject_Joptions__LkVLf5IMKBOgl3HJApAzgQ T6_;
NIM_BOOL oldNimErrFin4_;
NimStringV2 T27_;
NimStringV2 T28_;
NimStringV2 T29_;
tyProc__SqRJqa5aOiKB4EuKlKh9asA T41_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
colonenv_ = NIM_NIL;
nimZeroMem((void*)(&bcache), sizeof(tyObject_BuildCache__bsEp9cTzVeuA9a0MLpRaR1yg));
output.len = 0; output.p = NIM_NIL;
colontmpD_.len = 0; colontmpD_.p = NIM_NIL;
outputCurrent.len = 0; outputCurrent.p = NIM_NIL;
colontmpD__2.len = 0; colontmpD__2.p = NIM_NIL;
cmds.len = 0; cmds.p = NIM_NIL;
nimZeroMem((void*)(&prettyCb), sizeof(tyProc__SqRJqa5aOiKB4EuKlKh9asA));
colontmpD__3 = NIM_NIL;
T2_ = NIM_NIL;
T2_ = (tyObject_Env_extccompdotnim_runJsonBuildInstructions___VGgYLDtRkrYcGQHO6dF5ag*) nimNewObj(sizeof(tyObject_Env_extccompdotnim_runJsonBuildInstructions___VGgYLDtRkrYcGQHO6dF5ag), NIM_ALIGNOF(tyObject_Env_extccompdotnim_runJsonBuildInstructions___VGgYLDtRkrYcGQHO6dF5ag));
(*T2_).Sup.m_type = (&NTIv2__VGgYLDtRkrYcGQHO6dF5ag_);
colonenv_ = T2_;
eqcopy___options_3378(&(*colonenv_).conf2, conf);
colontmpD__4 = NIM_NIL;
T5_ = NIM_NIL;
T5_ = parseFile__pureZjson_5624(jsonFile);
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
colontmpD__4 = T5_;
nimZeroMem((void*)(&T6_), sizeof(tyObject_Joptions__LkVLf5IMKBOgl3HJApAzgQ));
fromJson__extccomp_2075((&bcache), colontmpD__4, T6_);
if (NIM_UNLIKELY(*nimErr_)) goto LA4_;
{
LA4_:;
}
{
oldNimErrFin4_ = *nimErr_; *nimErr_ = NIM_FALSE;
eqdestroy___pureZjson_271(&colontmpD__4);
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
*nimErr_ = oldNimErrFin4_;
}
if (NIM_UNLIKELY(*nimErr_)) goto LA3_;
if (NIM_UNLIKELY(*nimErr_)) {
LA3_:;
if (isObjDisplayCheck(nimBorrowCurrentException()->Sup.m_type, 3, 3978211584)||isObjDisplayCheck(nimBorrowCurrentException()->Sup.m_type, 4, 1159122688)||isObjDisplayCheck(nimBorrowCurrentException()->Sup.m_type, 4, 3654753792)) {
Exception* e;
*nimErr_ = NIM_FALSE;
e = NIM_NIL;
e = getCurrentException();
{
NIM_BOOL T14_;
T14_ = (NIM_BOOL)0;
T14_ = isDefined__options_2481((*colonenv_).conf2, TM__pZmXgBT0YcBrnAO6VUvpNQ_357);
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
if (!T14_) goto LA15_;
{
NimStringV2 colontmpD__5;
NimStringV2 colontmpD__6;
NimStringV2 colontmpD__7;
NimStringV2 T21_;
tyArray__24KAM9afIUgUaqBaEBB6r9bg T22_;
NimStringV2 T23_;
if (!NIM_TRUE) goto LA19_;
colontmpD__5.len = 0; colontmpD__5.p = NIM_NIL;
colontmpD__6.len = 0; colontmpD__6.p = NIM_NIL;
colontmpD__7.len = 0; colontmpD__7.p = NIM_NIL;
T21_.len = 0; T21_.p = NIM_NIL;
T22_[0] = (*e).message;
colontmpD__5 = getStackTrace__system_3623(e);
T22_[1] = colontmpD__5;
T22_[2] = jsonFile;
T23_.len = 0; T23_.p = NIM_NIL;
T23_ = percent___extccomp_2777(T22_, 3);
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
colontmpD__6 = T23_;
T21_ = rawNewString(colontmpD__6.len + 28);
appendString((&T21_), TM__pZmXgBT0YcBrnAO6VUvpNQ_359);
appendString((&T21_), colontmpD__6);
colontmpD__7 = T21_;
failedAssertImpl__stdZassertions_224(colontmpD__7);
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
eqdestroy___stdZassertions_13((&colontmpD__7));
eqdestroy___stdZassertions_13((&colontmpD__6));
eqdestroy___stdZassertions_13((&colontmpD__5));
}
LA19_: ;
}
goto LA12_;
LA15_: ;
{
NimStringV2 colontmpD__8;
NimStringV2 colontmpD__9;
tyArray__24KAM9afIUgUaqBaEBB6r9bg T25_;
NimStringV2 T26_;
colontmpD__8.len = 0; colontmpD__8.p = NIM_NIL;
colontmpD__9.len = 0; colontmpD__9.p = NIM_NIL;
T25_[0] = (*e).message;
colontmpD__8 = getStackTrace__system_3623(e);
T25_[1] = colontmpD__8;
T25_[2] = jsonFile;
T26_.len = 0; T26_.p = NIM_NIL;
T26_ = percent___extccomp_2777(T25_, 3);
if (NIM_UNLIKELY(*nimErr_)) goto LA10_;
colontmpD__9 = T26_;
quit__system_6974(colontmpD__9, ((NI)1));
eqdestroy___stdZassertions_13((&colontmpD__9));
eqdestroy___stdZassertions_13((&colontmpD__8));
}
LA12_: ;
eqdestroy___stdZassertions_30(&e);
popCurrentException();
LA10_:;
}
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
output = bcache.outputFile;
bcache.outputFile.len = 0; bcache.outputFile.p = NIM_NIL;
T27_.len = 0; T27_.p = NIM_NIL;
T27_ = nosparentDir(output);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
colontmpD_ = T27_;
noscreateDir(colontmpD_);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
T28_.len = 0; T28_.p = NIM_NIL;
T28_ = absOutFile__options_4942((*colonenv_).conf2);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
colontmpD__2 = T28_;
T29_.len = 0; T29_.p = NIM_NIL;
T29_ = dollar___options_5279(colontmpD__2);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
outputCurrent = T29_;
{
NIM_BOOL T32_;
NimStringV2 colontmpD__10;
tyArray__24KAM9afIUgUaqBaEBB6r9bg T37_;
NimStringV2 T38_;
T32_ = (NIM_BOOL)0;
T32_ = !(eqStrings(output, outputCurrent));
if (T32_) goto LA33_;
T32_ = !(eqStrings(bcache.cacheVersion, TM__pZmXgBT0YcBrnAO6VUvpNQ_360));
LA33_: ;
if (!T32_) goto LA34_;
colontmpD__10.len = 0; colontmpD__10.p = NIM_NIL;
T37_[0] = outputCurrent;
T37_[1] = output;
T37_[2] = jsonFile;
T38_.len = 0; T38_.p = NIM_NIL;
T38_ = percent___extccomp_2792(T37_, 3);
if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
colontmpD__10 = T38_;
liMessage__msgs_1172((*colonenv_).conf2, gCmdLineInfo__msgs_431, ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)17), colontmpD__10, ((tyEnum_TErrorHandling__NXH4RLc649bsDWofENjZIqw)2), TM__pZmXgBT0YcBrnAO6VUvpNQ_361, NIM_FALSE);
if (NIM_UNLIKELY(*nimErr_)) goto LA36_;
{
LA36_:;
}
{
eqdestroy___stdZassertions_13((&colontmpD__10));
}
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
}
LA34_: ;
colontmpD__3 = 0;
eqcopy___extccomp_3286(&colontmpD__3, colonenv_, NIM_TRUE);
nimZeroMem((void*)(&T41_), sizeof(tyProc__SqRJqa5aOiKB4EuKlKh9asA));
T41_.ClP_0 = colonanonymous___extccomp_2799; T41_.ClE_0 = colontmpD__3;
prettyCb.ClE_0 = T41_.ClE_0;
prettyCb.ClP_0 = T41_.ClP_0;
{
NimStringV2* name;
NimStringV2* cmd;
NI i;
NI L;
NI T43_;
name = (NimStringV2*)0;
cmd = (NimStringV2*)0;
i = ((NI)0);
T43_ = bcache.compile.len;
L = T43_;
{
while (1) {
NimStringV2 colontmpD__11;
NimStringV2 T46_;
if (!(i < L)) goto LA45 ;
colontmpD__11.len = 0; colontmpD__11.p = NIM_NIL;
name = (&bcache.compile.p->data[i].Field0);
cmd = (&bcache.compile.p->data[i].Field1);
colontmpD__11.len = 0; colontmpD__11.p = NIM_NIL;
eqcopy___stdZassertions_16((&colontmpD__11), (*cmd));
add__stdZenumutils_69((&cmds), colontmpD__11);
T46_.len = 0; T46_.p = NIM_NIL;
T46_ = displayProgressCC__extccomp_1373((*colonenv_).conf2, (*name), (*cmd));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
add__stdZenumutils_69((&(*colonenv_).prettyCmds1), T46_);
i += ((NI)1);
} LA45: ;
}
}
execCmdsInParallel__extccomp_1298((*colonenv_).conf2, cmds, prettyCb);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
execLinkCmd__extccomp_1293((*colonenv_).conf2, bcache.linkcmd);
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
{
NimStringV2* cmd_2;
NI i_2;
NI L_2;
NI T48_;
cmd_2 = (NimStringV2*)0;
i_2 = ((NI)0);
T48_ = bcache.extraCmds.len;
L_2 = T48_;
{
while (1) {
if (!(i_2 < L_2)) goto LA50 ;
cmd_2 = (&bcache.extraCmds.p->data[i_2]);
execExternalProgram__extccomp_905((*colonenv_).conf2, (*cmd_2), ((tyEnum_TMsgKind__9b1zBSEXe8I2R9aa2h3NYf9cA)99));
if (NIM_UNLIKELY(*nimErr_)) goto LA1_;
i_2 += ((NI)1);
} LA50: ;
}
}
{
LA1_:;
}
{
eqdestroy___pureZosproc_528((&prettyCb));
eqdestroy___system_3530((&cmds));
eqdestroy___stdZassertions_13((&colontmpD__2));
eqdestroy___stdZassertions_13((&outputCurrent));
eqdestroy___stdZassertions_13((&colontmpD_));
eqdestroy___stdZassertions_13((&output));
eqdestroy___extccomp_2034((&bcache));
eqdestroy___extccomp_3283(&colonenv_);
}
if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
}BeforeRet_: ;
}