summary refs log tree commit diff stats
path: root/compiler
Commit message (Collapse)AuthorAgeFilesLines
* HCR: properly handling complex const objects in the codegen - fixes #13915 ↵Viktor Kirilov2020-04-251-6/+28
| | | | (#14115)
* implement (#14114)cooldome2020-04-251-8/+3
| | | Co-authored-by: cooldome <ariabushenko@bk.ru>
* changed type() to typeof() in docs and error messages (#14084)hlaaftana2020-04-242-2/+2
|
* Make JS not mangle to snake_case (#14086)hlaaftana2020-04-241-5/+1
|
* CT sizeof(+friends) for {.importc, completeStruct.} types, enable ABI static ↵Timothee Cour2020-04-239-18/+58
| | | | | | | | | | | checks (#13926) * -d:checkabi obsolete (ABI check now enforced); add `addTypeHeader` helper * cleanups * import sizeof at CT for {.completeType.} * address comments; revert default enabling of -d:checkAbi for now * mimportc_size_check.nim => msizeof5.nim; merge mabi_check.nim into msizeof5.nim; refactor * all pragmas in errmsgs should be written: '.importc' (un-ambiguous and less verbose than {.importc.})
* new cmd: `nim r main [args...]` to compile & run, saving binary under ↵Timothee Cour2020-04-233-16/+27
| | | | | | $nimcache/main (#13382) * implement `nim r main` to compile and run, saving binary to $nimcache * remove outFileAbs for now
* Add LTO support for most compilers and do some VCC fixes (#14013)Keithcat12020-04-221-3/+4
| | | | | | | | | * Added LTO in nim.cfg, added /link in extccomp.nim and other fixes * Fix line endings * Fix line endings, for real this time. Almost certainly. Like, 95% certain. * Removed /MD from extccom.nim VCC comiler
* cycle collector (#14071)Andreas Rumpf2020-04-222-4/+5
| | | | * figured out the wrong cycle trace proc problem * cycle collector/break refactorings and minor improvements
* fix typo (#14063)Andy Davidoff2020-04-211-1/+1
|
* cleanup PR #14048Araq2020-04-211-2/+2
|
* fixes #14052 [backport:1.2] (#14055)Andreas Rumpf2020-04-211-1/+2
|
* Replace enum fields idents with syms (#14048)cooldome2020-04-211-1/+9
| | | | | | * replace enum fields idents with syms * Trigger build Co-authored-by: cooldome <ariabushenko@bk.ru>
* #12103 - CI for OpenBSD (#12105)Euan2020-04-211-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Working on OpenBSD CI * Condense steps into 2 steps to make output easier to follow. * Move up one directory after csources build. * Remove FreeBSD build manifest and add OpenBSD test ignores for coroutines and hot code reloading. * If runCI fails, run the test results script. * Add email trigger for build failure * Remove .git from repository URL * Disable SFML test on OpenBSD * Disable tgetaddrinfo on OpenBSD as only UDP and TCP protocols are supported. * Remove getFilePermissions as it causes CI test failures with NimScript. * Set clang as cc in nim.cfg and use gmake to build csources. * Add getCurrentDir to nimscript. * Remove duplicate getCurrentDir and check for not weirdTarget. * Add CI badge for OpenBSD. * Disable tests which allocate lots of memory for OpenBSD. * Use `CORO_BACKEND_SETJMP` on OpenBSD rather than ucontext. * Simplify building of koch * Disable t8657 on OpenBSD. See issue #13760. * Fix #12142 - tarray_of_channels fails on OpenBSD * Disable thhtpclient_ssl and tosprocterminate on OpenBSD. These tests can be enabled at a later date after fixing them. * Install libffi. * Set path to libc for openbsd. * Disable tevalffi for now. * Remove tevalffi.nim. * Use ncpuonline sysctl rather than ncpu. * Disable tacceptcloserace and tasynchttpserver on OpenBSD. * Enable tacceptcloserace and tasynchttpserver. * Fix #13775 as suggested by @alaviss - use /bin/cat on OpenBSD rather than /bin/sh. * Enable test on OpenBSD. * Disable tflowvar on OpenBSD.
* Fixes #14014 (#14029)cooldome2020-04-201-2/+7
| | | | | | | | | | | | | * add test * improve test * progress * fix #14014 * fix bug Co-authored-by: cooldome <ariabushenko@bk.ru>
* allow generic typedesc field access (#12220)Jasper Jenkins2020-04-201-57/+53
| | | Co-authored-by: Clyybber <darkmine956@gmail.com>
* remove the nilChecks switch; refs #11570Araq2020-04-204-8/+5
|
* fix for asm statement; refs #12650Araq2020-04-201-1/+1
|
* add `--experimental:vmopsDanger`; add generic conversion for vmops (#13813)Timothee Cour2020-04-203-9/+66
| | | * add --experimental:vmopsDanger; vmops cleanups
* compiler/suggest: highlight squashed operators (#11796)alaviss2020-04-201-3/+7
| | | | | | The operator fetching proc is greedy, so operators such as `%*` in expression `%*{}` can't be highlighted. This commit fixes that.
* fixes #12741 (#14005)Andreas Rumpf2020-04-192-9/+11
| | | | * fixes #12741 * updated tests
* fixes #14001 (#14004)Andreas Rumpf2020-04-192-2/+2
|
* forward type alignment information to seqs (#12430)Arne Döring2020-04-193-18/+19
|
* fix #14007 (#14012) [backport]cooldome2020-04-181-2/+6
| | | Co-authored-by: cooldome <ariabushenko@bk.ru>
* fixes #14003 (#14006) [backport:1.2]cooldome2020-04-171-6/+12
| | | Co-authored-by: cooldome <ariabushenko@bk.ru>
* Step2: fixes #13781, fixes #13805 (#13897)cooldome2020-04-163-17/+27
| | | | | | | | | * Fix sym owner in wrapper proc * threadpool changes * revert lowerings * add newFastMoveStmt * try fixing test by switching to cpp Co-authored-by: cooldome <ariabushenko@bk.ru>
* Implements RFCs #209 (#13995)cooldome2020-04-166-101/+213
| | | | | * add test * add changelod entry Co-authored-by: cooldome <ariabushenko@bk.ru>
* drnim: tiny progress (#13882)Andreas Rumpf2020-04-1511-118/+98
| | | | | | | | | | | * drnim: tiny progress * refactoring complete * drnim: prove .ensures annotations * Moved code around to avoid code duplication * drnim: first implementation of the 'old' property * drnim: be precise about the assignment statement * first implementation of --assumeUnique * progress on forall/exists handling
* fix #12864 static params were mutating arg types during sigmatch; fix #12713 ↵Timothee Cour2020-04-141-0/+1
| | | | | | | | | | | ; refs #13529 (#13976) * fix #12864 static params were mutating arg types during sigmatch * fix test * fix StaticParam * also fixes #12713; added test case
* Fix semfold handling of {.str/int/bool-define.} (#13964)Oscar Nihlgård2020-04-131-0/+6
|
* error msg for #13864 (#13962)cooldome2020-04-131-0/+5
| | | Co-authored-by: cooldome <ariabushenko@bk.ru>
* fix #13848: make var result work with nim cpp (#13959)Timothee Cour2020-04-131-1/+5
| | | | | * fix #13848 * add exhaustive tests for var result
* Add support for `zig cc` as C compiler. (#13757)Hessam Mehr2020-04-082-1/+12
|
* fix ICE in isUnresolvedSym (#13925)cooldome2020-04-081-5/+6
| | | Co-authored-by: cooldome <ariabushenko@bk.ru>
* fix #13909 (#13914) [backport:1.2]cooldome2020-04-082-24/+35
| | | Co-authored-by: cooldome <ariabushenko@bk.ru>
* fix #13902 distinct uint64 type corruption on 32-bit with borrow (#13907) ↵Timothee Cour2020-04-081-1/+1
| | | | | | | [backport:1.2] * fix #13902 distinct uint64 type corruption on 32-bit with borrow Co-authored-by: Timothee Cour <timothee.cour2+lightsail@gmail.com>
* fix #13910 (#13917)cooldome2020-04-071-2/+2
| | | Co-authored-by: cooldome <ariabushenko@bk.ru>
* fix some codegen bugs: NIM_BOOL, NIM_STATIC_ASSERT, --passc:-std=... (etc) ↵Timothee Cour2020-04-071-3/+5
| | | | | | | | (#13798) * fix cgen bool D20200328T203812 * --passc:std=c++17 (etc) now works instead of silently ignored * document caveats for NIM_NIL
* fix #13739 (#13742)Arne Döring2020-04-071-5/+4
|
* fix https://github.com/timotheecour/Nim/issues/88 (#13865) [backport:1.2]Timothee Cour2020-04-061-30/+23
|
* add nimPath to nim dump (#13876)Timothee Cour2020-04-051-1/+2
| | | | | * add nimPath to nim dump * rename
* Fix sym owner in wrapper proc (#13878)cooldome2020-04-051-27/+27
| | | Co-authored-by: cooldome <ariabushenko@bk.ru>
* finally de-deprecate the .define and .undef pragmasAndreas Rumpf2020-04-041-2/+0
|
* new feature: ability to turn specific warnings to errorsAndreas Rumpf2020-04-046-29/+40
|
* Remove my wrongly written mangled-related code, not needed anymore (#13858)Alexander Ivanov2020-04-032-11/+4
|
* sourcemaps for the JS codegen (#7508)Alexander Ivanov2020-04-034-9/+424
|
* make bootstrapping more robust for people who have Nim inside /usr/bin (#13855)Andreas Rumpf2020-04-031-32/+34
|
* move tinyc to a separate repo and allow installing external dependencency ↵Timothee Cour2020-04-034-25/+38
| | | | | | | (eg tinyc) from koch / library code (#13850) * remove tinyc * installDeps * update tinyc paths
* added an .assert pragma and mentioned the pragmas in the changelogAraq2020-04-023-4/+4
|
* fix last remaining warning when building nim (`intVal should be Int128`) + ↵Timothee Cour2020-04-024-47/+29
| | | | minor cleanups (#13841)
* Deprecate when declared(echo):echo (#13840)Juan Carlos2020-04-023-84/+82
|