CMakeLists.txt | 138 +- build.zig | 8 +- ci/drone/linux_script_test | 2 +- ci/zinc/linux_test.sh | 2 +- doc/langref.html.in | 2 +- lib/build_runner.zig | 340 + lib/c.zig | 674 + lib/compiler_rt.zig | 884 + lib/compiler_rt/README.md | 267 + lib/compiler_rt/absv.zig | 40 + lib/compiler_rt/absvdi2_test.zig | 30 + lib/compiler_rt/absvsi2_test.zig | 30 + lib/compiler_rt/absvti2_test.zig | 30 + lib/compiler_rt/addXf3.zig | 244 + lib/compiler_rt/addXf3_test.zig | 157 + lib/compiler_rt/addo.zig | 38 + lib/compiler_rt/addodi4_test.zig | 77 + lib/compiler_rt/addosi4_test.zig | 78 + lib/compiler_rt/addoti4_test.zig | 77 + lib/compiler_rt/arm.zig | 115 + lib/compiler_rt/ashldi3_test.zig | 32 + lib/compiler_rt/ashlti3_test.zig | 46 + lib/compiler_rt/ashrdi3_test.zig | 55 + lib/compiler_rt/ashrti3_test.zig | 56 + lib/compiler_rt/atomics.zig | 459 + lib/compiler_rt/aulldiv.zig | 76 + lib/compiler_rt/aullrem.zig | 77 + lib/compiler_rt/bswap.zig | 77 + lib/compiler_rt/bswapdi2_test.zig | 21 + lib/compiler_rt/bswapsi2_test.zig | 21 + lib/compiler_rt/bswapti2_test.zig | 21 + lib/compiler_rt/ceil.zig | 154 + lib/compiler_rt/clear_cache.zig | 174 + lib/compiler_rt/clzdi2_test.zig | 325 + lib/compiler_rt/clzsi2_test.zig | 308 + lib/compiler_rt/clzti2_test.zig | 391 + lib/compiler_rt/cmp.zig | 57 + lib/compiler_rt/cmpdi2_test.zig | 105 + lib/compiler_rt/cmpsi2_test.zig | 105 + lib/compiler_rt/cmpti2_test.zig | 105 + lib/compiler_rt/compareXf2.zig | 328 + lib/compiler_rt/comparedf2_test.zig | 101 + lib/compiler_rt/comparesf2_test.zig | 101 + lib/compiler_rt/cos.zig | 144 + lib/compiler_rt/count0bits.zig | 244 + lib/compiler_rt/ctzdi2_test.zig | 325 + lib/compiler_rt/ctzsi2_test.zig | 292 + lib/compiler_rt/ctzti2_test.zig | 391 + lib/compiler_rt/divdf3.zig | 331 + lib/compiler_rt/divdf3_test.zig | 34 + lib/compiler_rt/divsf3.zig | 205 + lib/compiler_rt/divsf3_test.zig | 34 + lib/compiler_rt/divtf3.zig | 226 + lib/compiler_rt/divtf3_test.zig | 50 + lib/compiler_rt/divti3.zig | 28 + lib/compiler_rt/divti3_test.zig | 21 + lib/compiler_rt/divxf3.zig | 202 + lib/compiler_rt/divxf3_test.zig | 65 + lib/compiler_rt/emutls.zig | 390 + lib/compiler_rt/exp.zig | 213 + lib/compiler_rt/exp2.zig | 461 + lib/compiler_rt/extendXfYf2.zig | 112 + lib/compiler_rt/extendXfYf2_test.zig | 206 + lib/compiler_rt/extend_f80.zig | 131 + lib/compiler_rt/fabs.zig | 29 + lib/compiler_rt/ffsdi2_test.zig | 325 + lib/compiler_rt/ffssi2_test.zig | 292 + lib/compiler_rt/ffsti2_test.zig | 391 + lib/compiler_rt/fixXfYi.zig | 224 + lib/compiler_rt/fixXfYi_test.zig | 948 + lib/compiler_rt/fixint_test.zig | 150 + lib/compiler_rt/floatXiYf.zig | 222 + lib/compiler_rt/floatXiYf_test.zig | 835 + lib/compiler_rt/floor.zig | 198 + lib/compiler_rt/fma.zig | 327 + lib/compiler_rt/fmax.zig | 43 + lib/compiler_rt/fmin.zig | 43 + lib/compiler_rt/fmod.zig | 368 + lib/compiler_rt/fmodq_test.zig | 52 + lib/compiler_rt/fmodx_test.zig | 51 + lib/compiler_rt/int.zig | 641 + lib/compiler_rt/log.zig | 168 + lib/compiler_rt/log10.zig | 196 + lib/compiler_rt/log2.zig | 185 + lib/compiler_rt/lshrdi3_test.zig | 55 + lib/compiler_rt/lshrti3_test.zig | 46 + lib/compiler_rt/modti3.zig | 33 + lib/compiler_rt/modti3_test.zig | 37 + lib/compiler_rt/mulXf3.zig | 344 + lib/compiler_rt/mulXf3_test.zig | 171 + lib/compiler_rt/muldi3.zig | 57 + lib/compiler_rt/muldi3_test.zig | 51 + lib/compiler_rt/mulo.zig | 72 + lib/compiler_rt/mulodi4_test.zig | 87 + lib/compiler_rt/mulosi4_test.zig | 72 + lib/compiler_rt/muloti4_test.zig | 89 + lib/compiler_rt/multi3.zig | 65 + lib/compiler_rt/multi3_test.zig | 53 + lib/compiler_rt/negXf2.zig | 30 + lib/compiler_rt/negXi2.zig | 35 + lib/compiler_rt/negdi2_test.zig | 515 + lib/compiler_rt/negsi2_test.zig | 261 + lib/compiler_rt/negti2_test.zig | 1028 + lib/compiler_rt/negv.zig | 36 + lib/compiler_rt/negvdi2_test.zig | 30 + lib/compiler_rt/negvsi2_test.zig | 30 + lib/compiler_rt/negvti2_test.zig | 30 + lib/compiler_rt/os_version_check.zig | 49 + lib/compiler_rt/parity.zig | 42 + lib/compiler_rt/paritydi2_test.zig | 36 + lib/compiler_rt/paritysi2_test.zig | 36 + lib/compiler_rt/parityti2_test.zig | 36 + lib/compiler_rt/popcount.zig | 49 + lib/compiler_rt/popcountdi2_test.zig | 35 + lib/compiler_rt/popcountsi2_test.zig | 35 + lib/compiler_rt/popcountti2_test.zig | 35 + lib/compiler_rt/rem_pio2.zig | 198 + lib/compiler_rt/rem_pio2_large.zig | 506 + lib/compiler_rt/rem_pio2f.zig | 70 + lib/compiler_rt/round.zig | 169 + lib/compiler_rt/shift.zig | 131 + lib/compiler_rt/sin.zig | 162 + lib/compiler_rt/sincos.zig | 242 + lib/compiler_rt/sparc.zig | 114 + lib/compiler_rt/sqrt.zig | 284 + lib/compiler_rt/stack_probe.zig | 223 + lib/compiler_rt/subo.zig | 38 + lib/compiler_rt/subodi4_test.zig | 81 + lib/compiler_rt/subosi4_test.zig | 82 + lib/compiler_rt/suboti4_test.zig | 81 + lib/compiler_rt/tan.zig | 140 + lib/compiler_rt/trig.zig | 273 + lib/compiler_rt/trunc.zig | 124 + lib/compiler_rt/truncXfYf2.zig | 152 + lib/compiler_rt/truncXfYf2_test.zig | 296 + lib/compiler_rt/trunc_f80.zig | 173 + lib/compiler_rt/ucmpdi2_test.zig | 49 + lib/compiler_rt/ucmpsi2_test.zig | 49 + lib/compiler_rt/ucmpti2_test.zig | 49 + lib/compiler_rt/udivmod.zig | 201 + lib/compiler_rt/udivmoddi4_test.zig | 20612 ++++++++++ lib/compiler_rt/udivmodti4.zig | 18 + lib/compiler_rt/udivmodti4_test.zig | 65300 ++++++++++++++++++++++++++++++++ lib/compiler_rt/udivti3.zig | 13 + lib/compiler_rt/umodti3.zig | 18 + lib/docs/index.html | 662 + lib/docs/main.js | 2024 + lib/init-exe/build.zig | 34 + lib/init-exe/src/main.zig | 9 + lib/init-lib/build.zig | 17 + lib/init-lib/src/main.zig | 10 + lib/ssp.zig | 135 + lib/std/array_hash_map.zig | 4 - lib/std/build.zig | 2 +- lib/std/special/build_runner.zig | 340 - lib/std/special/c.zig | 674 - lib/std/special/compiler_rt.zig | 884 - lib/std/special/compiler_rt/README.md | 267 - lib/std/special/compiler_rt/absv.zig | 40 - lib/std/special/compiler_rt/absvdi2_test.zig | 30 - lib/std/special/compiler_rt/absvsi2_test.zig | 30 - lib/std/special/compiler_rt/absvti2_test.zig | 30 - lib/std/special/compiler_rt/addXf3.zig | 244 - lib/std/special/compiler_rt/addXf3_test.zig | 157 - lib/std/special/compiler_rt/addo.zig | 38 - lib/std/special/compiler_rt/addodi4_test.zig | 77 - lib/std/special/compiler_rt/addosi4_test.zig | 78 - lib/std/special/compiler_rt/addoti4_test.zig | 77 - lib/std/special/compiler_rt/arm.zig | 115 - lib/std/special/compiler_rt/ashldi3_test.zig | 32 - lib/std/special/compiler_rt/ashlti3_test.zig | 46 - lib/std/special/compiler_rt/ashrdi3_test.zig | 55 - lib/std/special/compiler_rt/ashrti3_test.zig | 56 - lib/std/special/compiler_rt/atomics.zig | 459 - lib/std/special/compiler_rt/aulldiv.zig | 76 - lib/std/special/compiler_rt/aullrem.zig | 77 - lib/std/special/compiler_rt/bswap.zig | 77 - lib/std/special/compiler_rt/bswapdi2_test.zig | 21 - lib/std/special/compiler_rt/bswapsi2_test.zig | 21 - lib/std/special/compiler_rt/bswapti2_test.zig | 21 - lib/std/special/compiler_rt/ceil.zig | 154 - lib/std/special/compiler_rt/clear_cache.zig | 174 - lib/std/special/compiler_rt/clzdi2_test.zig | 325 - lib/std/special/compiler_rt/clzsi2_test.zig | 308 - lib/std/special/compiler_rt/clzti2_test.zig | 391 - lib/std/special/compiler_rt/cmp.zig | 57 - lib/std/special/compiler_rt/cmpdi2_test.zig | 105 - lib/std/special/compiler_rt/cmpsi2_test.zig | 105 - lib/std/special/compiler_rt/cmpti2_test.zig | 105 - lib/std/special/compiler_rt/compareXf2.zig | 328 - lib/std/special/compiler_rt/comparedf2_test.zig | 101 - lib/std/special/compiler_rt/comparesf2_test.zig | 101 - lib/std/special/compiler_rt/cos.zig | 144 - lib/std/special/compiler_rt/count0bits.zig | 244 - lib/std/special/compiler_rt/ctzdi2_test.zig | 325 - lib/std/special/compiler_rt/ctzsi2_test.zig | 292 - lib/std/special/compiler_rt/ctzti2_test.zig | 391 - lib/std/special/compiler_rt/divdf3.zig | 331 - lib/std/special/compiler_rt/divdf3_test.zig | 34 - lib/std/special/compiler_rt/divsf3.zig | 205 - lib/std/special/compiler_rt/divsf3_test.zig | 34 - lib/std/special/compiler_rt/divtf3.zig | 226 - lib/std/special/compiler_rt/divtf3_test.zig | 50 - lib/std/special/compiler_rt/divti3.zig | 28 - lib/std/special/compiler_rt/divti3_test.zig | 21 - lib/std/special/compiler_rt/divxf3.zig | 202 - lib/std/special/compiler_rt/divxf3_test.zig | 65 - lib/std/special/compiler_rt/emutls.zig | 390 - lib/std/special/compiler_rt/exp.zig | 213 - lib/std/special/compiler_rt/exp2.zig | 461 - lib/std/special/compiler_rt/extendXfYf2.zig | 112 - lib/std/special/compiler_rt/extendXfYf2_test.zig | 206 - lib/std/special/compiler_rt/extend_f80.zig | 131 - lib/std/special/compiler_rt/fabs.zig | 29 - lib/std/special/compiler_rt/ffsdi2_test.zig | 325 - lib/std/special/compiler_rt/ffssi2_test.zig | 292 - lib/std/special/compiler_rt/ffsti2_test.zig | 391 - lib/std/special/compiler_rt/fixXfYi.zig | 224 - lib/std/special/compiler_rt/fixXfYi_test.zig | 948 - lib/std/special/compiler_rt/fixint_test.zig | 150 - lib/std/special/compiler_rt/floatXiYf.zig | 222 - lib/std/special/compiler_rt/floatXiYf_test.zig | 835 - lib/std/special/compiler_rt/floor.zig | 198 - lib/std/special/compiler_rt/fma.zig | 327 - lib/std/special/compiler_rt/fmax.zig | 43 - lib/std/special/compiler_rt/fmin.zig | 43 - lib/std/special/compiler_rt/fmod.zig | 368 - lib/std/special/compiler_rt/fmodq_test.zig | 52 - lib/std/special/compiler_rt/fmodx_test.zig | 51 - lib/std/special/compiler_rt/int.zig | 641 - lib/std/special/compiler_rt/log.zig | 168 - lib/std/special/compiler_rt/log10.zig | 196 - lib/std/special/compiler_rt/log2.zig | 185 - lib/std/special/compiler_rt/lshrdi3_test.zig | 55 - lib/std/special/compiler_rt/lshrti3_test.zig | 46 - lib/std/special/compiler_rt/modti3.zig | 33 - lib/std/special/compiler_rt/modti3_test.zig | 37 - lib/std/special/compiler_rt/mulXf3.zig | 344 - lib/std/special/compiler_rt/mulXf3_test.zig | 171 - lib/std/special/compiler_rt/muldi3.zig | 57 - lib/std/special/compiler_rt/muldi3_test.zig | 51 - lib/std/special/compiler_rt/mulo.zig | 72 - lib/std/special/compiler_rt/mulodi4_test.zig | 87 - lib/std/special/compiler_rt/mulosi4_test.zig | 72 - lib/std/special/compiler_rt/muloti4_test.zig | 89 - lib/std/special/compiler_rt/multi3.zig | 65 - lib/std/special/compiler_rt/multi3_test.zig | 53 - lib/std/special/compiler_rt/negXf2.zig | 30 - lib/std/special/compiler_rt/negXi2.zig | 35 - lib/std/special/compiler_rt/negdi2_test.zig | 515 - lib/std/special/compiler_rt/negsi2_test.zig | 261 - lib/std/special/compiler_rt/negti2_test.zig | 1028 - lib/std/special/compiler_rt/negv.zig | 36 - lib/std/special/compiler_rt/negvdi2_test.zig | 30 - lib/std/special/compiler_rt/negvsi2_test.zig | 30 - lib/std/special/compiler_rt/negvti2_test.zig | 30 - lib/std/special/compiler_rt/os_version_check.zig | 49 - lib/std/special/compiler_rt/parity.zig | 42 - lib/std/special/compiler_rt/paritydi2_test.zig | 36 - lib/std/special/compiler_rt/paritysi2_test.zig | 36 - lib/std/special/compiler_rt/parityti2_test.zig | 36 - lib/std/special/compiler_rt/popcount.zig | 49 - lib/std/special/compiler_rt/popcountdi2_test.zig | 35 - lib/std/special/compiler_rt/popcountsi2_test.zig | 35 - lib/std/special/compiler_rt/popcountti2_test.zig | 35 - lib/std/special/compiler_rt/rem_pio2.zig | 198 - lib/std/special/compiler_rt/rem_pio2_large.zig | 506 - lib/std/special/compiler_rt/rem_pio2f.zig | 70 - lib/std/special/compiler_rt/round.zig | 169 - lib/std/special/compiler_rt/shift.zig | 131 - lib/std/special/compiler_rt/sin.zig | 162 - lib/std/special/compiler_rt/sincos.zig | 242 - lib/std/special/compiler_rt/sparc.zig | 114 - lib/std/special/compiler_rt/sqrt.zig | 284 - lib/std/special/compiler_rt/stack_probe.zig | 223 - lib/std/special/compiler_rt/subo.zig | 38 - lib/std/special/compiler_rt/subodi4_test.zig | 81 - lib/std/special/compiler_rt/subosi4_test.zig | 82 - lib/std/special/compiler_rt/suboti4_test.zig | 81 - lib/std/special/compiler_rt/tan.zig | 140 - lib/std/special/compiler_rt/trig.zig | 273 - lib/std/special/compiler_rt/trunc.zig | 124 - lib/std/special/compiler_rt/truncXfYf2.zig | 152 - lib/std/special/compiler_rt/truncXfYf2_test.zig | 296 - lib/std/special/compiler_rt/trunc_f80.zig | 173 - lib/std/special/compiler_rt/ucmpdi2_test.zig | 49 - lib/std/special/compiler_rt/ucmpsi2_test.zig | 49 - lib/std/special/compiler_rt/ucmpti2_test.zig | 49 - lib/std/special/compiler_rt/udivmod.zig | 201 - lib/std/special/compiler_rt/udivmoddi4_test.zig | 20612 ---------- lib/std/special/compiler_rt/udivmodti4.zig | 18 - lib/std/special/compiler_rt/udivmodti4_test.zig | 65300 -------------------------------- lib/std/special/compiler_rt/udivti3.zig | 13 - lib/std/special/compiler_rt/umodti3.zig | 18 - lib/std/special/docs/index.html | 662 - lib/std/special/docs/main.js | 2024 - lib/std/special/init-exe/build.zig | 34 - lib/std/special/init-exe/src/main.zig | 9 - lib/std/special/init-lib/build.zig | 17 - lib/std/special/init-lib/src/main.zig | 10 - lib/std/special/ssp.zig | 135 - lib/std/special/test_runner.zig | 178 - lib/test_runner.zig | 178 + src/Compilation.zig | 32 +- src/Module.zig | 18 +- src/Sema.zig | 1 + src/link/MachO.zig | 3 - src/link/MachO/Dylib.zig | 28 +- src/link/tapi/yaml.zig | 2 +- src/main.zig | 15 +- src/stage1/all_types.hpp | 1 - src/stage1/codegen.cpp | 22 +- src/type.zig | 129 +- test/behavior/eval.zig | 111 + 314 files changed, 112911 insertions(+), 112741 deletions(-)