/* Generated by Nim Compiler v1.3.5 */
/*   (c) 2020 Andreas Rumpf */
/* The generated code is subject to the original license. */
#define NIM_INTBITS 64

/* section: NIM_merge_HEADERS */

#include "nimbase.h"
#include <string.h>
#include <stdio.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

/* section: NIM_merge_FRAME_DEFINES */
#define nimfr_(x, y)
#define nimln_(x, y)

/* section: NIM_merge_FORWARD_TYPES */
typedef struct NimStringDesc NimStringDesc;
typedef struct TGenericSeq TGenericSeq;
typedef struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw;
typedef struct tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg;
typedef struct tyObject_Target__9abOl5DLX8suLujOaHSvGzw tyObject_Target__9abOl5DLX8suLujOaHSvGzw;
typedef struct tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg;
typedef struct tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A;
typedef struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q;
typedef struct tySequence__tNFrR3kRuS1FSwuiLGoSSA tySequence__tNFrR3kRuS1FSwuiLGoSSA;
typedef struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA;
typedef struct tySequence__7lEisrXlQEzwtUKW5pzRCw tySequence__7lEisrXlQEzwtUKW5pzRCw;
typedef struct tySequence__Zi9cGbCWofbtABoHJ5RbLNQ tySequence__Zi9cGbCWofbtABoHJ5RbLNQ;
typedef struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg;
typedef struct tySequence__4eRCaZmrYLLw2k30GPTiMw tySequence__4eRCaZmrYLLw2k30GPTiMw;
typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
typedef struct tySequence__pK3qSsBZwdXd6qyUMkd5Jw tySequence__pK3qSsBZwdXd6qyUMkd5Jw;
typedef struct tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ;
typedef struct tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig;
typedef struct tyTuple__5L3fCt9bX0gyEcO30ervPLw tyTuple__5L3fCt9bX0gyEcO30ervPLw;
typedef struct tyTuple__UpiOGlu5Ux6DLM73wSrdpg tyTuple__UpiOGlu5Ux6DLM73wSrdpg;
typedef struct tyTuple__yByxe8FSFNTgs4tcAkTYag tyTuple__yByxe8FSFNTgs4tcAkTYag;
typedef struct TNimType TNimType;
typedef struct TNimNode TNimNode;
typedef struct tyTuple__kN8up2W6YKc5YA9avn5mV5w tyTuple__kN8up2W6YKc5YA9avn5mV5w;
typedef struct tyTuple__z822nu9bFF1AlQnLrHjdwpA tyTuple__z822nu9bFF1AlQnLrHjdwpA;
typedef struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw tyTuple__xYhUhS7X82rKTqbT9bRfCnw;
typedef struct tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw;
typedef struct tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA;
typedef struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw tyTuple__QeWl6B6ffS4pU6WWrtcrDw;

/* section: NIM_merge_TYPES */
struct TGenericSeq {
NI len;
NI reserved;
};
struct NimStringDesc {
  TGenericSeq Sup;
NIM_CHAR data[SEQ_DECL_SIZE];
};
typedef NU8 tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g;
typedef NU8 tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag;
typedef NU8 tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ;
struct tyObject_Target__9abOl5DLX8suLujOaHSvGzw {
tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag targetCPU;
tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag hostCPU;
tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ targetOS;
tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ hostOS;
NI intSize;
NI floatSize;
NI ptrSize;
NimStringDesc* tnl;
};
typedef NU32 tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg;
typedef NU64 tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw;
struct tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q {
NU16 line;
NI16 col;
NI32 fileIndex;
};
typedef NU8 tySet_tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA;
struct tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA {
tySequence__7lEisrXlQEzwtUKW5pzRCw* data;
NI counter;
};
struct tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A {
tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q trackPos;
NIM_BOOL trackPosAttached;
tySet_tyEnum_TErrorOutput__fBf8Teueoz9aAkO5cXaxrpA errorOutputs;
tySequence__tNFrR3kRuS1FSwuiLGoSSA* msgContext;
tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastError;
tyObject_Table__Ab4q9c36aMR4mtkEOIBzdzA filenameToIndexTbl;
tySequence__Zi9cGbCWofbtABoHJ5RbLNQ* fileInfos;
NI32 systemFileIdx;
};
typedef NU8 tyEnum_TCommands__VH3ghgQVwLSg3krOAoXigw;
typedef NU8 tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw;
typedef NU8 tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ;
typedef NU8 tyEnum_SymbolFilesOption__gBES9bqm1ru9ape8SeMRAFgQ;
struct tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg {
tySequence__4eRCaZmrYLLw2k30GPTiMw* data;
NI counter;
};
typedef NU16 tySet_tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ;
typedef NU8 tySet_tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA;
typedef NU8 tyEnum_IdeCmd__1Ced39bl5eePmZ1PKMPXigQ;
typedef NU8 tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA;
typedef NU8 tySet_tyEnum_TMsgKind__2KKSM6ZBSQgjWsy4q169bgA[9];
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (tyObject_SuggestcolonObjectType___bkMuTTb2G70XfpzAiyNrnQ* result, void* ClE_0);
void* ClE_0;
} tyProc__YD0MR9bJ2x4beJkZdnjXN9cA;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (NimStringDesc* output, void* ClE_0);
void* ClE_0;
} tyProc__k2HFjxisIgDALbEUFojxaQ;
typedef NU8 tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA;
typedef struct {
N_NIMCALL_PTR(void, ClP_0) (tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* config, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, NimStringDesc* msg, tyEnum_Severity__x5BWBPGAbIH9clm5pmNp5DA severity, void* ClE_0);
void* ClE_0;
} tyProc__oL9coyIA2VDTGdUcur9aL9bew;
struct tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw {
tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g backend;
tyObject_Target__9abOl5DLX8suLujOaHSvGzw target;
NI linesCompiled;
tySet_tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg options;
tySet_tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw globalOptions;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* macrosToExpand;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* arcToExpand;
tyObject_MsgConfig__kV7r8HWT0SqOYW2k2ukC6A m;
NI evalTemplateCounter;
NI evalMacroCounter;
NI8 exitcode;
tyEnum_TCommands__VH3ghgQVwLSg3krOAoXigw cmd;
tyEnum_TGCMode__tkz389aDYNd8ykeZszCuBSw selectedGC;
tyEnum_ExceptionSystem__1mkAogyaDAT7g9cQjzsgKLQ exc;
NI verbosity;
NI numberOfProcessors;
NimStringDesc* evalExpr;
NF lastCmdTime;
tyEnum_SymbolFilesOption__gBES9bqm1ru9ape8SeMRAFgQ symbolFiles;
tyObject_HashSet__CD8Dpv0WGmASelVaNSo6zg cppDefines;
NimStringDesc* headerFile;
tySet_tyEnum_Feature__01UoAKYz1MxZiuG1X2VhNQ features;
tySet_tyEnum_LegacyFeature__hGCD9aOrxPvpXn4Ne6W6OVA legacyFeatures;
NimStringDesc* arguments;
tyEnum_IdeCmd__1Ced39bl5eePmZ1PKMPXigQ ideCmd;
NIM_BOOL oldNewlines;
tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA cCompiler;
tySet_tyEnum_TMsgKind__2KKSM6ZBSQgjWsy4q169bgA modifiedyNotes;
tySet_tyEnum_TMsgKind__2KKSM6ZBSQgjWsy4q169bgA cmdlineNotes;
tySet_tyEnum_TMsgKind__2KKSM6ZBSQgjWsy4q169bgA foreignPackageNotes;
tySet_tyEnum_TMsgKind__2KKSM6ZBSQgjWsy4q169bgA notes;
tySet_tyEnum_TMsgKind__2KKSM6ZBSQgjWsy4q169bgA warningAsErrors;
tySet_tyEnum_TMsgKind__2KKSM6ZBSQgjWsy4q169bgA mainPackageNotes;
NI mainPackageId;
NI errorCounter;
NI hintCounter;
NI warnCounter;
NI errorMax;
NI maxLoopIterationsVM;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* configVars;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* symbols;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* packageCache;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* nimblePaths;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* searchPaths;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* lazyPaths;
NimStringDesc* outFile;
NimStringDesc* outDir;
NimStringDesc* jsonBuildFile;
NimStringDesc* prefixDir;
NimStringDesc* libpath;
NimStringDesc* nimcacheDir;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* dllOverrides;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* moduleOverrides;
tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* cfileSpecificOptions;
NimStringDesc* projectName;
NimStringDesc* projectPath;
NimStringDesc* projectFull;
NIM_BOOL projectIsStdin;
NIM_BOOL lastMsgWasDot;
NI32 projectMainIdx;
NI32 projectMainIdx2;
NimStringDesc* command;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* commandArgs;
NimStringDesc* commandLine;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* extraCmds;
NIM_BOOL keepComments;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* implicitImports;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* implicitIncludes;
NimStringDesc* docSeeSrcUrl;
NimStringDesc* docRoot;
NimStringDesc* docCmd;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cIncludes;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cLibs;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cLinkedLibs;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* externalToLink;
NimStringDesc* linkOptionsCmd;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* compileOptionsCmd;
NimStringDesc* linkOptions;
NimStringDesc* compileOptions;
NimStringDesc* cCompilerPath;
tySequence__pK3qSsBZwdXd6qyUMkd5Jw* toCompile;
tyProc__YD0MR9bJ2x4beJkZdnjXN9cA suggestionResultHook;
NI suggestVersion;
NI suggestMaxResults;
tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q lastLineInfo;
tyProc__k2HFjxisIgDALbEUFojxaQ writelnHook;
tyProc__oL9coyIA2VDTGdUcur9aL9bew structuredErrorHook;
NimStringDesc* cppCustomNamespace;
tyObject_ProfileDatacolonObjectType___rPBBfFL4X0b9cQ6rfMNPXig* vmProfileData;
};
typedef NU8 tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw;
typedef NU8 tySet_tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA;
struct tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg {
NimStringDesc* nimname;
NimStringDesc* cname;
NimStringDesc* obj;
tySet_tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA flags;
};
typedef NU8 tyArray__YtcvxHNKV4YiecPE9ap1mcA[20];
typedef NU8 tySet_tyEnum_TInfoOSProp__thetQwB9agpeQ13qFmAcWhg;
struct tyTuple__5L3fCt9bX0gyEcO30ervPLw {
NimStringDesc* Field0;
NimStringDesc* Field1;
NimStringDesc* Field2;
NimStringDesc* Field3;
NimStringDesc* Field4;
NimStringDesc* Field5;
NimStringDesc* Field6;
NimStringDesc* Field7;
NimStringDesc* Field8;
NimStringDesc* Field9;
NimStringDesc* Field10;
NimStringDesc* Field11;
tySet_tyEnum_TInfoOSProp__thetQwB9agpeQ13qFmAcWhg Field12;
};
typedef tyTuple__5L3fCt9bX0gyEcO30ervPLw tyArray__geAxQ09aiJ4i2plLZEkYDpg[31];
typedef NU8 tyEnum_TEndian__bQ3yFYQJojZPNYsZnS7Zjg;
struct tyTuple__UpiOGlu5Ux6DLM73wSrdpg {
NimStringDesc* Field0;
NI Field1;
tyEnum_TEndian__bQ3yFYQJojZPNYsZnS7Zjg Field2;
NI Field3;
NI Field4;
};
typedef tyTuple__UpiOGlu5Ux6DLM73wSrdpg tyArray__8d8P9caia9cszVjIJKsQGMQA[25];
typedef NU8 tySet_tyEnum_TInfoCCProp__49cn73TjZ7Rt9b8QCAU8tLNg;
struct tyTuple__yByxe8FSFNTgs4tcAkTYag {
NimStringDesc* Field0;
NimStringDesc* Field1;
NimStringDesc* Field2;
NimStringDesc* Field3;
NimStringDesc* Field4;
NimStringDesc* Field5;
NimStringDesc* Field6;
NimStringDesc* Field7;
NimStringDesc* Field8;
NimStringDesc* Field9;
NimStringDesc* Field10;
NimStringDesc* Field11;
NimStringDesc* Field12;
NimStringDesc* Field13;
NimStringDesc* Field14;
NimStringDesc* Field15;
NimStringDesc* Field16;
NimStringDesc* Field17;
NimStringDesc* Field18;
NimStringDesc* Field19;
NimStringDesc* Field20;
tySet_tyEnum_TInfoCCProp__49cn73TjZ7Rt9b8QCAU8tLNg Field21;
};
typedef tyTuple__yByxe8FSFNTgs4tcAkTYag tyArray__sa9aJ6U8e9b7Bj4Yq8itsR8w[11];
typedef NU8 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A;
typedef NU8 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ;
typedef N_NIMCALL_PTR(void, tyProc__ojoeKfW4VYIm36I9cpDTQIg) (void* p, NI op);
typedef N_NIMCALL_PTR(void*, tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ) (void* p);
struct TNimType {
NI size;
NI align;
tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A kind;
tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ flags;
TNimType* base;
TNimNode* node;
void* finalizer;
tyProc__ojoeKfW4VYIm36I9cpDTQIg marker;
tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy;
};
typedef NU8 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ;
struct TNimNode {
tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ kind;
NI offset;
TNimType* typ;
NCSTRING name;
NI len;
TNimNode** sons;
};
typedef NU8 tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg;
typedef NU8 tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w;
typedef NU8 tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw;
struct tyTuple__kN8up2W6YKc5YA9avn5mV5w {
NimStringDesc* Field0;
NI Field1;
NI Field2;
};
typedef NU8 tyEnum_TInfoOSProp__thetQwB9agpeQ13qFmAcWhg;
typedef NimStringDesc* tyArray__Re75IspeoxXy2oCZHwcRrA[2];
typedef NU8 tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA;
typedef NimStringDesc* tyArray__rmMMhDIqORJzUU5zqeitSQ[16];
typedef NimStringDesc* tyArray__68WB4OcBspSFyW4LY9cOceA[18];
typedef NU8 tyEnum_FileMode__ZJfK20XeZ9bv2j1pZjw9aswg;
typedef NimStringDesc* tyArray__nHXaesL0DJZHyVS07ARPRA[1];
struct tyTuple__z822nu9bFF1AlQnLrHjdwpA {
tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q Field0;
NimStringDesc* Field1;
};
struct tyTuple__xYhUhS7X82rKTqbT9bRfCnw {
NI Field0;
NimStringDesc* Field1;
NI32 Field2;
};
struct tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw {
NimStringDesc* fullPath;
NimStringDesc* projPath;
NimStringDesc* shortName;
tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* quotedName;
tyObject_RopeObj__OFzf0kSiPTcNreUIeJgWVA* quotedFullName;
tySequence__sM4lkSb7zS6F7OVMvW9cffQ* lines;
NimStringDesc* dirtyFile;
NimStringDesc* hash;
NIM_BOOL dirty;
};
struct tyTuple__QeWl6B6ffS4pU6WWrtcrDw {
NI Field0;
NimStringDesc* Field1;
};

/* section: NIM_merge_SEQ_TYPES */
struct tySequence__pK3qSsBZwdXd6qyUMkd5Jw {
  TGenericSeq Sup;
  tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg data[SEQ_DECL_SIZE];
};
struct tySequence__tNFrR3kRuS1FSwuiLGoSSA {
  TGenericSeq Sup;
  tyTuple__z822nu9bFF1AlQnLrHjdwpA data[SEQ_DECL_SIZE];
};
struct tySequence__7lEisrXlQEzwtUKW5pzRCw {
  TGenericSeq Sup;
  tyTuple__xYhUhS7X82rKTqbT9bRfCnw data[SEQ_DECL_SIZE];
};
struct tySequence__Zi9cGbCWofbtABoHJ5RbLNQ {
  TGenericSeq Sup;
  tyObject_TFileInfo__GE3hAakXKOEpch4ap3zXAw data[SEQ_DECL_SIZE];
};
struct tySequence__4eRCaZmrYLLw2k30GPTiMw {
  TGenericSeq Sup;
  tyTuple__QeWl6B6ffS4pU6WWrtcrDw data[SEQ_DECL_SIZE];
};
struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
  TGenericSeq Sup;
  NimStringDesc* data[SEQ_DECL_SIZE];
};

/* section: NIM_merge_PROC_HEADERS */
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, completeGeneratedFilePath__0Bq74PTyfNijlbTXdbzW9bw)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* f, NIM_BOOL createSubDir);
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nosfileExists)(NimStringDesc* filename);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, externalFileChanged__5MVIsXG7b0bFfj09ayjls4w)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg* cfile);
N_LIB_PRIVATE N_NIMCALL(void, failedAssertImpl__W9cjVocn1tjhW7p7xohJj6A)(NimStringDesc* msg);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toGeneratedFile__vfkVoeYdbq9cXWDTNf536TQ)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* path, NimStringDesc* ext);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, withPackageName__9bhgFqdEZM7DoX7p3U69bQEg_2)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* path);
static N_INLINE(void, nimZeroMem)(void* p, NI size);
static N_INLINE(void, nimSetMem__zxfKBYntu9cBapkhrCOk1fgmemory)(void* a, int v, NI size);
N_LIB_PRIVATE N_NIMCALL(void, footprint__u2hVmnnAsUCCGDxJqGKZow)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg* cfile, tyArray__YtcvxHNKV4YiecPE9ap1mcA Result);
N_LIB_PRIVATE N_NIMCALL(void, secureHash__qi7bJ7Ntyvry4psMKnopTA)(NIM_CHAR* str, NI strLen_0, tyArray__YtcvxHNKV4YiecPE9ap1mcA Result);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, dollar___2r9adABFqPoalSCAWfm1KJQ)(tyArray__YtcvxHNKV4YiecPE9ap1mcA self);
N_LIB_PRIVATE N_NIMCALL(void, secureHashFile__EWwG0WuhtSH9c26DD9b9a6DLw)(NimStringDesc* filename, tyArray__YtcvxHNKV4YiecPE9ap1mcA Result);
static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src);
static N_INLINE(void, copyMem__i80o3k0SgEI5gTRCzYdyWAsystem)(void* dest, void* source, NI size);
static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getCompileCFileCmd__uOCPoEVtEQdC7k9cm7JeVsw)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg* cfile, NIM_BOOL isMainFile, NIM_BOOL produceOutput);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, cFileSpecificOptions__qenQYPV4hXyQmNT9c9aOOH9cQ)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* nimname, NimStringDesc* fullNimFile);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyString)(NimStringDesc* src);
N_LIB_PRIVATE N_NIMCALL(NI, nsuFindStr)(NimStringDesc* s, NimStringDesc* sub, NI start, NI last);
N_LIB_PRIVATE N_NIMCALL(void, addOpt__uSovO2RAvymqBoy9crgVjtA)(NimStringDesc** dest, NimStringDesc* src);
static N_INLINE(NIM_CHAR, X5BX5D___okzHJ6GE9cv0bYG3b4r5KCAsystem)(NimStringDesc* s, NI i);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, resizeString)(NimStringDesc* dest, NI addlen);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, rawNewString)(NI space);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, existsConfigVar__ut8y6zhxwL6n6Sz9akfQBGg)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* key);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getConfigVar__nT6pi8CimjduqrsM6Cc8mQ)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* key, NimStringDesc* default_0);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getDebug__fHOlJ3I1m1sG8h0fniEtOw)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA c);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getConfigVar__yFoF7FUju4sVQL0kUhJ68Q)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA c, NimStringDesc* suffix);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, reprEnum)(NI e, TNimType* typ);
static N_INLINE(void, appendChar)(NimStringDesc* dest, NIM_CHAR c);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getOptSpeed__fHOlJ3I1m1sG8h0fniEtOw_2)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA c);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getOptSize__fHOlJ3I1m1sG8h0fniEtOw_3)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA c);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getOrDefault__2a0cbxcfpWcXtK45m9bR5Kg)(tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* t, NimStringDesc* key, NimStringDesc* default_0);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, noschangeFileExt)(NimStringDesc* filename, NimStringDesc* ext);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, useCpp__CiPnKL2TIba667EvWphSyw)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* cfile);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nsuEndsWith)(NimStringDesc* s, NimStringDesc* suffix);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getCompilerExe__C0I5a08dQ0OlRyrYrGtPrw)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA compiler, NimStringDesc* cfile);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getEnv__hhED57tMl0Iaa5bOg9cJaig)(NimStringDesc* key, NimStringDesc* default_0);
N_LIB_PRIVATE N_NOINLINE(void, liMessage__Q6JNH4uRwLyZrj0dJakHew)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q info, tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w msg, NimStringDesc* arg, tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw eh, tyTuple__kN8up2W6YKc5YA9avn5mV5w info2, NIM_BOOL isRaw);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuFormatSingleElem)(NimStringDesc* formatstr, NimStringDesc* a);
static N_INLINE(NIM_BOOL, needsExeExt__wURcJahTBWvB1wOD7H1W2Aextccomp)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nosaddFileExt)(NimStringDesc* filename, NimStringDesc* ext);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, hcrOn__UhPXgqyDuuU9cKcS8FM883w)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nospquoteShell)(NimStringDesc* s);
static N_INLINE(NIM_BOOL, noAbsolutePaths__wURcJahTBWvB1wOD7H1W2A_2extccomp)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuJoinSep)(NimStringDesc** a, NI aLen_0, NimStringDesc* sep);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nosjoinPath)(NimStringDesc* head, NimStringDesc* tail);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nosextractFilename)(NimStringDesc* path);
static N_INLINE(NIM_BOOL, isEmpty__kPpSxL0H5sJ9a6ujvdQ0QVQpathutils)(NimStringDesc* x);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toObjFile__GMjJ0d3khWrmxAqhh9anEsw)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* filename);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, completeCfilePath__VmrjcznbGOrooG3SBIdEFQ)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* cfile, NIM_BOOL createSubDir);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, nsuFormatOpenArray)(NimStringDesc* formatstr, NimStringDesc** a, NI aLen_0);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getPrefixDir__oltK69akg0xLqkR2ITKbomg)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, envFlags__cS1sZo7H4weUdOP9bStq60g)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, addChar)(NimStringDesc* s, NIM_CHAR c);
N_LIB_PRIVATE N_NIMCALL(void, nsuAddf)(NimStringDesc** s, NimStringDesc* formatstr, NimStringDesc** a, NI aLen_0);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, vccplatform__cS1sZo7H4weUdOP9bStq60g_2)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf);
static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b);
static N_INLINE(NIM_BOOL, equalMem__9bGgqEk7RXXl6eqM9c1HdELAsystem)(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__gq12VLhVO0NBzUTnGgz4nw)(FILE** f, NimStringDesc* filename, tyEnum_FileMode__ZJfK20XeZ9bv2j1pZjw9aswg mode, NI bufSize);
N_LIB_PRIVATE N_NIMCALL(void, parseSecureHash__S6VQ00WVRv4bBNU469arlSA)(NimStringDesc* hash, tyArray__YtcvxHNKV4YiecPE9ap1mcA Result);
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, readLine__IfmAdseskhTUnfEYpOo5fA)(FILE* f);
N_LIB_PRIVATE N_NIMCALL(void, close__fU6ZlJAtQ9bre04EDZLdGsA)(FILE* f);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, eqeq___gecBgtI3c7HdE9cwshfzHjQ)(tyArray__YtcvxHNKV4YiecPE9ap1mcA a, tyArray__YtcvxHNKV4YiecPE9ap1mcA b);
static N_INLINE(void, writeLine__45Em82MGXqv9biomV0DEbSgio)(FILE* f, NimStringDesc** x, NI xLen_0);
N_LIB_PRIVATE N_NIMCALL(void, write__PArlm09bKklm2BLsCg6YtaA)(FILE* f, NimStringDesc* s);
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, nostryRemoveFile)(NimStringDesc* file);
N_LIB_PRIVATE N_NIMCALL(TGenericSeq*, incrSeqV3)(TGenericSeq* s, TNimType* typ);
N_LIB_PRIVATE N_NIMCALL(void, insert__QiSrmi7QFVZLWumqReTo7w)(tySequence__sM4lkSb7zS6F7OVMvW9cffQ** x, NimStringDesc* item, NI i);
N_LIB_PRIVATE N_NIMCALL(void, nstPut)(tyObject_StringTableObj__V5PVrt9bIxZEeV7lfvqqtNg* t, NimStringDesc* key, NimStringDesc* val);

/* section: NIM_merge_DATA */
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_2, "extccomp.nim(627, 31) `false` ", 30);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_3, "sha1", 4);
extern NIM_CONST tyArray__geAxQ09aiJ4i2plLZEkYDpg OS__Jx0qy9c9bSo4fGkMxUfUaAaw;
extern NIM_CONST tyArray__8d8P9caia9cszVjIJKsQGMQA CPU__uYXopJX8pM87pQDCtmgWfQ;
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_4, "gcc", 3);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_5, "o", 1);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_6, " -O3 -fno-ident", 15);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_7, " -Os -fno-ident", 15);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_8, "g++", 3);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_9, "-c $options $include -o $objfile $file", 38);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_10, " -mwindows", 10);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_11, " -shared", 8);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_12, "ar rcs $libfile $objfiles", 25);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_13, "$buildgui $builddll -o $exefile $objfiles $options", 50);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_14, " -I", 3);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_15, " -L", 3);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_16, " -l$1", 5);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_17, "-fPIC", 5);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_18, "asm($1);$n", 10);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_19, "$1 $3 $2 ", 9);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_20, "-Wa,-acdl=$asmfile -g -fverbose-asm -masm=intel", 47);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_21, "-std=gnu++14 -funsigned-char", 28);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_22, "switch_gcc", 10);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_23, " -O3 ", 5);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_24, " -Os ", 5);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_25, "aarch64-none-elf-gcc", 20);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_26, "aarch64-none-elf-g++", 20);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_27, "-w -MMD -MP -MF $dfile -c $options $include -o $objfile $file", 61);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_28, "aarch64-none-elf-gcc-ar rcs $libfile $objfiles", 46);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_29, "$buildgui $builddll -Wl,-Map,$mapfile -o $exefile $objfiles $op"
"tions", 68);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_30, "-fPIE", 5);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_31, "llvm_gcc", 8);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_32, "llvm-gcc", 8);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_33, "llvm-g++", 8);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_34, "clang", 5);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_35, "clang++", 7);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_36, "bcc", 3);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_37, "obj", 3);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_38, " -O3 -6 ", 8);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_39, " -O1 -6 ", 8);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_40, "bcc32c", 6);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_41, "cpp32c", 6);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_42, "-c $options $include -o$objfile $file", 37);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_43, " -tW", 4);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_44, " -tWD", 5);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_45, "bcc32", 5);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_46, "$options $buildgui $builddll -e$exefile $objfiles", 49);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_47, "__asm{$n$1$n}$n", 15);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_48, "$1 $2", 5);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_49, "vcc", 3);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_50, " /Ogityb2 ", 10);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_51, " /O1 ", 5);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_52, "cl", 2);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_53, "/c$vccplatform $options $include /nologo /Fo$objfile $file", 58);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_54, " /SUBSYSTEM:WINDOWS user32.lib ", 31);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_55, " /LD", 4);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_56, "lib /OUT:$libfile $objfiles", 27);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_57, "$builddll$vccplatform /Fe$exefile $objfiles $buildgui /nologo $"
"options", 70);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_58, " /I", 3);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_59, " /LIBPATH:", 10);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_60, " $1.lib", 7);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_61, " /RTC1 /Z7 ", 11);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_62, "$3$n$1 $2", 9);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_63, "/Fa$asmfile", 11);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_64, "tcc", 3);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_65, "-Wl,-subsystem=gui", 18);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_66, "-o $exefile $options $buildgui $builddll $objfiles", 50);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_67, " -g ", 4);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_68, "env", 3);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_69, " -O1 ", 5);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_70, "-c $ccenvflags $options $include -o $objfile $file", 50);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_71, " -shared ", 9);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_72, "cc", 2);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_73, "-o $exefile $buildgui $builddll $objfiles $options", 50);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_74, "icl", 3);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_75, "icc", 3);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_76, "clang_cl", 8);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_77, "clang-cl", 8);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_78, "-fuse-ld=lld $builddll$vccplatform /Fe$exefile $objfiles $build"
"gui /nologo $options", 83);
N_LIB_PRIVATE NIM_CONST tyArray__sa9aJ6U8e9b7Bj4Yq8itsR8w CC__78I18QZNZFIv9ah7oETc0jg = {{((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_4),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_5),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_6),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_7),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_4),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_8),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_9),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_10),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_11),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_12),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_13),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_14),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_15),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_16),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_17),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_18),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_19),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_20),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_21),
183}
,
{((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_22),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_5),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_23),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_24),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_25),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_26),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_27),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_10),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_11),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_28),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_25),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_29),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_14),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_15),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_16),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_30),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_18),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_19),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_20),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_21),
183}
,
{((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_31),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_5),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_6),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_7),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_32),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_33),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_9),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_10),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_11),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_12),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_13),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_14),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_15),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_16),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_17),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_18),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_19),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_20),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_21),
183}
,
{((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_34),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_5),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_6),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_7),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_34),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_35),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_9),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_10),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_11),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_12),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_13),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_14),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_15),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_16),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_17),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_18),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_19),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_20),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_21),
183}
,
{((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_36),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_37),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_38),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_39),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_40),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_41),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_42),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_43),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_44),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_45),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_46),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_14),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_47),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_48),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) NIM_NIL),
151}
,
{((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_49),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_37),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_50),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_51),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_52),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_52),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_53),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_54),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_55),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_56),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_52),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_57),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_58),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_59),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_60),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_61),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_47),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_62),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_63),
((NimStringDesc*) NIM_NIL),
76}
,
{((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_64),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_5),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_64),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_9),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_65),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_11),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_64),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_66),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_14),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_67),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_18),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_48),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_20),
((NimStringDesc*) NIM_NIL),
35}
,
{((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_68),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_5),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_23),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_69),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_70),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_71),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_72),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_73),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_14),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_47),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_48),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) NIM_NIL),
32}
,
{((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_74),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_37),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_50),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_51),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_74),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_52),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_53),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_54),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_55),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_56),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_74),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_57),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_58),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_59),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_60),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_61),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_47),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_62),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_63),
((NimStringDesc*) NIM_NIL),
76}
,
{((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_75),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_5),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_6),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_7),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_75),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_8),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_9),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_10),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_11),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_12),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_75),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_13),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_14),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_15),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_16),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_17),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_18),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_19),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_20),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_21),
183}
,
{((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_76),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_37),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_50),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_51),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_77),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_77),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_53),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_54),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_55),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_56),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_77),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_78),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_58),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_59),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_60),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_61),
((NimStringDesc*) NIM_NIL),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_47),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_62),
((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_63),
((NimStringDesc*) NIM_NIL),
76}
}
;
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_79, " ", 1);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_80, ".debug", 6);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_81, ".", 1);
extern TNimType NTI__4OBsgZ9cscH2JLUE5Wcz01g_;
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_82, ".options.debug", 14);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_83, ".speed", 6);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_84, ".options.speed", 14);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_85, ".size", 5);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_86, ".options.size", 13);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_87, ".always", 7);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_88, ".c", 2);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_89, ".exe", 4);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_90, "CXX", 3);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_91, "CC", 2);
static NIM_CONST tyObject_TLineInfo__WGx4rAexNXnczy1Avn646Q TM__OyL9acDBDoBfMwa5zb1Y88w_92 = {((NU16) 0), ((NI16) -1), ((NI32) -1)}
;
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_93, "Compiler \'$1\' doesn\'t support the requested target", 50);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_95, "/Users/runner/work/nim4py/nim4py/Nim/compiler/extccomp.nim", 58);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__OyL9acDBDoBfMwa5zb1Y88w_94 = {((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_95),
((NI) 501),
((NI) 14)}
;
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_96, "exe", 3);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_97, ".d", 2);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_98, "dfile", 5);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_99, "file", 4);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_100, "objfile", 7);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_101, "options", 7);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_102, "include", 7);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_103, "nim", 3);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_104, "lib", 3);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_105, "ccenvflags", 10);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_106, "CXXFLAGS", 8);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_107, "CFLAGS", 6);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_108, ".asm", 4);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_109, "asmfile", 7);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_110, "Produced assembler here: ", 25);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__OyL9acDBDoBfMwa5zb1Y88w_111 = {((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_95),
((NI) 601),
((NI) 18)}
;
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_112, "Couldn\'t produce assembler listing for the selected C compiler:"
" ", 64);
static NIM_CONST tyTuple__kN8up2W6YKc5YA9avn5mV5w TM__OyL9acDBDoBfMwa5zb1Y88w_113 = {((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_95),
((NI) 604),
((NI) 18)}
;
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_114, "vccplatform", 11);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_115, "vccexe.exe", 10);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_116, " --platform:x86", 15);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_117, " --platform:arm", 15);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_118, " --platform:amd64", 17);
STRING_LITERAL(TM__OyL9acDBDoBfMwa5zb1Y88w_119, "\012", 1);
extern TNimType NTI__pK3qSsBZwdXd6qyUMkd5Jw_;

/* section: NIM_merge_VARS */
extern NIM_BOOL nimInErrorMode__759bT87luu8XGcbkw13FUjA;

/* section: NIM_merge_PROCS */
static N_INLINE(NIM_BOOL*, nimErrorFlag)(void) {
	NIM_BOOL* result;
	result = (NIM_BOOL*)0;
	result = (&nimInErrorMode__759bT87luu8XGcbkw13FUjA);
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, completeCfilePath__VmrjcznbGOrooG3SBIdEFQ)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* cfile, NIM_BOOL createSubDir) {
	NimStringDesc* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NimStringDesc*)0;
	result = completeGeneratedFilePath__0Bq74PTyfNijlbTXdbzW9bw(conf, cfile, createSubDir);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(void, nimSetMem__zxfKBYntu9cBapkhrCOk1fgmemory)(void* a, int v, NI size) {
	void* T1_;
	T1_ = (void*)0;
	T1_ = memset(a, v, ((size_t) (size)));
}
static N_INLINE(void, nimZeroMem)(void* p, NI size) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	nimSetMem__zxfKBYntu9cBapkhrCOk1fgmemory(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__i80o3k0SgEI5gTRCzYdyWAsystem)(void* dest, void* source, NI size) {
	nimCopyMem(dest, source, size);
}
static N_INLINE(void, appendString)(NimStringDesc* dest, NimStringDesc* src) {
	{
		void* T5_;
		void* T6_;
		if (!!((src == NIM_NIL))) goto LA3_;
		T5_ = (void*)0;
		T5_ = ((void*) ((&(*dest).data[(*dest).Sup.len])));
		T6_ = (void*)0;
		T6_ = ((void*) ((*src).data));
		copyMem__i80o3k0SgEI5gTRCzYdyWAsystem(T5_, T6_, ((NI) ((NI)((*src).Sup.len + ((NI) 1)))));
		(*dest).Sup.len += (*src).Sup.len;
	}
	LA3_: ;
}
static N_INLINE(NIM_CHAR, X5BX5D___okzHJ6GE9cv0bYG3b4r5KCAsystem)(NimStringDesc* s, NI i) {
	NIM_CHAR result;
	result = (NIM_CHAR)0;
	result = s->data[(NI)((s ? s->Sup.len : 0) - i)];
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, addOpt__uSovO2RAvymqBoy9crgVjtA)(NimStringDesc** dest, NimStringDesc* src) {
	{
		NIM_BOOL T3_;
		NIM_CHAR T5_;
		T3_ = (NIM_BOOL)0;
		T3_ = (((*dest) ? (*dest)->Sup.len : 0) == ((NI) 0));
		if (T3_) goto LA4_;
		T5_ = (NIM_CHAR)0;
		T5_ = X5BX5D___okzHJ6GE9cv0bYG3b4r5KCAsystem((*dest), ((NI) 1));
		T3_ = !(((NU8)(T5_) == (NU8)(32)));
		LA4_: ;
		if (!T3_) goto LA6_;
		(*dest) = resizeString((*dest), 1);
appendString((*dest), ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_79));
	}
	LA6_: ;
	(*dest) = resizeString((*dest), (src ? src->Sup.len : 0) + 0);
appendString((*dest), src);
}
static N_INLINE(void, appendChar)(NimStringDesc* dest, NIM_CHAR c) {
	(*dest).data[(*dest).Sup.len] = c;
	(*dest).data[(NI)((*dest).Sup.len + ((NI) 1))] = 0;
	(*dest).Sup.len += ((NI) 1);
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getConfigVar__yFoF7FUju4sVQL0kUhJ68Q)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA c, NimStringDesc* suffix) {
	NimStringDesc* result;
	NimStringDesc* fullSuffix;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NimStringDesc*)0;
	fullSuffix = copyString(suffix);
	switch ((*conf).backend) {
	case ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2):
	case ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 3):
	case ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 4):
	{
		NimStringDesc* T2_;
		T2_ = (NimStringDesc*)0;
		T2_ = rawNewString((reprEnum((NI)(*conf).backend, (&NTI__4OBsgZ9cscH2JLUE5Wcz01g_)) ? reprEnum((NI)(*conf).backend, (&NTI__4OBsgZ9cscH2JLUE5Wcz01g_))->Sup.len : 0) + (suffix ? suffix->Sup.len : 0) + 1);
appendString(T2_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_81));
appendString(T2_, reprEnum((NI)(*conf).backend, (&NTI__4OBsgZ9cscH2JLUE5Wcz01g_)));
appendString(T2_, suffix);
		fullSuffix = T2_;
	}
	break;
	case ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 1):
	{
	}
	break;
	case ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 0):
	{
		result = ((NimStringDesc*) NIM_NIL);
		goto BeforeRet_;
	}
	break;
	}
	{
		NIM_BOOL T7_;
		NIM_BOOL T8_;
		NimStringDesc* fullCCname;
		NimStringDesc* T13_;
		T7_ = (NIM_BOOL)0;
		T8_ = (NIM_BOOL)0;
		T8_ = !(((*conf).target.hostOS == (*conf).target.targetOS));
		if (T8_) goto LA9_;
		T8_ = !(((*conf).target.hostCPU == (*conf).target.targetCPU));
		LA9_: ;
		T7_ = T8_;
		if (!(T7_)) goto LA10_;
		T7_ = !((((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 4))&63U)))!=0));
		LA10_: ;
		if (!T7_) goto LA11_;
		T13_ = (NimStringDesc*)0;
		T13_ = rawNewString((CPU__uYXopJX8pM87pQDCtmgWfQ[((*conf).target.targetCPU)- 1].Field0 ? CPU__uYXopJX8pM87pQDCtmgWfQ[((*conf).target.targetCPU)- 1].Field0->Sup.len : 0) + (OS__Jx0qy9c9bSo4fGkMxUfUaAaw[((*conf).target.targetOS)- 1].Field0 ? OS__Jx0qy9c9bSo4fGkMxUfUaAaw[((*conf).target.targetOS)- 1].Field0->Sup.len : 0) + (CC__78I18QZNZFIv9ah7oETc0jg[(c)- 1].Field0 ? CC__78I18QZNZFIv9ah7oETc0jg[(c)- 1].Field0->Sup.len : 0) + (fullSuffix ? fullSuffix->Sup.len : 0) + 2);
appendString(T13_, CPU__uYXopJX8pM87pQDCtmgWfQ[((*conf).target.targetCPU)- 1].Field0);
appendChar(T13_, 46);
appendString(T13_, OS__Jx0qy9c9bSo4fGkMxUfUaAaw[((*conf).target.targetOS)- 1].Field0);
appendChar(T13_, 46);
appendString(T13_, CC__78I18QZNZFIv9ah7oETc0jg[(c)- 1].Field0);
appendString(T13_, fullSuffix);
		fullCCname = T13_;
		result = getConfigVar__nT6pi8CimjduqrsM6Cc8mQ(conf, fullCCname, ((NimStringDesc*) NIM_NIL));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		{
			NimStringDesc* T18_;
			if (!((result ? result->Sup.len : 0) == ((NI) 0))) goto LA16_;
			T18_ = (NimStringDesc*)0;
			T18_ = rawNewString((CC__78I18QZNZFIv9ah7oETc0jg[(c)- 1].Field0 ? CC__78I18QZNZFIv9ah7oETc0jg[(c)- 1].Field0->Sup.len : 0) + (fullSuffix ? fullSuffix->Sup.len : 0) + 0);
appendString(T18_, CC__78I18QZNZFIv9ah7oETc0jg[(c)- 1].Field0);
appendString(T18_, fullSuffix);
			result = getConfigVar__nT6pi8CimjduqrsM6Cc8mQ(conf, T18_, ((NimStringDesc*) NIM_NIL));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		LA16_: ;
	}
	goto LA5_;
	LA11_: ;
	{
		NimStringDesc* T20_;
		T20_ = (NimStringDesc*)0;
		T20_ = rawNewString((CC__78I18QZNZFIv9ah7oETc0jg[(c)- 1].Field0 ? CC__78I18QZNZFIv9ah7oETc0jg[(c)- 1].Field0->Sup.len : 0) + (fullSuffix ? fullSuffix->Sup.len : 0) + 0);
appendString(T20_, CC__78I18QZNZFIv9ah7oETc0jg[(c)- 1].Field0);
appendString(T20_, fullSuffix);
		result = getConfigVar__nT6pi8CimjduqrsM6Cc8mQ(conf, T20_, ((NimStringDesc*) NIM_NIL));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA5_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getDebug__fHOlJ3I1m1sG8h0fniEtOw)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA c) {
	NimStringDesc* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NimStringDesc*)0;
	result = getConfigVar__yFoF7FUju4sVQL0kUhJ68Q(conf, c, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_82));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		if (!((result ? result->Sup.len : 0) == 0)) goto LA3_;
		result = copyString(CC__78I18QZNZFIv9ah7oETc0jg[(c)- 1].Field15);
	}
	LA3_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getOptSpeed__fHOlJ3I1m1sG8h0fniEtOw_2)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA c) {
	NimStringDesc* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NimStringDesc*)0;
	result = getConfigVar__yFoF7FUju4sVQL0kUhJ68Q(conf, c, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_84));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		if (!((result ? result->Sup.len : 0) == 0)) goto LA3_;
		result = copyString(CC__78I18QZNZFIv9ah7oETc0jg[(c)- 1].Field2);
	}
	LA3_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getOptSize__fHOlJ3I1m1sG8h0fniEtOw_3)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA c) {
	NimStringDesc* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NimStringDesc*)0;
	result = getConfigVar__yFoF7FUju4sVQL0kUhJ68Q(conf, c, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_86));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		if (!((result ? result->Sup.len : 0) == 0)) goto LA3_;
		result = copyString(CC__78I18QZNZFIv9ah7oETc0jg[(c)- 1].Field3);
	}
	LA3_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, cFileSpecificOptions__qenQYPV4hXyQmNT9c9aOOH9cQ)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* nimname, NimStringDesc* fullNimFile) {
	NimStringDesc* result;
	NimStringDesc* key_4;
	NimStringDesc* T48_;
	NimStringDesc* T55_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NimStringDesc*)0;
	result = copyString((*conf).compileOptions);
	{
		NimStringDesc** option;
		NI i;
		NI L;
		NI T2_;
		option = (NimStringDesc**)0;
		i = ((NI) 0);
		T2_ = ((*conf).compileOptionsCmd ? (*conf).compileOptionsCmd->Sup.len : 0);
		L = T2_;
		{
			while (1) {
				if (!(i < L)) goto LA4;
				option = (&(*conf).compileOptionsCmd->data[i]);
				{
					NI T7_;
					T7_ = (NI)0;
					T7_ = nsuFindStr(result, (*option), ((NI) 0), ((NI) 0));
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					if (!(T7_ < ((NI) 0))) goto LA8_;
					addOpt__uSovO2RAvymqBoy9crgVjtA((&result), (*option));
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				}
				LA8_: ;
				i += ((NI) 1);
			} LA4: ;
		}
	}
	{
		NimStringDesc* key;
		NimStringDesc* T14_;
		if (!(((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 6))&63U)))!=0)) goto LA12_;
		T14_ = (NimStringDesc*)0;
		T14_ = rawNewString((nimname ? nimname->Sup.len : 0) + 6);
appendString(T14_, nimname);
appendString(T14_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_80));
		key = T14_;
		{
			NIM_BOOL T17_;
			NimStringDesc* T20_;
			T17_ = (NIM_BOOL)0;
			T17_ = existsConfigVar__ut8y6zhxwL6n6Sz9akfQBGg(conf, key);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!T17_) goto LA18_;
			T20_ = (NimStringDesc*)0;
			T20_ = getConfigVar__nT6pi8CimjduqrsM6Cc8mQ(conf, key, ((NimStringDesc*) NIM_NIL));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			addOpt__uSovO2RAvymqBoy9crgVjtA((&result), T20_);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA15_;
		LA18_: ;
		{
			NimStringDesc* T22_;
			T22_ = (NimStringDesc*)0;
			T22_ = getDebug__fHOlJ3I1m1sG8h0fniEtOw(conf, (*conf).cCompiler);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			addOpt__uSovO2RAvymqBoy9crgVjtA((&result), T22_);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		LA15_: ;
	}
	LA12_: ;
	{
		NimStringDesc* key_2;
		NimStringDesc* T27_;
		if (!(((*conf).options &(1U<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 15))&31U)))!=0)) goto LA25_;
		T27_ = (NimStringDesc*)0;
		T27_ = rawNewString((nimname ? nimname->Sup.len : 0) + 6);
appendString(T27_, nimname);
appendString(T27_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_83));
		key_2 = T27_;
		{
			NIM_BOOL T30_;
			NimStringDesc* T33_;
			T30_ = (NIM_BOOL)0;
			T30_ = existsConfigVar__ut8y6zhxwL6n6Sz9akfQBGg(conf, key_2);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!T30_) goto LA31_;
			T33_ = (NimStringDesc*)0;
			T33_ = getConfigVar__nT6pi8CimjduqrsM6Cc8mQ(conf, key_2, ((NimStringDesc*) NIM_NIL));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			addOpt__uSovO2RAvymqBoy9crgVjtA((&result), T33_);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA28_;
		LA31_: ;
		{
			NimStringDesc* T35_;
			T35_ = (NimStringDesc*)0;
			T35_ = getOptSpeed__fHOlJ3I1m1sG8h0fniEtOw_2(conf, (*conf).cCompiler);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			addOpt__uSovO2RAvymqBoy9crgVjtA((&result), T35_);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		LA28_: ;
	}
	goto LA23_;
	LA25_: ;
	{
		NimStringDesc* key_3;
		NimStringDesc* T39_;
		if (!(((*conf).options &(1U<<((NU)(((tyEnum_TOption__WspMeQySXNP2XoTWR5MTgg) 16))&31U)))!=0)) goto LA37_;
		T39_ = (NimStringDesc*)0;
		T39_ = rawNewString((nimname ? nimname->Sup.len : 0) + 5);
appendString(T39_, nimname);
appendString(T39_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_85));
		key_3 = T39_;
		{
			NIM_BOOL T42_;
			NimStringDesc* T45_;
			T42_ = (NIM_BOOL)0;
			T42_ = existsConfigVar__ut8y6zhxwL6n6Sz9akfQBGg(conf, key_3);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!T42_) goto LA43_;
			T45_ = (NimStringDesc*)0;
			T45_ = getConfigVar__nT6pi8CimjduqrsM6Cc8mQ(conf, key_3, ((NimStringDesc*) NIM_NIL));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			addOpt__uSovO2RAvymqBoy9crgVjtA((&result), T45_);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA40_;
		LA43_: ;
		{
			NimStringDesc* T47_;
			T47_ = (NimStringDesc*)0;
			T47_ = getOptSize__fHOlJ3I1m1sG8h0fniEtOw_3(conf, (*conf).cCompiler);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			addOpt__uSovO2RAvymqBoy9crgVjtA((&result), T47_);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		LA40_: ;
	}
	goto LA23_;
	LA37_: ;
	LA23_: ;
	T48_ = (NimStringDesc*)0;
	T48_ = rawNewString((nimname ? nimname->Sup.len : 0) + 7);
appendString(T48_, nimname);
appendString(T48_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_87));
	key_4 = T48_;
	{
		NIM_BOOL T51_;
		NimStringDesc* T54_;
		T51_ = (NIM_BOOL)0;
		T51_ = existsConfigVar__ut8y6zhxwL6n6Sz9akfQBGg(conf, key_4);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!T51_) goto LA52_;
		T54_ = (NimStringDesc*)0;
		T54_ = getConfigVar__nT6pi8CimjduqrsM6Cc8mQ(conf, key_4, ((NimStringDesc*) NIM_NIL));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		addOpt__uSovO2RAvymqBoy9crgVjtA((&result), T54_);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA52_: ;
	T55_ = (NimStringDesc*)0;
	T55_ = getOrDefault__2a0cbxcfpWcXtK45m9bR5Kg((*conf).cfileSpecificOptions, fullNimFile, ((NimStringDesc*) NIM_NIL));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	addOpt__uSovO2RAvymqBoy9crgVjtA((&result), T55_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, useCpp__CiPnKL2TIba667EvWphSyw)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* cfile) {
	NIM_BOOL result;
	NIM_BOOL T1_;
	NIM_BOOL T3_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	T1_ = (NIM_BOOL)0;
	T1_ = ((*conf).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2));
	if (!(T1_)) goto LA2_;
	T3_ = (NIM_BOOL)0;
	T3_ = nsuEndsWith(cfile, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_88));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T1_ = !(T3_);
	LA2_: ;
	result = T1_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getCompilerExe__C0I5a08dQ0OlRyrYrGtPrw)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA compiler, NimStringDesc* cfile) {
	NimStringDesc* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NimStringDesc*)0;
	{
		if (!(compiler == ((tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA) 8))) goto LA3_;
		{
			NIM_BOOL T7_;
			T7_ = (NIM_BOOL)0;
			T7_ = useCpp__CiPnKL2TIba667EvWphSyw(conf, cfile);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!T7_) goto LA8_;
			result = getEnv__hhED57tMl0Iaa5bOg9cJaig(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_90), ((NimStringDesc*) NIM_NIL));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA5_;
		LA8_: ;
		{
			result = getEnv__hhED57tMl0Iaa5bOg9cJaig(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_91), ((NimStringDesc*) NIM_NIL));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		LA5_: ;
	}
	goto LA1_;
	LA3_: ;
	{
		{
			NIM_BOOL T14_;
			T14_ = (NIM_BOOL)0;
			T14_ = useCpp__CiPnKL2TIba667EvWphSyw(conf, cfile);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!T14_) goto LA15_;
			result = copyString(CC__78I18QZNZFIv9ah7oETc0jg[(compiler)- 1].Field5);
		}
		goto LA12_;
		LA15_: ;
		{
			result = copyString(CC__78I18QZNZFIv9ah7oETc0jg[(compiler)- 1].Field4);
		}
		LA12_: ;
	}
	LA1_: ;
	{
		NimStringDesc* T22_;
		if (!((result ? result->Sup.len : 0) == ((NI) 0))) goto LA20_;
		T22_ = (NimStringDesc*)0;
		T22_ = nsuFormatSingleElem(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_93), CC__78I18QZNZFIv9ah7oETc0jg[(compiler)- 1].Field0);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		liMessage__Q6JNH4uRwLyZrj0dJakHew(conf, TM__OyL9acDBDoBfMwa5zb1Y88w_92, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 10), T22_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 1), TM__OyL9acDBDoBfMwa5zb1Y88w_94, NIM_FALSE);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA20_: ;
	}BeforeRet_: ;
	return result;
}
static N_INLINE(NIM_BOOL, needsExeExt__wURcJahTBWvB1wOD7H1W2Aextccomp)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* 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__RAfAEZqjnKMDumgyKKc1qw) 10))&63U)))!=0);
	if (!(T2_)) goto LA3_;
	T2_ = ((*conf).target.targetOS == ((tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ) 2));
	LA3_: ;
	T1_ = T2_;
	if (T1_) goto LA4_;
	T1_ = ((*conf).target.hostOS == ((tyEnum_TSystemOS__s7Mlr1t66SUqP6BKJMXLaQ) 2));
	LA4_: ;
	result = T1_;
	return result;
}
static N_INLINE(NIM_BOOL, noAbsolutePaths__wURcJahTBWvB1wOD7H1W2A_2extccomp)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
	NIM_BOOL result;
	result = (NIM_BOOL)0;
	result = !((((*conf).globalOptions & 3072) == 0));
	return result;
}
static N_INLINE(NIM_BOOL, isEmpty__kPpSxL0H5sJ9a6ujvdQ0QVQpathutils)(NimStringDesc* x) {
	NIM_BOOL result;
	result = (NIM_BOOL)0;
	result = ((x ? x->Sup.len : 0) == ((NI) 0));
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, toObjFile__GMjJ0d3khWrmxAqhh9anEsw)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* filename) {
	NimStringDesc* result;
	NimStringDesc* T1_;
	result = (NimStringDesc*)0;
	T1_ = (NimStringDesc*)0;
	T1_ = rawNewString((filename ? filename->Sup.len : 0) + (CC__78I18QZNZFIv9ah7oETc0jg[((*conf).cCompiler)- 1].Field1 ? CC__78I18QZNZFIv9ah7oETc0jg[((*conf).cCompiler)- 1].Field1->Sup.len : 0) + 1);
appendString(T1_, filename);
appendString(T1_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_81));
appendString(T1_, CC__78I18QZNZFIv9ah7oETc0jg[((*conf).cCompiler)- 1].Field1);
	result = T1_;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, envFlags__cS1sZo7H4weUdOP9bStq60g)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
	NimStringDesc* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NimStringDesc*)0;
	{
		if (!((*conf).backend == ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 2))) goto LA3_;
		result = getEnv__hhED57tMl0Iaa5bOg9cJaig(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_106), ((NimStringDesc*) NIM_NIL));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	goto LA1_;
	LA3_: ;
	{
		result = getEnv__hhED57tMl0Iaa5bOg9cJaig(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_107), ((NimStringDesc*) NIM_NIL));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA1_: ;
	}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__9bGgqEk7RXXl6eqM9c1HdELAsystem)(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)(NimStringDesc* a, NimStringDesc* b) {
	NIM_BOOL result;
	NI alen;
	NI blen;
{	result = (NIM_BOOL)0;
	alen = (a ? a->Sup.len : 0);
	blen = (b ? b->Sup.len : 0);
	{
		if (!(alen == blen)) goto LA3_;
		{
			if (!(alen == ((NI) 0))) goto LA7_;
			result = NIM_TRUE;
			goto BeforeRet_;
		}
		LA7_: ;
		result = equalMem__9bGgqEk7RXXl6eqM9c1HdELAsystem(((void*) ((&a->data[((NI) 0)]))), ((void*) ((&b->data[((NI) 0)]))), ((NI) (alen)));
		goto BeforeRet_;
	}
	LA3_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, vccplatform__cS1sZo7H4weUdOP9bStq60g_2)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf) {
	NimStringDesc* result;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NimStringDesc*)0;
	{
		NimStringDesc* exe;
		if (!((*conf).cCompiler == ((tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA) 6))) goto LA3_;
		exe = getConfigVar__yFoF7FUju4sVQL0kUhJ68Q(conf, (*conf).cCompiler, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_89));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		{
			NimStringDesc* T7_;
			T7_ = (NimStringDesc*)0;
			T7_ = nosextractFilename(exe);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!eqStrings(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_115), T7_)) goto LA8_;
			switch ((*conf).target.targetCPU) {
			case ((tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag) 1):
			{
				result = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_116));
			}
			break;
			case ((tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag) 14):
			{
				result = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_117));
			}
			break;
			case ((tyEnum_TSystemCPU__XYDt7D1G3qcClFyZy1Ky9ag) 11):
			{
				result = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_118));
			}
			break;
			default:
			{
				result = ((NimStringDesc*) NIM_NIL);
			}
			break;
			}
		}
		LA8_: ;
	}
	LA3_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, getCompileCFileCmd__uOCPoEVtEQdC7k9cm7JeVsw)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg* cfile, NIM_BOOL isMainFile, NIM_BOOL produceOutput) {
	NimStringDesc* result;
	tyEnum_TSystemCC__1eWBJUonHMOnlBwsOvpFmA c;
	NimStringDesc* options;
	NimStringDesc* T1_;
	NimStringDesc* T2_;
	NimStringDesc* exe;
	NimStringDesc* compilePattern;
	NimStringDesc* includeCmd;
	NimStringDesc* T29_;
	NimStringDesc* T30_;
	tyArray__Re75IspeoxXy2oCZHwcRrA T44_;
	NimStringDesc* T45_;
	NimStringDesc* T46_;
	NimStringDesc* cf;
	NimStringDesc* objfile;
	NimStringDesc* dfile;
	NimStringDesc* T72_;
	NimStringDesc* cfsh;
	tyArray__rmMMhDIqORJzUU5zqeitSQ T73_;
	NimStringDesc* T74_;
	NimStringDesc* T75_;
	NimStringDesc* T76_;
	NimStringDesc* T77_;
	tyArray__68WB4OcBspSFyW4LY9cOceA T101_;
	NimStringDesc* T102_;
	NimStringDesc* T103_;
	NimStringDesc* T104_;
	NimStringDesc* T105_;
	NimStringDesc* T106_;
	NimStringDesc* T107_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NimStringDesc*)0;
	c = (*conf).cCompiler;
	T1_ = (NimStringDesc*)0;
	T1_ = (*cfile).nimname;
	T2_ = (NimStringDesc*)0;
	T2_ = noschangeFileExt((*cfile).cname, ((NimStringDesc*) NIM_NIL));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	options = cFileSpecificOptions__qenQYPV4hXyQmNT9c9aOOH9cQ(conf, T1_, T2_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		NIM_BOOL T5_;
		NimStringDesc* T8_;
		T5_ = (NIM_BOOL)0;
		T5_ = useCpp__CiPnKL2TIba667EvWphSyw(conf, (*cfile).cname);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!T5_) goto LA6_;
		T8_ = (NimStringDesc*)0;
		T8_ = rawNewString((CC__78I18QZNZFIv9ah7oETc0jg[(c)- 1].Field20 ? CC__78I18QZNZFIv9ah7oETc0jg[(c)- 1].Field20->Sup.len : 0) + (options ? options->Sup.len : 0) + 1);
appendString(T8_, CC__78I18QZNZFIv9ah7oETc0jg[(c)- 1].Field20);
appendChar(T8_, 32);
appendString(T8_, options);
		options = T8_;
	}
	LA6_: ;
	exe = getConfigVar__yFoF7FUju4sVQL0kUhJ68Q(conf, c, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_89));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		if (!((exe ? exe->Sup.len : 0) == ((NI) 0))) goto LA11_;
		exe = getCompilerExe__C0I5a08dQ0OlRyrYrGtPrw(conf, c, (*cfile).cname);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA11_: ;
	{
		NIM_BOOL T15_;
		T15_ = (NIM_BOOL)0;
		T15_ = needsExeExt__wURcJahTBWvB1wOD7H1W2Aextccomp(conf);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!T15_) goto LA16_;
		exe = nosaddFileExt(exe, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_96));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA16_: ;
	{
		NIM_BOOL T20_;
		NIM_BOOL T21_;
		NIM_BOOL T23_;
		NimStringDesc* T28_;
		T20_ = (NIM_BOOL)0;
		T21_ = (NIM_BOOL)0;
		T21_ = (((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 7))&63U)))!=0);
		if (T21_) goto LA22_;
		T23_ = (NIM_BOOL)0;
		T23_ = hcrOn__UhPXgqyDuuU9cKcS8FM883w(conf);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!(T23_)) goto LA24_;
		T23_ = !(isMainFile);
		LA24_: ;
		T21_ = T23_;
		LA22_: ;
		T20_ = T21_;
		if (!(T20_)) goto LA25_;
		T20_ = ((OS__Jx0qy9c9bSo4fGkMxUfUaAaw[((*conf).target.targetOS)- 1].Field12 &(1U<<((NU)(((tyEnum_TInfoOSProp__thetQwB9agpeQ13qFmAcWhg) 0))&7U)))!=0);
		LA25_: ;
		if (!T20_) goto LA26_;
		T28_ = (NimStringDesc*)0;
		T28_ = rawNewString((CC__78I18QZNZFIv9ah7oETc0jg[(c)- 1].Field16 ? CC__78I18QZNZFIv9ah7oETc0jg[(c)- 1].Field16->Sup.len : 0) + 1);
appendChar(T28_, 32);
appendString(T28_, CC__78I18QZNZFIv9ah7oETc0jg[(c)- 1].Field16);
		options = resizeString(options, (T28_ ? T28_->Sup.len : 0) + 0);
appendString(options, T28_);
	}
	LA26_: ;
	compilePattern = (NimStringDesc*)0;
	T29_ = (NimStringDesc*)0;
	T30_ = (NimStringDesc*)0;
	T30_ = nospquoteShell((*conf).libpath);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T29_ = rawNewString((CC__78I18QZNZFIv9ah7oETc0jg[(c)- 1].Field12 ? CC__78I18QZNZFIv9ah7oETc0jg[(c)- 1].Field12->Sup.len : 0) + (T30_ ? T30_->Sup.len : 0) + 0);
appendString(T29_, CC__78I18QZNZFIv9ah7oETc0jg[(c)- 1].Field12);
appendString(T29_, T30_);
	includeCmd = T29_;
	{
		NIM_BOOL T33_;
		T33_ = (NIM_BOOL)0;
		T33_ = noAbsolutePaths__wURcJahTBWvB1wOD7H1W2A_2extccomp(conf);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!!(T33_)) goto LA34_;
		{
			NimStringDesc** includeDir;
			NI i;
			NI L;
			NI T37_;
			includeDir = (NimStringDesc**)0;
			i = ((NI) 0);
			T37_ = ((*conf).cIncludes ? (*conf).cIncludes->Sup.len : 0);
			L = T37_;
			{
				while (1) {
					tyArray__Re75IspeoxXy2oCZHwcRrA T40_;
					NimStringDesc* T41_;
					NimStringDesc* T42_;
					if (!(i < L)) goto LA39;
					includeDir = (&(*conf).cIncludes->data[i]);
					nimZeroMem((void*)T40_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
					T40_[0] = copyString(CC__78I18QZNZFIv9ah7oETc0jg[(c)- 1].Field12);
					T41_ = (NimStringDesc*)0;
					T41_ = nospquoteShell((*includeDir));
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					T40_[1] = T41_;
					T42_ = (NimStringDesc*)0;
					T42_ = nsuJoinSep(T40_, 2, ((NimStringDesc*) NIM_NIL));
					if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
					includeCmd = resizeString(includeCmd, (T42_ ? T42_->Sup.len : 0) + 0);
appendString(includeCmd, T42_);
					i += ((NI) 1);
				} LA39: ;
			}
		}
		compilePattern = nosjoinPath((*conf).cCompilerPath, exe);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	goto LA31_;
	LA34_: ;
	{
		compilePattern = getCompilerExe__C0I5a08dQ0OlRyrYrGtPrw(conf, c, (*cfile).cname);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA31_: ;
	nimZeroMem((void*)T44_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
	T44_[0] = copyString(CC__78I18QZNZFIv9ah7oETc0jg[(c)- 1].Field12);
	T45_ = (NimStringDesc*)0;
	T45_ = nospquoteShell((*conf).projectPath);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T44_[1] = T45_;
	T46_ = (NimStringDesc*)0;
	T46_ = nsuJoinSep(T44_, 2, ((NimStringDesc*) NIM_NIL));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	includeCmd = resizeString(includeCmd, (T46_ ? T46_->Sup.len : 0) + 0);
appendString(includeCmd, T46_);
	{
		NIM_BOOL T49_;
		T49_ = (NIM_BOOL)0;
		T49_ = noAbsolutePaths__wURcJahTBWvB1wOD7H1W2A_2extccomp(conf);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!T49_) goto LA50_;
		cf = nosextractFilename((*cfile).cname);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	goto LA47_;
	LA50_: ;
	{
		cf = copyString((*cfile).cname);
	}
	LA47_: ;
	{
		NIM_BOOL T55_;
		T55_ = (NIM_BOOL)0;
		T55_ = isEmpty__kPpSxL0H5sJ9a6ujvdQ0QVQpathutils((*cfile).obj);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!T55_) goto LA56_;
		{
			NIM_BOOL T60_;
			T60_ = (NIM_BOOL)0;
			T60_ = !((((*cfile).flags &(1U<<((NU)(((tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA) 1))&7U)))!=0));
			if (T60_) goto LA61_;
			T60_ = noAbsolutePaths__wURcJahTBWvB1wOD7H1W2A_2extccomp(conf);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			LA61_: ;
			if (!T60_) goto LA62_;
			objfile = toObjFile__GMjJ0d3khWrmxAqhh9anEsw(conf, cf);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		goto LA58_;
		LA62_: ;
		{
			tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* T65_;
			NimStringDesc* T66_;
			T65_ = (tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw*)0;
			T65_ = conf;
			T66_ = (NimStringDesc*)0;
			T66_ = toObjFile__GMjJ0d3khWrmxAqhh9anEsw(conf, cf);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			objfile = completeCfilePath__VmrjcznbGOrooG3SBIdEFQ(T65_, T66_, NIM_TRUE);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		LA58_: ;
	}
	goto LA53_;
	LA56_: ;
	{
		NIM_BOOL T68_;
		T68_ = (NIM_BOOL)0;
		T68_ = noAbsolutePaths__wURcJahTBWvB1wOD7H1W2A_2extccomp(conf);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!T68_) goto LA69_;
		objfile = nosextractFilename((*cfile).obj);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	goto LA53_;
	LA69_: ;
	{
		objfile = copyString((*cfile).obj);
	}
	LA53_: ;
	T72_ = (NimStringDesc*)0;
	T72_ = noschangeFileExt(objfile, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_97));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	dfile = nospquoteShell(T72_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	cfsh = nospquoteShell(cf);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	nimZeroMem((void*)T73_, sizeof(tyArray__rmMMhDIqORJzUU5zqeitSQ));
	T73_[0] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_98));
	T73_[1] = copyString(dfile);
	T73_[2] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_99));
	T73_[3] = copyString(cfsh);
	T73_[4] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_100));
	T74_ = (NimStringDesc*)0;
	T74_ = nospquoteShell(objfile);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T73_[5] = T74_;
	T73_[6] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_101));
	T73_[7] = copyString(options);
	T73_[8] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_102));
	T73_[9] = copyString(includeCmd);
	T73_[10] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_103));
	T75_ = (NimStringDesc*)0;
	T75_ = getPrefixDir__oltK69akg0xLqkR2ITKbomg(conf);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T73_[11] = T75_;
	T73_[12] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_104));
	T73_[13] = copyString((*conf).libpath);
	T73_[14] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_105));
	T76_ = (NimStringDesc*)0;
	T76_ = envFlags__cS1sZo7H4weUdOP9bStq60g(conf);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T73_[15] = T76_;
	T77_ = (NimStringDesc*)0;
	T77_ = nsuFormatOpenArray(compilePattern, T73_, 16);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	result = nospquoteShell(T77_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		if (!(((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 45))&63U)))!=0)) goto LA80_;
		{
			NimStringDesc* asmfile;
			NimStringDesc* T86_;
			tyArray__Re75IspeoxXy2oCZHwcRrA T87_;
			NimStringDesc* T88_;
			if (!(((NI) 0) < (CC__78I18QZNZFIv9ah7oETc0jg[((*conf).cCompiler)- 1].Field19 ? CC__78I18QZNZFIv9ah7oETc0jg[((*conf).cCompiler)- 1].Field19->Sup.len : 0))) goto LA84_;
			T86_ = (NimStringDesc*)0;
			T86_ = noschangeFileExt(objfile, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_108));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			asmfile = nospquoteShell(T86_);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			nimZeroMem((void*)T87_, sizeof(tyArray__Re75IspeoxXy2oCZHwcRrA));
			T87_[0] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_109));
			T87_[1] = copyString(asmfile);
			T88_ = (NimStringDesc*)0;
			T88_ = nsuFormatOpenArray(CC__78I18QZNZFIv9ah7oETc0jg[((*conf).cCompiler)- 1].Field19, T87_, 2);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			addOpt__uSovO2RAvymqBoy9crgVjtA((&result), T88_);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			{
				NimStringDesc* T93_;
				if (!produceOutput) goto LA91_;
				T93_ = (NimStringDesc*)0;
				T93_ = rawNewString((asmfile ? asmfile->Sup.len : 0) + 25);
appendString(T93_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_110));
appendString(T93_, asmfile);
				liMessage__Q6JNH4uRwLyZrj0dJakHew(conf, TM__OyL9acDBDoBfMwa5zb1Y88w_92, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 80), T93_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 1), TM__OyL9acDBDoBfMwa5zb1Y88w_111, NIM_FALSE);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
			LA91_: ;
		}
		goto LA82_;
		LA84_: ;
		{
			{
				tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* T99_;
				NimStringDesc* T100_;
				if (!produceOutput) goto LA97_;
				T99_ = (tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw*)0;
				T99_ = conf;
				T100_ = (NimStringDesc*)0;
				T100_ = rawNewString((CC__78I18QZNZFIv9ah7oETc0jg[((*conf).cCompiler)- 1].Field0 ? CC__78I18QZNZFIv9ah7oETc0jg[((*conf).cCompiler)- 1].Field0->Sup.len : 0) + 64);
appendString(T100_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_112));
appendString(T100_, CC__78I18QZNZFIv9ah7oETc0jg[((*conf).cCompiler)- 1].Field0);
				liMessage__Q6JNH4uRwLyZrj0dJakHew(T99_, TM__OyL9acDBDoBfMwa5zb1Y88w_92, ((tyEnum_TMsgKind__29cbg2fC1z5iM1PAI28kR5w) 80), T100_, ((tyEnum_TErrorHandling__q4fXoCN3Xdcm6SS9cUkWkWw) 1), TM__OyL9acDBDoBfMwa5zb1Y88w_113, NIM_FALSE);
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			}
			LA97_: ;
		}
		LA82_: ;
	}
	LA80_: ;
	result = addChar(result, 32);
	nimZeroMem((void*)T101_, sizeof(tyArray__68WB4OcBspSFyW4LY9cOceA));
	T101_[0] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_98));
	T101_[1] = copyString(dfile);
	T101_[2] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_99));
	T101_[3] = copyString(cfsh);
	T101_[4] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_100));
	T102_ = (NimStringDesc*)0;
	T102_ = nospquoteShell(objfile);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T101_[5] = T102_;
	T101_[6] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_101));
	T101_[7] = copyString(options);
	T101_[8] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_102));
	T101_[9] = copyString(includeCmd);
	T101_[10] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_103));
	T103_ = (NimStringDesc*)0;
	T103_ = getPrefixDir__oltK69akg0xLqkR2ITKbomg(conf);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T104_ = (NimStringDesc*)0;
	T104_ = nospquoteShell(T103_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T101_[11] = T104_;
	T101_[12] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_104));
	T105_ = (NimStringDesc*)0;
	T105_ = nospquoteShell((*conf).libpath);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T101_[13] = T105_;
	T101_[14] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_114));
	T106_ = (NimStringDesc*)0;
	T106_ = vccplatform__cS1sZo7H4weUdOP9bStq60g_2(conf);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T101_[15] = T106_;
	T101_[16] = copyString(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_105));
	T107_ = (NimStringDesc*)0;
	T107_ = envFlags__cS1sZo7H4weUdOP9bStq60g(conf);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T101_[17] = T107_;
	nsuAddf((&result), CC__78I18QZNZFIv9ah7oETc0jg[(c)- 1].Field6, T101_, 18);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, footprint__u2hVmnnAsUCCGDxJqGKZow)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg* cfile, tyArray__YtcvxHNKV4YiecPE9ap1mcA Result) {
	NimStringDesc* T1_;
	tyArray__YtcvxHNKV4YiecPE9ap1mcA T2_;
	NimStringDesc* T3_;
	NimStringDesc* T4_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	T1_ = (NimStringDesc*)0;
	nimZeroMem((void*)T2_, sizeof(tyArray__YtcvxHNKV4YiecPE9ap1mcA));
	secureHashFile__EWwG0WuhtSH9c26DD9b9a6DLw((*cfile).cname, T2_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T3_ = (NimStringDesc*)0;
	T3_ = dollar___2r9adABFqPoalSCAWfm1KJQ(T2_);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T4_ = (NimStringDesc*)0;
	T4_ = getCompileCFileCmd__uOCPoEVtEQdC7k9cm7JeVsw(conf, cfile, NIM_FALSE, NIM_FALSE);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	T1_ = rawNewString((T3_ ? T3_->Sup.len : 0) + (OS__Jx0qy9c9bSo4fGkMxUfUaAaw[((*conf).target.targetOS)- 1].Field0 ? OS__Jx0qy9c9bSo4fGkMxUfUaAaw[((*conf).target.targetOS)- 1].Field0->Sup.len : 0) + (CPU__uYXopJX8pM87pQDCtmgWfQ[((*conf).target.targetCPU)- 1].Field0 ? CPU__uYXopJX8pM87pQDCtmgWfQ[((*conf).target.targetCPU)- 1].Field0->Sup.len : 0) + (CC__78I18QZNZFIv9ah7oETc0jg[((*conf).cCompiler)- 1].Field0 ? CC__78I18QZNZFIv9ah7oETc0jg[((*conf).cCompiler)- 1].Field0->Sup.len : 0) + (T4_ ? T4_->Sup.len : 0) + 0);
appendString(T1_, T3_);
appendString(T1_, OS__Jx0qy9c9bSo4fGkMxUfUaAaw[((*conf).target.targetOS)- 1].Field0);
appendString(T1_, CPU__uYXopJX8pM87pQDCtmgWfQ[((*conf).target.targetCPU)- 1].Field0);
appendString(T1_, CC__78I18QZNZFIv9ah7oETc0jg[((*conf).cCompiler)- 1].Field0);
appendString(T1_, T4_);
	secureHash__qi7bJ7Ntyvry4psMKnopTA(T1_->data, (T1_ ? T1_->Sup.len : 0), Result);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
static N_INLINE(void, writeLine__45Em82MGXqv9biomV0DEbSgio)(FILE* f, NimStringDesc** x, NI xLen_0) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		NimStringDesc** i;
		NI i_2;
		i = (NimStringDesc**)0;
		i_2 = ((NI) 0);
		{
			while (1) {
				if (!(i_2 < xLen_0)) goto LA3;
				i = (&x[i_2]);
				write__PArlm09bKklm2BLsCg6YtaA(f, (*i));
				if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
				i_2 += ((NI) 1);
			} LA3: ;
		}
	}
	write__PArlm09bKklm2BLsCg6YtaA(f, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_119));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(NIM_BOOL, externalFileChanged__5MVIsXG7b0bFfj09ayjls4w)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg* cfile) {
	NIM_BOOL result;
	NimStringDesc* hashFile;
	tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* T8_;
	NimStringDesc* T9_;
	tyArray__YtcvxHNKV4YiecPE9ap1mcA currentHash;
	FILE* f;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	result = (NIM_BOOL)0;
	switch ((*conf).backend) {
	case ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 0):
	{
		{
			if (!NIM_TRUE) goto LA4_;
			failedAssertImpl__W9cjVocn1tjhW7p7xohJj6A(((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_2));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		LA4_: ;
	}
	break;
	case ((tyEnum_TBackend__4OBsgZ9cscH2JLUE5Wcz01g) 3):
	{
		result = NIM_FALSE;
		goto BeforeRet_;
	}
	break;
	default:
	{
	}
	break;
	}
	T8_ = (tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw*)0;
	T8_ = conf;
	T9_ = (NimStringDesc*)0;
	T9_ = withPackageName__9bhgFqdEZM7DoX7p3U69bQEg_2(conf, (*cfile).cname);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	hashFile = toGeneratedFile__vfkVoeYdbq9cXWDTNf536TQ(T8_, T9_, ((NimStringDesc*) &TM__OyL9acDBDoBfMwa5zb1Y88w_3));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	nimZeroMem((void*)currentHash, sizeof(tyArray__YtcvxHNKV4YiecPE9ap1mcA));
	footprint__u2hVmnnAsUCCGDxJqGKZow(conf, cfile, currentHash);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	f = (FILE*)0;
	{
		NIM_BOOL T12_;
		tyArray__YtcvxHNKV4YiecPE9ap1mcA oldHash;
		NimStringDesc* T15_;
		NIM_BOOL T16_;
		T12_ = (NIM_BOOL)0;
		T12_ = open__gq12VLhVO0NBzUTnGgz4nw(&f, hashFile, ((tyEnum_FileMode__ZJfK20XeZ9bv2j1pZjw9aswg) 0), ((NI) -1));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!T12_) goto LA13_;
		nimZeroMem((void*)oldHash, sizeof(tyArray__YtcvxHNKV4YiecPE9ap1mcA));
		T15_ = (NimStringDesc*)0;
		T15_ = readLine__IfmAdseskhTUnfEYpOo5fA(f);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		parseSecureHash__S6VQ00WVRv4bBNU469arlSA(T15_, oldHash);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		close__fU6ZlJAtQ9bre04EDZLdGsA(f);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T16_ = (NIM_BOOL)0;
		T16_ = eqeq___gecBgtI3c7HdE9cwshfzHjQ(oldHash, currentHash);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		result = !(T16_);
	}
	goto LA10_;
	LA13_: ;
	{
		result = NIM_TRUE;
	}
	LA10_: ;
	{
		if (!result) goto LA20_;
		{
			NIM_BOOL T24_;
			tyArray__nHXaesL0DJZHyVS07ARPRA T27_;
			NimStringDesc* T28_;
			T24_ = (NIM_BOOL)0;
			T24_ = open__gq12VLhVO0NBzUTnGgz4nw(&f, hashFile, ((tyEnum_FileMode__ZJfK20XeZ9bv2j1pZjw9aswg) 1), ((NI) -1));
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			if (!T24_) goto LA25_;
			nimZeroMem((void*)T27_, sizeof(tyArray__nHXaesL0DJZHyVS07ARPRA));
			T28_ = (NimStringDesc*)0;
			T28_ = dollar___2r9adABFqPoalSCAWfm1KJQ(currentHash);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			T27_[0] = T28_;
			writeLine__45Em82MGXqv9biomV0DEbSgio(f, T27_, 1);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
			close__fU6ZlJAtQ9bre04EDZLdGsA(f);
			if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		}
		LA25_: ;
	}
	LA20_: ;
	}BeforeRet_: ;
	return result;
}
N_LIB_PRIVATE N_NIMCALL(void, addExternalFileToCompile__INt9bhJYC8JcZL7VjCVQHWQ)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, tyObject_Cfile__i9cKq1ZGd1wgagjUEHLVFtg* c) {
	NI T12_;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		NIM_BOOL T3_;
		NIM_BOOL T4_;
		NIM_BOOL T7_;
		T3_ = (NIM_BOOL)0;
		T4_ = (NIM_BOOL)0;
		T4_ = !((((*conf).globalOptions &((NU64)1<<((NU)(((tyEnum_TGlobalOption__RAfAEZqjnKMDumgyKKc1qw) 1))&63U)))!=0));
		if (!(T4_)) goto LA5_;
		T4_ = nosfileExists((*c).obj);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		LA5_: ;
		T3_ = T4_;
		if (!(T3_)) goto LA6_;
		T7_ = (NIM_BOOL)0;
		T7_ = externalFileChanged__5MVIsXG7b0bFfj09ayjls4w(conf, (&(*c)));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		T3_ = !(T7_);
		LA6_: ;
		if (!T3_) goto LA8_;
		(*c).flags |= ((NU8)1)<<((((tyEnum_CfileFlag__Vl9c9ayddDuXiWtnWTsEYGsA) 0)) & 7);
	}
	goto LA1_;
	LA8_: ;
	{
		NIM_BOOL T11_;
		T11_ = (NIM_BOOL)0;
		T11_ = nostryRemoveFile((*c).obj);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		(void)(T11_);
	}
	LA1_: ;
	(*conf).toCompile = (tySequence__pK3qSsBZwdXd6qyUMkd5Jw*) incrSeqV3((TGenericSeq*)((*conf).toCompile), (&NTI__pK3qSsBZwdXd6qyUMkd5Jw_));
	T12_ = (*conf).toCompile->Sup.len++;
	(*conf).toCompile->data[T12_].nimname = copyString((*c).nimname);
	(*conf).toCompile->data[T12_].cname = copyString((*c).cname);
	(*conf).toCompile->data[T12_].obj = copyString((*c).obj);
	(*conf).toCompile->data[T12_].flags = (*c).flags;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, addExternalFileToLink__VWI2GZGxWbHzjYJHzOr3dA)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* filename) {
	insert__QiSrmi7QFVZLWumqReTo7w((&(*conf).externalToLink), filename, ((NI) 0));
}
N_LIB_PRIVATE N_NIMCALL(void, addLinkOption__siPDo9a2eQzwubdmcIGchWg)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* option) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	addOpt__uSovO2RAvymqBoy9crgVjtA((&(*conf).linkOptions), option);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, addCompileOption__siPDo9a2eQzwubdmcIGchWg_2)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* option) {
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	{
		NI T3_;
		T3_ = (NI)0;
		T3_ = nsuFindStr((*conf).compileOptions, option, ((NI) 0), ((NI) 0));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!(T3_ < ((NI) 0))) goto LA4_;
		addOpt__uSovO2RAvymqBoy9crgVjtA((&(*conf).compileOptions), option);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA4_: ;
	}BeforeRet_: ;
}
N_LIB_PRIVATE N_NIMCALL(void, addLocalCompileOption__9aZ1lkFxjUUC2WDEd4sU9ckQ)(tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* conf, NimStringDesc* option, NimStringDesc* nimfile) {
	NimStringDesc* key;
	tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw* T1_;
	NimStringDesc* T2_;
	NimStringDesc* value;
NIM_BOOL* nimErr_;
{nimErr_ = nimErrorFlag();
	T1_ = (tyObject_ConfigRefcolonObjectType___LaK09ayL9alwKUad7rts0rTw*)0;
	T1_ = conf;
	T2_ = (NimStringDesc*)0;
	T2_ = withPackageName__9bhgFqdEZM7DoX7p3U69bQEg_2(conf, nimfile);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	key = completeCfilePath__VmrjcznbGOrooG3SBIdEFQ(T1_, T2_, NIM_TRUE);
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	value = getOrDefault__2a0cbxcfpWcXtK45m9bR5Kg((*conf).cfileSpecificOptions, key, ((NimStringDesc*) NIM_NIL));
	if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	{
		NI T5_;
		T5_ = (NI)0;
		T5_ = nsuFindStr(value, option, ((NI) 0), ((NI) 0));
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		if (!(T5_ < ((NI) 0))) goto LA6_;
		addOpt__uSovO2RAvymqBoy9crgVjtA((&value), option);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
		nstPut((*conf).cfileSpecificOptions, key, value);
		if (NIM_UNLIKELY(*nimErr_)) goto BeforeRet_;
	}
	LA6_: ;
	}BeforeRet_: ;
}
