1 /* Generated by Nim Compiler v1.6.2 */
2 #define NIM_INTBITS 32
3 #define NIM_EmulateOverflowChecks
4 
5 #include "nimbase.h"
6 #include <string.h>
7 #undef LANGUAGE_C
8 #undef MIPSEB
9 #undef MIPSEL
10 #undef PPC
11 #undef R3000
12 #undef R4000
13 #undef i386
14 #undef linux
15 #undef mips
16 #undef near
17 #undef far
18 #undef powerpc
19 #undef unix
20 #define nimfr_(x, y)
21 #define nimln_(x, y)
22 typedef struct TNimType TNimType;
23 typedef struct TNimNode TNimNode;
24 typedef struct tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg;
25 typedef struct RootObj RootObj;
26 typedef struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ tySequence__sM4lkSb7zS6F7OVMvW9cffQ;
27 typedef struct NimStringDesc NimStringDesc;
28 typedef struct TGenericSeq TGenericSeq;
29 typedef struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g;
30 typedef struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w;
31 typedef struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ;
32 typedef struct tyObject_GcStack__7fytPA5bBsob6See21YMRA tyObject_GcStack__7fytPA5bBsob6See21YMRA;
33 typedef struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg;
34 typedef struct tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ;
35 typedef struct tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg;
36 typedef struct tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw;
37 typedef struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA;
38 typedef struct tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw;
39 typedef struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw;
40 typedef struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg;
41 typedef struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyTuple__ujsjpB2O9cjj3uDHsXbnSzg;
42 typedef struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg;
43 typedef struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ;
44 typedef struct tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg;
45 typedef struct tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA;
46 typedef NU8 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A;
47 typedef NU8 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ;
48 typedef N_NIMCALL_PTR(void, tyProc__ojoeKfW4VYIm36I9cpDTQIg) (void* p, NI op);
49 typedef N_NIMCALL_PTR(void*, tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ) (void* p);
50 struct TNimType {
51 NI size;
52 NI align;
53 tyEnum_TNimKind__jIBKr1ejBgsfM33Kxw4j7A kind;
54 tySet_tyEnum_TNimTypeFlag__v8QUszD1sWlSIWZz7mC4bQ flags;
55 TNimType* base;
56 TNimNode* node;
57 void* finalizer;
58 tyProc__ojoeKfW4VYIm36I9cpDTQIg marker;
59 tyProc__WSm2xU5ARYv9aAR4l0z9c9auQ deepcopy;
60 };
61 typedef NU8 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ;
62 struct TNimNode {
63 tyEnum_TNimNodeKind__unfNsxrcATrufDZmpBq4HQ kind;
64 NI offset;
65 TNimType* typ;
66 NCSTRING name;
67 NI len;
68 TNimNode** sons;
69 };
70 struct RootObj {
71 TNimType* m_type;
72 };
73 typedef NU8 tySet_tyChar__nmiMWKVIe46vacnhAFrQvw[32];
74 typedef NU8 tyEnum_CmdLineKind__XkdXq9atxjiuhkFFh0XYrSA;
75 struct TGenericSeq {
76 NI len;
77 NI reserved;
78 };
79 struct NimStringDesc {
80   TGenericSeq Sup;
81 NIM_CHAR data[SEQ_DECL_SIZE];
82 };
83 struct tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg {
84   RootObj Sup;
85 NI pos;
86 NIM_BOOL inShortState;
87 NIM_BOOL allowWhitespaceAfterColon;
88 tySet_tyChar__nmiMWKVIe46vacnhAFrQvw shortNoVal;
89 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* longNoVal;
90 tySequence__sM4lkSb7zS6F7OVMvW9cffQ* cmds;
91 NI idx;
92 tyEnum_CmdLineKind__XkdXq9atxjiuhkFFh0XYrSA kind;
93 NimStringDesc* key;
94 NimStringDesc* val;
95 };
96 struct tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g {
97 NI refcount;
98 TNimType* typ;
99 };
100 struct tyObject_GcStack__7fytPA5bBsob6See21YMRA {
101 void* bottom;
102 };
103 struct tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w {
104 NI len;
105 NI cap;
106 tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g** d;
107 };
108 typedef tyObject_SmallChunk__tXn60W2f8h3jgAYdEmy5NQ* tyArray__SPr7N6UKfuF549bNPiUvSRw[256];
109 typedef NU32 tyArray__BHbOSqU1t9b3Gt7K2c6fQig[24];
110 typedef tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* tyArray__N1u1nqOgmuJN9cSZrnMHgOQ[32];
111 typedef tyArray__N1u1nqOgmuJN9cSZrnMHgOQ tyArray__B6durA4ZCi1xjJvRtyYxMg[24];
112 typedef tyObject_Trunk__W0r8S0Y3UGke6T9bIUWnnuw* tyArray__lh2A89ahMmYg9bCmpVaplLbA[256];
113 struct tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA {
114 tyArray__lh2A89ahMmYg9bCmpVaplLbA data;
115 };
116 typedef tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* tyArray__0aOLqZchNi8nWtMTi8ND8w[2];
117 struct tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw {
118 tyArray__0aOLqZchNi8nWtMTi8ND8w link;
119 NI key;
120 NI upperBound;
121 NI level;
122 };
123 struct tyTuple__ujsjpB2O9cjj3uDHsXbnSzg {
124 tyObject_BigChunk__Rv9c70Uhp2TytkX7eH78qEg* Field0;
125 NI Field1;
126 };
127 typedef tyTuple__ujsjpB2O9cjj3uDHsXbnSzg tyArray__LzOv2eCDGiceMKQstCLmhw[30];
128 struct tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg {
129 NI len;
130 tyArray__LzOv2eCDGiceMKQstCLmhw chunks;
131 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg* next;
132 };
133 struct tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg {
134 NI minLargeObj;
135 NI maxLargeObj;
136 tyArray__SPr7N6UKfuF549bNPiUvSRw freeSmallChunks;
137 NU32 flBitmap;
138 tyArray__BHbOSqU1t9b3Gt7K2c6fQig slBitmap;
139 tyArray__B6durA4ZCi1xjJvRtyYxMg matrix;
140 tyObject_LLChunk__XsENErzHIZV9bhvyJx56wGw* llmem;
141 NI currMem;
142 NI maxMem;
143 NI freeMem;
144 NI occ;
145 NI lastSize;
146 tyObject_IntSet__EZObFrE3NC9bIb3YMkY9crZA chunkStarts;
147 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* root;
148 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* deleted;
149 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* last;
150 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw* freeAvlNodes;
151 NIM_BOOL locked;
152 NIM_BOOL blockChunkSizeIncrease;
153 NI nextChunkSize;
154 tyObject_AvlNode__IaqjtwKhxLEpvDS9bct9blEw bottomData;
155 tyObject_HeapLinks__PDV1HBZ8CQSQJC9aOBFNRSg heapLinks;
156 };
157 struct tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg {
158 NI stackScans;
159 NI cycleCollections;
160 NI maxThreshold;
161 NI maxStackSize;
162 NI maxStackCells;
163 NI cycleTableSize;
164 NI64 maxPause;
165 };
166 struct tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ {
167 NI counter;
168 NI max;
169 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg* head;
170 tyObject_PageDesc__fublkgIY4LG3mT51LU2WHg** data;
171 };
172 struct tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ {
173 tyObject_GcStack__7fytPA5bBsob6See21YMRA stack;
174 NI cycleThreshold;
175 NI zctThreshold;
176 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w zct;
177 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w decStack;
178 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w tempStack;
179 NI recGcLock;
180 tyObject_MemRegion__x81NhDv59b8ercDZ9bi85jyg region;
181 tyObject_GcStat__0RwLoVBHZPfUAcLczmfQAg stat;
182 tyObject_CellSet__jG87P0AI9aZtss9ccTYBIISQ marked;
183 tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w additionalRoots;
184 NI gcThreadId;
185 };
186 typedef NU8 tyArray__S8ib5N31oJbAkqOZTlNg5Q[8192];
187 struct tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA {
188 NI a;
189 NI b;
190 };
191 struct tySequence__sM4lkSb7zS6F7OVMvW9cffQ {
192   TGenericSeq Sup;
193   NimStringDesc* data[SEQ_DECL_SIZE];
194 };
195 N_LIB_PRIVATE N_NIMCALL(void, unsureAsgnRef)(void** dest, void* src);
196 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size);
197 N_LIB_PRIVATE N_NIMCALL(void, genericSeqAssign)(void* dest, void* src, TNimType* mt);
198 N_LIB_PRIVATE N_NIMCALL(tySequence__sM4lkSb7zS6F7OVMvW9cffQ*, nosparseCmdLine)(NimStringDesc* c);
199 N_LIB_PRIVATE N_NIMCALL(tySequence__sM4lkSb7zS6F7OVMvW9cffQ*, newSeq__systemZio_497)(NI len);
200 N_LIB_PRIVATE N_NIMCALL(NI, paramCount__pureZos_1535)(void);
201 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, paramStr__pureZos_1529)(NI i);
202 static N_INLINE(void, asgnRef)(void** dest, void* src);
203 static N_INLINE(void, incRef__system_5329)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
204 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y);
205 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5291)(void* usr);
206 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y);
207 static N_INLINE(void, decRef__system_5336)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
208 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y);
209 static N_INLINE(void, rtlAddZCT__system_5334)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
210 N_LIB_PRIVATE N_NOINLINE(void, addZCT__system_5285)(tyObject_CellSeq__Axo1XVm9aaQueTOldv8le5w* s, tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c);
211 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, setLengthStr)(NimStringDesc* s, NI newLen);
212 N_LIB_PRIVATE N_NIMCALL(void, handleShortOption__pureZparseopt_127)(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg* p, NimStringDesc* cmd);
213 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, addChar)(NimStringDesc* s, NIM_CHAR c);
214 static N_INLINE(NI, cardSet)(tyArray__S8ib5N31oJbAkqOZTlNg5Q s, NI len);
215 static N_INLINE(NI, countBits32)(NU32 n);
216 static N_INLINE(NI, countSetBitsImpl__systemZcountbits95impl_26)(NU32 x);
217 N_CDECL(int, __builtin_popcount)(unsigned int x);
218 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, substr__system_7776)(NimStringDesc* s, NI first);
219 N_LIB_PRIVATE N_NIMCALL(NI, parseWord__pureZparseopt_25)(NimStringDesc* s, NI i, NimStringDesc** w, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw delim);
220 static N_INLINE(NIM_BOOL, contains__stdZenumutils_43)(NimStringDesc** a, NI aLen_0, NimStringDesc* item);
221 static N_INLINE(NI, find__stdZenumutils_48)(NimStringDesc** a, NI aLen_0, NimStringDesc* item);
222 static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b);
223 static N_INLINE(NIM_BOOL, equalMem__system_1735)(void* a, void* b, NI size);
224 static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size);
225 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyString)(NimStringDesc* src);
226 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, quoteShellCommand__pureZos_604)(NimStringDesc** args, NI argsLen_0);
227 N_LIB_PRIVATE N_NIMCALL(tySequence__sM4lkSb7zS6F7OVMvW9cffQ*, X5BX5D___pureZparseopt_275)(NimStringDesc** s, NI sLen_0, tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA x);
228 N_LIB_PRIVATE N_NIMCALL(void*, newSeq)(TNimType* typ, NI len);
229 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, copyStringRC1)(NimStringDesc* src);
230 static N_INLINE(void, nimGCunrefNoCycle)(void* p);
231 static N_INLINE(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA, dotdot___stdZenumutils_80)(NI a, NI b);
232 static N_INLINE(void, nimZeroMem)(void* p, NI size);
233 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size);
234 extern TNimType NTIrootobj__ytyiCJqK439aF9cIibuRVpAg_;
235 N_LIB_PRIVATE TNimType NTIoptparser__l9cyoK9aLLTUH7LBRIbLqETg_;
236 extern TNimType NTIint__rR5Bzr1D5krxoo1NcNyeMA_;
237 extern TNimType NTIbool__VaVACK0bpYmqIQ0mKcHfQQ_;
238 extern TNimType NTIchar__nmiMWKVIe46vacnhAFrQvw_;
239 N_LIB_PRIVATE TNimType NTIsetLcharT__HDqWPvEAxZK51ZcfaeQEdg_;
240 extern TNimType NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_;
241 N_LIB_PRIVATE TNimType NTIcmdlinekind__XkdXq9atxjiuhkFFh0XYrSA_;
242 extern TNimType NTIstring__77mFvmsOLKik79ci2hXkHEg_;
243 static NIM_CONST tySet_tyChar__nmiMWKVIe46vacnhAFrQvw TM__GYgvYKeHVTEls0AcywABHQ_6 = {
244 0x00, 0x02, 0x00, 0x00, 0x01, 0x00, 0x00, 0x24,
245 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
246 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00,
247 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00, 0x00}
248 ;
249 extern tyObject_GcHeap__1TRH1TZMaVZTnLNcIHuNFQ gch__system_5238;
N_INLINE(void,nimCopyMem)250 static N_INLINE(void, nimCopyMem)(void* dest, void* source, NI size) {
251 	void* T1_;
252 	T1_ = (void*)0;
253 	T1_ = memcpy(dest, source, ((size_t) (size)));
254 }
N_INLINE(NI,pluspercent___system_696)255 static N_INLINE(NI, pluspercent___system_696)(NI x, NI y) {
256 	NI result;
257 	result = (NI)0;
258 	result = ((NI) ((NU)((NU32)(((NU) (x))) + (NU32)(((NU) (y))))));
259 	return result;
260 }
N_INLINE(void,incRef__system_5329)261 static N_INLINE(void, incRef__system_5329)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
262 	(*c).refcount = pluspercent___system_696((*c).refcount, ((NI) 8));
263 }
N_INLINE(NI,minuspercent___system_716)264 static N_INLINE(NI, minuspercent___system_716)(NI x, NI y) {
265 	NI result;
266 	result = (NI)0;
267 	result = ((NI) ((NU)((NU32)(((NU) (x))) - (NU32)(((NU) (y))))));
268 	return result;
269 }
N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g *,usrToCell__system_5291)270 static N_INLINE(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*, usrToCell__system_5291)(void* usr) {
271 	tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* result;
272 	NI T1_;
273 	result = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
274 	T1_ = (NI)0;
275 	T1_ = minuspercent___system_716(((NI) (ptrdiff_t) (usr)), ((NI) 8));
276 	result = ((tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*) (T1_));
277 	return result;
278 }
N_INLINE(NIM_BOOL,ltpercent___system_1005)279 static N_INLINE(NIM_BOOL, ltpercent___system_1005)(NI x, NI y) {
280 	NIM_BOOL result;
281 	result = (NIM_BOOL)0;
282 	result = ((NU32)(((NU) (x))) < (NU32)(((NU) (y))));
283 	return result;
284 }
N_INLINE(void,rtlAddZCT__system_5334)285 static N_INLINE(void, rtlAddZCT__system_5334)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
286 	addZCT__system_5285((&gch__system_5238.zct), c);
287 }
N_INLINE(void,decRef__system_5336)288 static N_INLINE(void, decRef__system_5336)(tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* c) {
289 	(*c).refcount = minuspercent___system_716((*c).refcount, ((NI) 8));
290 	{
291 		NIM_BOOL T3_;
292 		T3_ = (NIM_BOOL)0;
293 		T3_ = ltpercent___system_1005((*c).refcount, ((NI) 8));
294 		if (!T3_) goto LA4_;
295 		rtlAddZCT__system_5334(c);
296 	}
297 	LA4_: ;
298 }
N_INLINE(void,asgnRef)299 static N_INLINE(void, asgnRef)(void** dest, void* src) {
300 	{
301 		tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T5_;
302 		if (!!((src == NIM_NIL))) goto LA3_;
303 		T5_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
304 		T5_ = usrToCell__system_5291(src);
305 		incRef__system_5329(T5_);
306 	}
307 	LA3_: ;
308 	{
309 		tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T10_;
310 		if (!!(((*dest) == NIM_NIL))) goto LA8_;
311 		T10_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
312 		T10_ = usrToCell__system_5291((*dest));
313 		decRef__system_5336(T10_);
314 	}
315 	LA8_: ;
316 	(*dest) = src;
317 }
N_NIMCALL(void,initOptParser__pureZparseopt_51)318 N_LIB_PRIVATE N_NIMCALL(void, initOptParser__pureZparseopt_51)(NimStringDesc* cmdline, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw shortNoVal, tySequence__sM4lkSb7zS6F7OVMvW9cffQ* longNoVal, NIM_BOOL allowWhitespaceAfterColon, tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg* Result) {
319 	(*Result).pos = 0;
320 	(*Result).inShortState = 0;
321 	(*Result).allowWhitespaceAfterColon = 0;
322 	unsureAsgnRef((void**)&(*Result).longNoVal, NIM_NIL);
323 	unsureAsgnRef((void**)&(*Result).cmds, NIM_NIL);
324 	(*Result).idx = 0;
325 	(*Result).kind = 0;
326 	unsureAsgnRef((void**)&(*Result).key, NIM_NIL);
327 	unsureAsgnRef((void**)&(*Result).val, NIM_NIL);
328 	(*Result).Sup.m_type = (&NTIoptparser__l9cyoK9aLLTUH7LBRIbLqETg_);
329 	(*Result).pos = ((NI) 0);
330 	(*Result).idx = ((NI) 0);
331 	(*Result).inShortState = NIM_FALSE;
332 	nimCopyMem((void*)(*Result).shortNoVal, (NIM_CONST void*)shortNoVal, 32);
333 	genericSeqAssign((&(*Result).longNoVal), longNoVal, (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_));
334 	(*Result).allowWhitespaceAfterColon = allowWhitespaceAfterColon;
335 	{
336 		if (!!(((cmdline ? cmdline->Sup.len : 0) == 0))) goto LA3_;
337 		unsureAsgnRef((void**) (&(*Result).cmds), nosparseCmdLine(cmdline));
338 	}
339 	goto LA1_;
340 	LA3_: ;
341 	{
342 		NI T6_;
343 		T6_ = (NI)0;
344 		T6_ = paramCount__pureZos_1535();
345 		unsureAsgnRef((void**) (&(*Result).cmds), newSeq__systemZio_497(((NI) (T6_))));
346 		{
347 			NI i;
348 			NI colontmp_;
349 			NI res;
350 			i = (NI)0;
351 			colontmp_ = (NI)0;
352 			colontmp_ = paramCount__pureZos_1535();
353 			res = ((NI) 1);
354 			{
355 				while (1) {
356 					if (!(res <= colontmp_)) goto LA9;
357 					i = res;
358 					asgnRef((void**) (&(*Result).cmds->data[(NI)(i - ((NI) 1))]), paramStr__pureZos_1529(i));
359 					res += ((NI) 1);
360 				} LA9: ;
361 			}
362 		}
363 	}
364 	LA1_: ;
365 	(*Result).kind = ((tyEnum_CmdLineKind__XkdXq9atxjiuhkFFh0XYrSA) 0);
366 	unsureAsgnRef((void**) (&(*Result).key), ((NimStringDesc*) NIM_NIL));
367 	unsureAsgnRef((void**) (&(*Result).val), ((NimStringDesc*) NIM_NIL));
368 }
N_INLINE(NI,countSetBitsImpl__systemZcountbits95impl_26)369 static N_INLINE(NI, countSetBitsImpl__systemZcountbits95impl_26)(NU32 x) {
370 	NI result;
371 	int T1_;
372 	result = (NI)0;
373 	T1_ = (int)0;
374 	T1_ = __builtin_popcount(x);
375 	result = ((NI) (T1_));
376 	return result;
377 }
N_INLINE(NI,countBits32)378 static N_INLINE(NI, countBits32)(NU32 n) {
379 	NI result;
380 	result = (NI)0;
381 	result = countSetBitsImpl__systemZcountbits95impl_26(n);
382 	return result;
383 }
N_INLINE(NI,cardSet)384 static N_INLINE(NI, cardSet)(tyArray__S8ib5N31oJbAkqOZTlNg5Q s, NI len) {
385 	NI result;
386 	NI i;
387 	result = (NI)0;
388 	i = ((NI) 0);
389 	result = ((NI) 0);
390 	{
391 		while (1) {
392 			NI T3_;
393 			if (!(i < len)) goto LA2;
394 			T3_ = (NI)0;
395 			T3_ = countBits32(((NU32) (s[(i)- 0])));
396 			result += T3_;
397 			i += ((NI) 1);
398 		} LA2: ;
399 	}
400 	return result;
401 }
N_NIMCALL(void,handleShortOption__pureZparseopt_127)402 N_LIB_PRIVATE N_NIMCALL(void, handleShortOption__pureZparseopt_127)(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg* p, NimStringDesc* cmd) {
403 	NI i;
404 	i = (*p).pos;
405 	(*p).kind = ((tyEnum_CmdLineKind__XkdXq9atxjiuhkFFh0XYrSA) 3);
406 	{
407 		if (!(i < (cmd ? cmd->Sup.len : 0))) goto LA3_;
408 		unsureAsgnRef((void**) (&(*p).key), addChar((*p).key, cmd->data[i]));
409 		i += ((NI) 1);
410 	}
411 	LA3_: ;
412 	(*p).inShortState = NIM_TRUE;
413 	{
414 		while (1) {
415 			NIM_BOOL T7_;
416 			T7_ = (NIM_BOOL)0;
417 			T7_ = (i < (cmd ? cmd->Sup.len : 0));
418 			if (!(T7_)) goto LA8_;
419 			T7_ = (((NU8)(cmd->data[i])) == ((NU8)(9)) || ((NU8)(cmd->data[i])) == ((NU8)(32)));
420 			LA8_: ;
421 			if (!T7_) goto LA6;
422 			i += ((NI) 1);
423 			(*p).inShortState = NIM_FALSE;
424 		} LA6: ;
425 	}
426 	{
427 		NIM_BOOL T11_;
428 		NIM_BOOL T13_;
429 		NIM_BOOL T15_;
430 		T11_ = (NIM_BOOL)0;
431 		T11_ = (i < (cmd ? cmd->Sup.len : 0));
432 		if (!(T11_)) goto LA12_;
433 		T13_ = (NIM_BOOL)0;
434 		T13_ = (((NU8)(cmd->data[i])) == ((NU8)(58)) || ((NU8)(cmd->data[i])) == ((NU8)(61)));
435 		if (T13_) goto LA14_;
436 		T15_ = (NIM_BOOL)0;
437 		T15_ = (((NI) 0) < cardSet((*p).shortNoVal, 32));
438 		if (!(T15_)) goto LA16_;
439 		T15_ = !((((*p).shortNoVal[(NU)(((NU8)((*p).key->data[((NI) 0)])))>>3] &(1U<<((NU)(((NU8)((*p).key->data[((NI) 0)])))&7U)))!=0));
440 		LA16_: ;
441 		T13_ = T15_;
442 		LA14_: ;
443 		T11_ = T13_;
444 		LA12_: ;
445 		if (!T11_) goto LA17_;
446 		{
447 			NIM_BOOL T21_;
448 			T21_ = (NIM_BOOL)0;
449 			T21_ = (i < (cmd ? cmd->Sup.len : 0));
450 			if (!(T21_)) goto LA22_;
451 			T21_ = (((NU8)(cmd->data[i])) == ((NU8)(58)) || ((NU8)(cmd->data[i])) == ((NU8)(61)));
452 			LA22_: ;
453 			if (!T21_) goto LA23_;
454 			i += ((NI) 1);
455 		}
456 		LA23_: ;
457 		(*p).inShortState = NIM_FALSE;
458 		{
459 			while (1) {
460 				NIM_BOOL T27_;
461 				T27_ = (NIM_BOOL)0;
462 				T27_ = (i < (cmd ? cmd->Sup.len : 0));
463 				if (!(T27_)) goto LA28_;
464 				T27_ = (((NU8)(cmd->data[i])) == ((NU8)(9)) || ((NU8)(cmd->data[i])) == ((NU8)(32)));
465 				LA28_: ;
466 				if (!T27_) goto LA26;
467 				i += ((NI) 1);
468 			} LA26: ;
469 		}
470 		unsureAsgnRef((void**) (&(*p).val), substr__system_7776(cmd, i));
471 		(*p).pos = ((NI) 0);
472 		(*p).idx += ((NI) 1);
473 	}
474 	goto LA9_;
475 	LA17_: ;
476 	{
477 		(*p).pos = i;
478 	}
479 	LA9_: ;
480 	{
481 		if (!((cmd ? cmd->Sup.len : 0) <= i)) goto LA32_;
482 		(*p).inShortState = NIM_FALSE;
483 		(*p).pos = ((NI) 0);
484 		(*p).idx += ((NI) 1);
485 	}
486 	LA32_: ;
487 }
N_NIMCALL(NI,parseWord__pureZparseopt_25)488 N_LIB_PRIVATE N_NIMCALL(NI, parseWord__pureZparseopt_25)(NimStringDesc* s, NI i, NimStringDesc** w, tySet_tyChar__nmiMWKVIe46vacnhAFrQvw delim) {
489 	NI result;
490 	result = (NI)0;
491 	result = i;
492 	{
493 		NIM_BOOL T3_;
494 		T3_ = (NIM_BOOL)0;
495 		T3_ = (result < (s ? s->Sup.len : 0));
496 		if (!(T3_)) goto LA4_;
497 		T3_ = ((NU8)(s->data[result]) == (NU8)(34));
498 		LA4_: ;
499 		if (!T3_) goto LA5_;
500 		result += ((NI) 1);
501 		{
502 			while (1) {
503 				if (!(result < (s ? s->Sup.len : 0))) goto LA8;
504 				{
505 					if (!((NU8)(s->data[result]) == (NU8)(34))) goto LA11_;
506 					result += ((NI) 1);
507 					goto LA7;
508 				}
509 				LA11_: ;
510 				unsureAsgnRef((void**) (&(*w)), addChar((*w), s->data[result]));
511 				result += ((NI) 1);
512 			} LA8: ;
513 		} LA7: ;
514 	}
515 	goto LA1_;
516 	LA5_: ;
517 	{
518 		{
519 			while (1) {
520 				NIM_BOOL T16_;
521 				T16_ = (NIM_BOOL)0;
522 				T16_ = (result < (s ? s->Sup.len : 0));
523 				if (!(T16_)) goto LA17_;
524 				T16_ = !(((delim[(NU)(((NU8)(s->data[result])))>>3] &(1U<<((NU)(((NU8)(s->data[result])))&7U)))!=0));
525 				LA17_: ;
526 				if (!T16_) goto LA15;
527 				unsureAsgnRef((void**) (&(*w)), addChar((*w), s->data[result]));
528 				result += ((NI) 1);
529 			} LA15: ;
530 		}
531 	}
532 	LA1_: ;
533 	return result;
534 }
N_INLINE(int,nimCmpMem)535 static N_INLINE(int, nimCmpMem)(void* a, void* b, NI size) {
536 	int result;
537 	result = (int)0;
538 	result = memcmp(a, b, ((size_t) (size)));
539 	return result;
540 }
N_INLINE(NIM_BOOL,equalMem__system_1735)541 static N_INLINE(NIM_BOOL, equalMem__system_1735)(void* a, void* b, NI size) {
542 	NIM_BOOL result;
543 	int T1_;
544 	result = (NIM_BOOL)0;
545 	T1_ = (int)0;
546 	T1_ = nimCmpMem(a, b, size);
547 	result = (T1_ == ((NI32) 0));
548 	return result;
549 }
N_INLINE(NIM_BOOL,eqStrings)550 static N_INLINE(NIM_BOOL, eqStrings)(NimStringDesc* a, NimStringDesc* b) {
551 	NIM_BOOL result;
552 	NI alen;
553 	NI blen;
554 {	result = (NIM_BOOL)0;
555 	alen = (a ? a->Sup.len : 0);
556 	blen = (b ? b->Sup.len : 0);
557 	{
558 		if (!(alen == blen)) goto LA3_;
559 		{
560 			if (!(alen == ((NI) 0))) goto LA7_;
561 			result = NIM_TRUE;
562 			goto BeforeRet_;
563 		}
564 		LA7_: ;
565 		result = equalMem__system_1735(((void*) ((&a->data[((NI) 0)]))), ((void*) ((&b->data[((NI) 0)]))), ((NI) (alen)));
566 		goto BeforeRet_;
567 	}
568 	LA3_: ;
569 	}BeforeRet_: ;
570 	return result;
571 }
N_INLINE(NI,find__stdZenumutils_48)572 static N_INLINE(NI, find__stdZenumutils_48)(NimStringDesc** a, NI aLen_0, NimStringDesc* item) {
573 	NI result;
574 {	result = (NI)0;
575 	result = ((NI) 0);
576 	{
577 		NimStringDesc** i;
578 		NI i_2;
579 		i = (NimStringDesc**)0;
580 		i_2 = ((NI) 0);
581 		{
582 			while (1) {
583 				if (!(i_2 < aLen_0)) goto LA3;
584 				i = (&a[i_2]);
585 				{
586 					if (!eqStrings((*i), item)) goto LA6_;
587 					goto BeforeRet_;
588 				}
589 				LA6_: ;
590 				result += ((NI) 1);
591 				i_2 += ((NI) 1);
592 			} LA3: ;
593 		}
594 	}
595 	result = ((NI) -1);
596 	}BeforeRet_: ;
597 	return result;
598 }
N_INLINE(NIM_BOOL,contains__stdZenumutils_43)599 static N_INLINE(NIM_BOOL, contains__stdZenumutils_43)(NimStringDesc** a, NI aLen_0, NimStringDesc* item) {
600 	NIM_BOOL result;
601 	NI T1_;
602 {	result = (NIM_BOOL)0;
603 	T1_ = (NI)0;
604 	T1_ = find__stdZenumutils_48(a, aLen_0, item);
605 	result = (((NI) 0) <= T1_);
606 	goto BeforeRet_;
607 	}BeforeRet_: ;
608 	return result;
609 }
N_NIMCALL(void,nponext)610 N_LIB_PRIVATE N_NIMCALL(void, nponext)(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg* p) {
611 	NI i;
612 {	{
613 		NI T3_;
614 		T3_ = ((*p).cmds ? (*p).cmds->Sup.len : 0);
615 		if (!(T3_ <= (*p).idx)) goto LA4_;
616 		(*p).kind = ((tyEnum_CmdLineKind__XkdXq9atxjiuhkFFh0XYrSA) 0);
617 		goto BeforeRet_;
618 	}
619 	LA4_: ;
620 	i = (*p).pos;
621 	{
622 		while (1) {
623 			NIM_BOOL T8_;
624 			T8_ = (NIM_BOOL)0;
625 			T8_ = (i < ((*p).cmds->data[(*p).idx] ? (*p).cmds->data[(*p).idx]->Sup.len : 0));
626 			if (!(T8_)) goto LA9_;
627 			T8_ = (((NU8)((*p).cmds->data[(*p).idx]->data[i])) == ((NU8)(9)) || ((NU8)((*p).cmds->data[(*p).idx]->data[i])) == ((NU8)(32)));
628 			LA9_: ;
629 			if (!T8_) goto LA7;
630 			i += ((NI) 1);
631 		} LA7: ;
632 	}
633 	(*p).pos = i;
634 	unsureAsgnRef((void**) (&(*p).key), setLengthStr((*p).key, ((NI) 0)));
635 	unsureAsgnRef((void**) (&(*p).val), setLengthStr((*p).val, ((NI) 0)));
636 	{
637 		if (!(*p).inShortState) goto LA12_;
638 		(*p).inShortState = NIM_FALSE;
639 		{
640 			if (!(((*p).cmds->data[(*p).idx] ? (*p).cmds->data[(*p).idx]->Sup.len : 0) <= i)) goto LA16_;
641 			(*p).idx += ((NI) 1);
642 			(*p).pos = ((NI) 0);
643 			{
644 				NI T20_;
645 				T20_ = ((*p).cmds ? (*p).cmds->Sup.len : 0);
646 				if (!(T20_ <= (*p).idx)) goto LA21_;
647 				(*p).kind = ((tyEnum_CmdLineKind__XkdXq9atxjiuhkFFh0XYrSA) 0);
648 				goto BeforeRet_;
649 			}
650 			LA21_: ;
651 		}
652 		goto LA14_;
653 		LA16_: ;
654 		{
655 			handleShortOption__pureZparseopt_127(p, (*p).cmds->data[(*p).idx]);
656 			goto BeforeRet_;
657 		}
658 		LA14_: ;
659 	}
660 	LA12_: ;
661 	{
662 		NIM_BOOL T26_;
663 		T26_ = (NIM_BOOL)0;
664 		T26_ = (i < ((*p).cmds->data[(*p).idx] ? (*p).cmds->data[(*p).idx]->Sup.len : 0));
665 		if (!(T26_)) goto LA27_;
666 		T26_ = ((NU8)((*p).cmds->data[(*p).idx]->data[i]) == (NU8)(45));
667 		LA27_: ;
668 		if (!T26_) goto LA28_;
669 		i += ((NI) 1);
670 		{
671 			NIM_BOOL T32_;
672 			T32_ = (NIM_BOOL)0;
673 			T32_ = (i < ((*p).cmds->data[(*p).idx] ? (*p).cmds->data[(*p).idx]->Sup.len : 0));
674 			if (!(T32_)) goto LA33_;
675 			T32_ = ((NU8)((*p).cmds->data[(*p).idx]->data[i]) == (NU8)(45));
676 			LA33_: ;
677 			if (!T32_) goto LA34_;
678 			(*p).kind = ((tyEnum_CmdLineKind__XkdXq9atxjiuhkFFh0XYrSA) 2);
679 			i += ((NI) 1);
680 			i = parseWord__pureZparseopt_25((*p).cmds->data[(*p).idx], i, (&(*p).key), TM__GYgvYKeHVTEls0AcywABHQ_6);
681 			{
682 				while (1) {
683 					NIM_BOOL T38_;
684 					T38_ = (NIM_BOOL)0;
685 					T38_ = (i < ((*p).cmds->data[(*p).idx] ? (*p).cmds->data[(*p).idx]->Sup.len : 0));
686 					if (!(T38_)) goto LA39_;
687 					T38_ = (((NU8)((*p).cmds->data[(*p).idx]->data[i])) == ((NU8)(9)) || ((NU8)((*p).cmds->data[(*p).idx]->data[i])) == ((NU8)(32)));
688 					LA39_: ;
689 					if (!T38_) goto LA37;
690 					i += ((NI) 1);
691 				} LA37: ;
692 			}
693 			{
694 				NIM_BOOL T42_;
695 				T42_ = (NIM_BOOL)0;
696 				T42_ = (i < ((*p).cmds->data[(*p).idx] ? (*p).cmds->data[(*p).idx]->Sup.len : 0));
697 				if (!(T42_)) goto LA43_;
698 				T42_ = (((NU8)((*p).cmds->data[(*p).idx]->data[i])) == ((NU8)(58)) || ((NU8)((*p).cmds->data[(*p).idx]->data[i])) == ((NU8)(61)));
699 				LA43_: ;
700 				if (!T42_) goto LA44_;
701 				i += ((NI) 1);
702 				{
703 					while (1) {
704 						NIM_BOOL T48_;
705 						T48_ = (NIM_BOOL)0;
706 						T48_ = (i < ((*p).cmds->data[(*p).idx] ? (*p).cmds->data[(*p).idx]->Sup.len : 0));
707 						if (!(T48_)) goto LA49_;
708 						T48_ = (((NU8)((*p).cmds->data[(*p).idx]->data[i])) == ((NU8)(9)) || ((NU8)((*p).cmds->data[(*p).idx]->data[i])) == ((NU8)(32)));
709 						LA49_: ;
710 						if (!T48_) goto LA47;
711 						i += ((NI) 1);
712 					} LA47: ;
713 				}
714 				{
715 					NIM_BOOL T52_;
716 					NIM_BOOL T53_;
717 					NI T55_;
718 					T52_ = (NIM_BOOL)0;
719 					T53_ = (NIM_BOOL)0;
720 					T53_ = (((*p).cmds->data[(*p).idx] ? (*p).cmds->data[(*p).idx]->Sup.len : 0) <= i);
721 					if (!(T53_)) goto LA54_;
722 					T55_ = ((*p).cmds ? (*p).cmds->Sup.len : 0);
723 					T53_ = ((*p).idx < T55_);
724 					LA54_: ;
725 					T52_ = T53_;
726 					if (!(T52_)) goto LA56_;
727 					T52_ = (*p).allowWhitespaceAfterColon;
728 					LA56_: ;
729 					if (!T52_) goto LA57_;
730 					(*p).idx += ((NI) 1);
731 					i = ((NI) 0);
732 				}
733 				LA57_: ;
734 				{
735 					NI T61_;
736 					T61_ = ((*p).cmds ? (*p).cmds->Sup.len : 0);
737 					if (!((*p).idx < T61_)) goto LA62_;
738 					unsureAsgnRef((void**) (&(*p).val), substr__system_7776((*p).cmds->data[(*p).idx], i));
739 				}
740 				LA62_: ;
741 			}
742 			goto LA40_;
743 			LA44_: ;
744 			{
745 				NIM_BOOL T65_;
746 				NIM_BOOL T66_;
747 				NI T67_;
748 				NIM_BOOL T69_;
749 				NI T71_;
750 				T65_ = (NIM_BOOL)0;
751 				T66_ = (NIM_BOOL)0;
752 				T67_ = ((*p).longNoVal ? (*p).longNoVal->Sup.len : 0);
753 				T66_ = (((NI) 0) < T67_);
754 				if (!(T66_)) goto LA68_;
755 				T69_ = (NIM_BOOL)0;
756 				T69_ = contains__stdZenumutils_43((*p).longNoVal->data, ((*p).longNoVal ? (*p).longNoVal->Sup.len : 0), (*p).key);
757 				T66_ = !(T69_);
758 				LA68_: ;
759 				T65_ = T66_;
760 				if (!(T65_)) goto LA70_;
761 				T71_ = ((*p).cmds ? (*p).cmds->Sup.len : 0);
762 				T65_ = ((NI)((*p).idx + ((NI) 1)) < T71_);
763 				LA70_: ;
764 				if (!T65_) goto LA72_;
765 				unsureAsgnRef((void**) (&(*p).val), copyString((*p).cmds->data[(NI)((*p).idx + ((NI) 1))]));
766 				(*p).idx += ((NI) 1);
767 			}
768 			goto LA40_;
769 			LA72_: ;
770 			{
771 				unsureAsgnRef((void**) (&(*p).val), ((NimStringDesc*) NIM_NIL));
772 			}
773 			LA40_: ;
774 			(*p).idx += ((NI) 1);
775 			(*p).pos = ((NI) 0);
776 		}
777 		goto LA30_;
778 		LA34_: ;
779 		{
780 			(*p).pos = i;
781 			handleShortOption__pureZparseopt_127(p, (*p).cmds->data[(*p).idx]);
782 		}
783 		LA30_: ;
784 	}
785 	goto LA24_;
786 	LA28_: ;
787 	{
788 		(*p).kind = ((tyEnum_CmdLineKind__XkdXq9atxjiuhkFFh0XYrSA) 1);
789 		unsureAsgnRef((void**) (&(*p).key), copyString((*p).cmds->data[(*p).idx]));
790 		(*p).idx += ((NI) 1);
791 		(*p).pos = ((NI) 0);
792 	}
793 	LA24_: ;
794 	}BeforeRet_: ;
795 }
N_INLINE(void,nimGCunrefNoCycle)796 static N_INLINE(void, nimGCunrefNoCycle)(void* p) {
797 	tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g* T1_;
798 	T1_ = (tyObject_Cell__1zcF9cV8XIAtbN8h5HRUB8g*)0;
799 	T1_ = usrToCell__system_5291(p);
800 	decRef__system_5336(T1_);
801 }
N_NIMCALL(tySequence__sM4lkSb7zS6F7OVMvW9cffQ *,X5BX5D___pureZparseopt_275)802 N_LIB_PRIVATE N_NIMCALL(tySequence__sM4lkSb7zS6F7OVMvW9cffQ*, X5BX5D___pureZparseopt_275)(NimStringDesc** s, NI sLen_0, tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA x) {
803 	tySequence__sM4lkSb7zS6F7OVMvW9cffQ* result;
804 	NI a;
805 	NI L;
806 	result = NIM_NIL;
807 	a = x.a;
808 	L = (NI)((NI)((NI)(sLen_0 - x.b) - a) + ((NI) 1));
809 	result = (tySequence__sM4lkSb7zS6F7OVMvW9cffQ*) newSeq((&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_), ((NI) (L)));
810 	{
811 		NI i;
812 		NI i_2;
813 		i = (NI)0;
814 		i_2 = ((NI) 0);
815 		{
816 			while (1) {
817 				NimStringDesc* T4_;
818 				if (!(i_2 < L)) goto LA3;
819 				i = i_2;
820 				T4_ = NIM_NIL;
821 				T4_ = result->data[i]; result->data[i] = copyStringRC1(s[(NI)(i + a)]);
822 				if (T4_) nimGCunrefNoCycle(T4_);
823 				i_2 += ((NI) 1);
824 			} LA3: ;
825 		}
826 	}
827 	return result;
828 }
N_INLINE(void,nimSetMem__systemZmemory_7)829 static N_INLINE(void, nimSetMem__systemZmemory_7)(void* a, int v, NI size) {
830 	void* T1_;
831 	T1_ = (void*)0;
832 	T1_ = memset(a, v, ((size_t) (size)));
833 }
N_INLINE(void,nimZeroMem)834 static N_INLINE(void, nimZeroMem)(void* p, NI size) {
835 	nimSetMem__systemZmemory_7(p, ((int) 0), size);
836 }
N_INLINE(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA,dotdot___stdZenumutils_80)837 static N_INLINE(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA, dotdot___stdZenumutils_80)(NI a, NI b) {
838 	tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA result;
839 	nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA));
840 	nimZeroMem((void*)(&result), sizeof(tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA));
841 	result.a = a;
842 	result.b = b;
843 	return result;
844 }
N_NIMCALL(NimStringDesc *,npocmdLineRest)845 N_LIB_PRIVATE N_NIMCALL(NimStringDesc*, npocmdLineRest)(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg* p) {
846 	NimStringDesc* result;
847 	tyObject_HSlice__EE5dzjqoOrHT6HJhIPXAvA T1_;
848 	tySequence__sM4lkSb7zS6F7OVMvW9cffQ* T2_;
849 	result = NIM_NIL;
850 	T1_ = dotdot___stdZenumutils_80((*p).idx, ((NI) 1));
851 	T2_ = NIM_NIL;
852 	T2_ = X5BX5D___pureZparseopt_275((*p).cmds->data, ((*p).cmds ? (*p).cmds->Sup.len : 0), T1_);
853 	result = quoteShellCommand__pureZos_604(T2_->data, (T2_ ? T2_->Sup.len : 0));
854 	return result;
855 }
N_NIMCALL(void,stdlib_parseoptDatInit000)856 N_LIB_PRIVATE N_NIMCALL(void, stdlib_parseoptDatInit000)(void) {
857 static TNimNode* TM__GYgvYKeHVTEls0AcywABHQ_2_10[10];
858 static TNimNode* TM__GYgvYKeHVTEls0AcywABHQ_3_4[4];
859 NI TM__GYgvYKeHVTEls0AcywABHQ_5;
860 static char* NIM_CONST TM__GYgvYKeHVTEls0AcywABHQ_4[4] = {
861 "cmdEnd",
862 "cmdArgument",
863 "cmdLongOption",
864 "cmdShortOption"};
865 static TNimNode TM__GYgvYKeHVTEls0AcywABHQ_0[17];
866 NTIoptparser__l9cyoK9aLLTUH7LBRIbLqETg_.size = sizeof(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg);
867 NTIoptparser__l9cyoK9aLLTUH7LBRIbLqETg_.align = NIM_ALIGNOF(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg);
868 NTIoptparser__l9cyoK9aLLTUH7LBRIbLqETg_.kind = 17;
869 NTIoptparser__l9cyoK9aLLTUH7LBRIbLqETg_.base = (&NTIrootobj__ytyiCJqK439aF9cIibuRVpAg_);
870 TM__GYgvYKeHVTEls0AcywABHQ_2_10[0] = &TM__GYgvYKeHVTEls0AcywABHQ_0[1];
871 TM__GYgvYKeHVTEls0AcywABHQ_0[1].kind = 1;
872 TM__GYgvYKeHVTEls0AcywABHQ_0[1].offset = offsetof(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg, pos);
873 TM__GYgvYKeHVTEls0AcywABHQ_0[1].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
874 TM__GYgvYKeHVTEls0AcywABHQ_0[1].name = "pos";
875 TM__GYgvYKeHVTEls0AcywABHQ_2_10[1] = &TM__GYgvYKeHVTEls0AcywABHQ_0[2];
876 TM__GYgvYKeHVTEls0AcywABHQ_0[2].kind = 1;
877 TM__GYgvYKeHVTEls0AcywABHQ_0[2].offset = offsetof(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg, inShortState);
878 TM__GYgvYKeHVTEls0AcywABHQ_0[2].typ = (&NTIbool__VaVACK0bpYmqIQ0mKcHfQQ_);
879 TM__GYgvYKeHVTEls0AcywABHQ_0[2].name = "inShortState";
880 TM__GYgvYKeHVTEls0AcywABHQ_2_10[2] = &TM__GYgvYKeHVTEls0AcywABHQ_0[3];
881 TM__GYgvYKeHVTEls0AcywABHQ_0[3].kind = 1;
882 TM__GYgvYKeHVTEls0AcywABHQ_0[3].offset = offsetof(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg, allowWhitespaceAfterColon);
883 TM__GYgvYKeHVTEls0AcywABHQ_0[3].typ = (&NTIbool__VaVACK0bpYmqIQ0mKcHfQQ_);
884 TM__GYgvYKeHVTEls0AcywABHQ_0[3].name = "allowWhitespaceAfterColon";
885 TM__GYgvYKeHVTEls0AcywABHQ_2_10[3] = &TM__GYgvYKeHVTEls0AcywABHQ_0[4];
886 NTIsetLcharT__HDqWPvEAxZK51ZcfaeQEdg_.size = sizeof(tySet_tyChar__nmiMWKVIe46vacnhAFrQvw);
887 NTIsetLcharT__HDqWPvEAxZK51ZcfaeQEdg_.align = NIM_ALIGNOF(tySet_tyChar__nmiMWKVIe46vacnhAFrQvw);
888 NTIsetLcharT__HDqWPvEAxZK51ZcfaeQEdg_.kind = 19;
889 NTIsetLcharT__HDqWPvEAxZK51ZcfaeQEdg_.base = (&NTIchar__nmiMWKVIe46vacnhAFrQvw_);
890 NTIsetLcharT__HDqWPvEAxZK51ZcfaeQEdg_.flags = 3;
891 TM__GYgvYKeHVTEls0AcywABHQ_0[5].len = 0; TM__GYgvYKeHVTEls0AcywABHQ_0[5].kind = 0;
892 NTIsetLcharT__HDqWPvEAxZK51ZcfaeQEdg_.node = &TM__GYgvYKeHVTEls0AcywABHQ_0[5];
893 TM__GYgvYKeHVTEls0AcywABHQ_0[4].kind = 1;
894 TM__GYgvYKeHVTEls0AcywABHQ_0[4].offset = offsetof(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg, shortNoVal);
895 TM__GYgvYKeHVTEls0AcywABHQ_0[4].typ = (&NTIsetLcharT__HDqWPvEAxZK51ZcfaeQEdg_);
896 TM__GYgvYKeHVTEls0AcywABHQ_0[4].name = "shortNoVal";
897 TM__GYgvYKeHVTEls0AcywABHQ_2_10[4] = &TM__GYgvYKeHVTEls0AcywABHQ_0[6];
898 TM__GYgvYKeHVTEls0AcywABHQ_0[6].kind = 1;
899 TM__GYgvYKeHVTEls0AcywABHQ_0[6].offset = offsetof(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg, longNoVal);
900 TM__GYgvYKeHVTEls0AcywABHQ_0[6].typ = (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_);
901 TM__GYgvYKeHVTEls0AcywABHQ_0[6].name = "longNoVal";
902 TM__GYgvYKeHVTEls0AcywABHQ_2_10[5] = &TM__GYgvYKeHVTEls0AcywABHQ_0[7];
903 TM__GYgvYKeHVTEls0AcywABHQ_0[7].kind = 1;
904 TM__GYgvYKeHVTEls0AcywABHQ_0[7].offset = offsetof(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg, cmds);
905 TM__GYgvYKeHVTEls0AcywABHQ_0[7].typ = (&NTIseqLstringT__sM4lkSb7zS6F7OVMvW9cffQ_);
906 TM__GYgvYKeHVTEls0AcywABHQ_0[7].name = "cmds";
907 TM__GYgvYKeHVTEls0AcywABHQ_2_10[6] = &TM__GYgvYKeHVTEls0AcywABHQ_0[8];
908 TM__GYgvYKeHVTEls0AcywABHQ_0[8].kind = 1;
909 TM__GYgvYKeHVTEls0AcywABHQ_0[8].offset = offsetof(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg, idx);
910 TM__GYgvYKeHVTEls0AcywABHQ_0[8].typ = (&NTIint__rR5Bzr1D5krxoo1NcNyeMA_);
911 TM__GYgvYKeHVTEls0AcywABHQ_0[8].name = "idx";
912 TM__GYgvYKeHVTEls0AcywABHQ_2_10[7] = &TM__GYgvYKeHVTEls0AcywABHQ_0[9];
913 NTIcmdlinekind__XkdXq9atxjiuhkFFh0XYrSA_.size = sizeof(tyEnum_CmdLineKind__XkdXq9atxjiuhkFFh0XYrSA);
914 NTIcmdlinekind__XkdXq9atxjiuhkFFh0XYrSA_.align = NIM_ALIGNOF(tyEnum_CmdLineKind__XkdXq9atxjiuhkFFh0XYrSA);
915 NTIcmdlinekind__XkdXq9atxjiuhkFFh0XYrSA_.kind = 14;
916 NTIcmdlinekind__XkdXq9atxjiuhkFFh0XYrSA_.base = 0;
917 NTIcmdlinekind__XkdXq9atxjiuhkFFh0XYrSA_.flags = 3;
918 for (TM__GYgvYKeHVTEls0AcywABHQ_5 = 0; TM__GYgvYKeHVTEls0AcywABHQ_5 < 4; TM__GYgvYKeHVTEls0AcywABHQ_5++) {
919 TM__GYgvYKeHVTEls0AcywABHQ_0[TM__GYgvYKeHVTEls0AcywABHQ_5+10].kind = 1;
920 TM__GYgvYKeHVTEls0AcywABHQ_0[TM__GYgvYKeHVTEls0AcywABHQ_5+10].offset = TM__GYgvYKeHVTEls0AcywABHQ_5;
921 TM__GYgvYKeHVTEls0AcywABHQ_0[TM__GYgvYKeHVTEls0AcywABHQ_5+10].name = TM__GYgvYKeHVTEls0AcywABHQ_4[TM__GYgvYKeHVTEls0AcywABHQ_5];
922 TM__GYgvYKeHVTEls0AcywABHQ_3_4[TM__GYgvYKeHVTEls0AcywABHQ_5] = &TM__GYgvYKeHVTEls0AcywABHQ_0[TM__GYgvYKeHVTEls0AcywABHQ_5+10];
923 }
924 TM__GYgvYKeHVTEls0AcywABHQ_0[14].len = 4; TM__GYgvYKeHVTEls0AcywABHQ_0[14].kind = 2; TM__GYgvYKeHVTEls0AcywABHQ_0[14].sons = &TM__GYgvYKeHVTEls0AcywABHQ_3_4[0];
925 NTIcmdlinekind__XkdXq9atxjiuhkFFh0XYrSA_.node = &TM__GYgvYKeHVTEls0AcywABHQ_0[14];
926 TM__GYgvYKeHVTEls0AcywABHQ_0[9].kind = 1;
927 TM__GYgvYKeHVTEls0AcywABHQ_0[9].offset = offsetof(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg, kind);
928 TM__GYgvYKeHVTEls0AcywABHQ_0[9].typ = (&NTIcmdlinekind__XkdXq9atxjiuhkFFh0XYrSA_);
929 TM__GYgvYKeHVTEls0AcywABHQ_0[9].name = "kind";
930 TM__GYgvYKeHVTEls0AcywABHQ_2_10[8] = &TM__GYgvYKeHVTEls0AcywABHQ_0[15];
931 TM__GYgvYKeHVTEls0AcywABHQ_0[15].kind = 1;
932 TM__GYgvYKeHVTEls0AcywABHQ_0[15].offset = offsetof(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg, key);
933 TM__GYgvYKeHVTEls0AcywABHQ_0[15].typ = (&NTIstring__77mFvmsOLKik79ci2hXkHEg_);
934 TM__GYgvYKeHVTEls0AcywABHQ_0[15].name = "key";
935 TM__GYgvYKeHVTEls0AcywABHQ_2_10[9] = &TM__GYgvYKeHVTEls0AcywABHQ_0[16];
936 TM__GYgvYKeHVTEls0AcywABHQ_0[16].kind = 1;
937 TM__GYgvYKeHVTEls0AcywABHQ_0[16].offset = offsetof(tyObject_OptParser__l9cyoK9aLLTUH7LBRIbLqETg, val);
938 TM__GYgvYKeHVTEls0AcywABHQ_0[16].typ = (&NTIstring__77mFvmsOLKik79ci2hXkHEg_);
939 TM__GYgvYKeHVTEls0AcywABHQ_0[16].name = "val";
940 TM__GYgvYKeHVTEls0AcywABHQ_0[0].len = 10; TM__GYgvYKeHVTEls0AcywABHQ_0[0].kind = 2; TM__GYgvYKeHVTEls0AcywABHQ_0[0].sons = &TM__GYgvYKeHVTEls0AcywABHQ_2_10[0];
941 NTIoptparser__l9cyoK9aLLTUH7LBRIbLqETg_.node = &TM__GYgvYKeHVTEls0AcywABHQ_0[0];
942 }
943 
944