summary refs log tree commit diff stats
path: root/config/nim.cfg
Commit message (Collapse)AuthorAgeFilesLines
* make expressions opt in to symchoices (#22716)metagn2023-09-181-4/+0
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | refs #22605 Sym choice nodes are now only allowed to pass through semchecking if contexts ask for them to (with `efAllowSymChoice`). Otherwise they are resolved or treated as ambiguous. The contexts that can receive symchoices in this PR are: * Call operands and addresses and emulations of such, which will subject them to overload resolution which will resolve them or fail. * Type conversion operands only for routine symchoices for type disambiguation syntax (like `(proc (x: int): int)(foo)`), which will resolve them or fail. * Proc parameter default values both at the declaration and during generic instantiation, which undergo type narrowing and so will resolve them or fail. This means unless these contexts mess up sym choice nodes should never leave the semchecking stage. This serves as a blueprint for future improvements to intermediate symbol resolution. Some tangential changes are also in this PR: 1. The `AmbiguousEnum` hint is removed, it was always disabled by default and since #22606 it only started getting emitted after the symchoice was soundly resolved. 2. Proc setter syntax (`a.b = c` becoming `` `b=`(a, c) ``) used to fully type check the RHS before passing the transformed call node to proc overloading. Now it just passes the original node directly so proc overloading can deal with its typechecking.
* fixes LineTooLong hints on old compilers (#22412)ringabout2023-08-081-0/+4
| | | | | * fixes LineTooLong hints on old compilers * fixes config/nim.cfg
* fixes #22301; fixes #22324; rejects branch initialization with a runtime ↵ringabout2023-07-251-1/+0
| | | | | | | | | | | discriminator with defaults (#22303) * fixes #22301; rejects branch initialization with a runtime discriminator with defaults * undefault nimPreviewRangeDefault * fixes tests * use oldCheckDefault
* Fix #21595 (#22233)Juan Carlos2023-07-071-2/+1
| | | | | * . * Fix #21595
* revert #21808 (#21881)ringabout2023-05-221-7/+0
|
* fixes nightlies regressions; disable `build-id=none` on macos (#21839)ringabout2023-05-121-2/+4
| | | | | * fixes nightlies regressions; disable `build-id=none` on macos * fixes typos
* Remove LineTooLong (#21819)Juan Carlos2023-05-111-1/+0
| | | | | | | * LineTooLong refactor to make it actually useful * Improve error message * changelog wording * Fix typo
* Add build-id=none for GCC when build for Release (#21808)Juan Carlos2023-05-081-0/+6
| | | | | | | | | | | | | * Add build-id=none to GCC/Clang, unneeded metadata in binaries * Add build-id=none to GCC/Clang, unneeded metadata in binaries * Add build-id=none to Clang * Fix * Fix * Add build-id=none to GCC
* static link pthread correctly (#21693)ringabout2023-04-201-0/+3
|
* LTO improvements - fix #15578 (#21679)Mamy Ratsimbazafy2023-04-171-10/+16
|
* fixes #18146; fixes #19372; disable tlsEmulation on windows; static link ↵ringabout2023-04-141-1/+1
| | | | | | | pthreads with mingw (#21668) * fixes #18146; disable tlsEmulation on windows; static link libwinthreads DLL * whatever
* Disable threads for os:any (#21425)Francis Thérien2023-02-241-0/+5
|
* corrects the linkerexe of riscv64 in config (#21292)ringabout2023-02-211-1/+1
|
* Update nim.cfg (#21204)Chavdar Ivanov2023-01-021-2/+1
| | | | | | | | | | | | | | | | tlsEmulation:on under NetBSD-10Beta and NetBSD-current produces an executable which crashes immediately as follows: Core was generated by `koch'. Program terminated with signal SIGSEGV, Segmentation fault. #0 0x000000000047b4c2 in nimZeroMem () (gdb) bt #0 0x000000000047b4c2 in nimZeroMem () #1 0x00000000004897b2 in threadVarAlloc__system_2162 () #2 0x000000000048980e in initThreadVarsEmulation () #3 0x0000000000489848 in PreMain () #4 0x000000000048986a in NimMain () #5 0x00000000004898a9 in main () I can't speak about the other BSDs.
* use `tlsEmulation:off` for freebsd (#20802)ringabout2022-11-101-1/+3
|
* Add no-math-errno for GCC when build for Release (#20503)Juan Carlos2022-10-061-2/+5
| | | | * gcc matherrno * changelog
* add default field support for object in ARC/ORC (#20480)ringabout2022-10-041-0/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * fresh start * add cpp target * add result support * add nimPreviewRangeDefault * reduce * use orc * refactor common parts * add tuple support * add testcase for tuple * cleanup; fixes nimsuggest tests * there is something wrong with cpp * remove * add support for seqs * fixes style * addd initial distinct support * remove links * typo * fixes tuple defaults * add rangedefault * add cpp support * fixes one more bugs * add more hasDefaults * fixes ordinal types * add testcase for #16744 * add testcase for #3608 * fixes docgen * small fix * recursive * fixes * cleanup and remove tuple support * fixes nimsuggest * fixes generics procs * refactor * increases timeout * refactor hasDefault * zero default; disable i386 * add tuples back * fixes bugs * fixes tuple * add more tests * fix one more bug regarding tuples * more tests and cleanup * remove messy distinct types which must be initialized by original types * add tests * fixes zero default * fixes grammar * fixes tests * fixes tests * fixes tests * fixes comments * fixes and add testcase * undo default values for results Co-authored-by: flywind <43030857+xflywind@users.noreply.github.com>
* closed ambiguous enum defaults to first overload (#20457)metagn2022-10-011-0/+4
| | | | | | | | | * closed ambiguous enum defaults to first overload * add warning * turn to hint * work around config
* fixes #19713; Revert "Remove tlsEmulation enabled from Windows + GCC config" ↵ringabout2022-09-191-0/+3
| | | | | | | | | | | | | | | (#19119) (#20327) * Revert "Remove tlsEmulation enabled from Windows + GCC config (#19119) [backport:1.6]" This reverts commit 77b696c2c92b5f478526290c5e184a4c41060f7b. * increase nimTlsSize to 48000 * enable for windows * fixes tests * fixes tlsEmulation:on
* remove the old nimv019 define in the config (#20133)ringabout2022-09-011-6/+0
| | | remove the olf nimv019 define in the config
* default threads on (#19368)flywind2022-07-061-0/+2
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * default threads on * make rst gcsafe * ignore threads option for nimscript * threads off * use createShared for threads * test without threads * avr threds off * avr threads off * async threads off * threads off * fix ci * restore option * make CI pleased * fix ic tests * Update config.nims * add changelog * Update changelog.md Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com> Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com>
* Add compilers and hints to default nim.cfg (#18424)Federico Ceratto2022-02-071-2/+13
|
* let Nim support Nimble 0.14 with lock-file support [backport:1.6] (#19236)Andreas Rumpf2021-12-101-0/+2
|
* Remove tlsEmulation enabled from Windows + GCC config (#19119) [backport:1.6]Ryan Oldenburg2021-11-111-3/+0
| | | This flag has a very significant performance impact on programs compiled with --threads:on. It is also apparently not needed anymore for standard circumstances. Can we remove the config? See https://github.com/nim-lang/Nim/issues/18146#issuecomment-876802676 for discussion and perf impact. [backport:1.6]
* [backport] use old style hints in .cfg files (#18917)Miran2021-09-291-2/+2
| | | refs #18085
* change `--hint[X] => --hint:X` in nim repo (avoids shell quoting issues) ↵Timothee Cour2021-05-261-2/+2
| | | | (#18085)
* config system: special case -d:release and -d:danger [backport:1.4] (#18051)Andreas Rumpf2021-05-201-0/+2
|
* Genode platform fixes (#17521)Emery Hemingway2021-04-091-24/+1
| | | | | | | | | | | | | | | | | | | * Genode: move dyncall failures to runtime Do not use the "error" pragma to warn that dynamic library loading is not implemented, print a message at runtime and exit. * Genode: use stricter dataspace type in page allocator * Genode: remove compiler configuration from nim.cfg Self-hosting Nim is not supported on Genode and defining the cross-compilation environment can be done externally. * Genode: use new mutex API * Genode: call nim_component_construct as a C procedure * Genode: implement echo for NimStringV2
* remove deprecated config (#17269)flywind2021-03-051-2/+0
|
* remove all uses of condsyms symbols defined prior to bootstrap nim 0.20.0 ↵Timothee Cour2021-02-171-10/+6
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | (#16918) * nimNoArrayToCstringConversion deadcode * nimbabel deadcode * nimHasalignOf deadcode * nimvarargstyped deadcode * nimhygiene deadcode * nimNewTypedesc deadcode * nimlocks deadcode * nimHasCppDefine deadcode * nimHasRunnableExamples deadcode * nimHasNilChecks deadcode * nimSymKind deadcode * minor macros refactoring * nimVmEqIdent deadcode * nimNoNil deadcode * nimNoZeroTerminator deadcode * nimHasSymOwnerInMacro deadcode * nimVmExportFixed deadcode * nimNewRuntime deadcode * nimAshr deadcode * nimUncheckedArrayTyp deadcode * nimHasTypeof deadcode * nimErrorProcCanHaveBody deadcode * nimHasHotCodeReloading deadcode * nimHasSignatureHashInMacro deadcode * nimHasDefault deadcode * nimMacrosSizealignof deadcode
* fix #16752: threadvar now works with importcpp types; osx now uses native ↵Timothee Cour2021-01-271-3/+5
| | | | | | | | | | | TLS (`--tlsEmulation:off`), which can be orders of magnitude faster (#16750) * osx now uses native TLS, which can be orders of magnitude faster * add {.cppNonPod.} * improve test * changelog, docs, disable part of windows test
* fix config/nim.cfg: `@if not bsd or haiku:` was buggy (#16748)Timothee Cour2021-01-191-10/+8
|
* Change clibdir and cincludes for NetBSD (#15102)Euan2020-07-281-1/+9
|
* Limit number of error messages from gcc/clang backend (#14852)Tomohiro2020-07-071-7/+9
| | | | | | | * Limit number of error messages from backend * Avoid duplication of -fmax-errors * make tests/misc/trunner.nim success
* Clean out oldast (#14837)Juan Carlos2020-06-301-1/+0
| | | | * Clean out old Deprecated CLI switch * Update to remove --oldast CLI option
* Set cincludes and clibdir for FreeBSD, OpenBSD and NetBSD. (#14680)Euan2020-06-161-0/+3
|
* vcc fix (#14222)cooldome2020-05-041-4/+4
| | | Co-authored-by: cooldome <ariabushenko@bk.ru>
* Add LTO support for most compilers and do some VCC fixes (#14013)Keithcat12020-04-221-3/+33
| | | | | | | | | * 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
* #12103 - CI for OpenBSD (#12105)Euan2020-04-211-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * 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.
* use nimEmulateOverflowChecks for ARM/ARM64Araq2020-03-241-0/+4
|
* [backport] -d:danger should imply -d:release (#13336)Miran2020-02-051-0/+1
|
* Fix #10717, fix #13284 (#13307)genotrance2020-02-041-4/+17
|
* Substitute $nimbleDir in --path flags (#12750)genotrance2019-11-281-1/+1
|
* Add /nologo option when nim call cl.exe (#12524)Tomohiro2019-10-271-2/+3
|
* Fix vcc linker option name (#12422)Tomohiro2019-10-181-1/+2
|
* Add no-ident for GCC when -d:release (#12454)Juan Carlos2019-10-181-4/+4
|
* nim.cfg: disable excessiveStackTrace on release (#11575)alaviss2019-06-251-0/+1
|
* make fullpaths the default in error messages and stack traces for mor… ↵Andreas Rumpf2019-06-051-7/+16
| | | | | | | | | | | | (#11385) * make fullpaths the default in error messages and stack traces for more convenient development * split up -d:release into -d:release and -d:danger flags * workaround a Nim config parser bug * fixes an old nim config parser bug * make megatest green again * make nimpretty tests work again * make nimsuggest green
* Genode compiler configuration for arm64 and riscv64 (#11389)ehmry2019-06-031-1/+8
| | | Add compiler for arm64 and riscv64, remove path to compiler binaries.
* switch should be nimOldShiftRight with the nim prefixAraq2019-05-291-1/+1
|