summary refs log tree commit diff stats
path: root/compiler
Commit message (Collapse)AuthorAgeFilesLines
* fixes #4766Araq2018-08-281-1/+2
|
* Fix nkImportAs regression (#8796)Oscar Nihlgård2018-08-281-9/+14
|
* show all mismatching overloads againAraq2018-08-271-9/+11
|
* improve the error message for mutability problems that arise from implicit ↵Araq2018-08-271-1/+3
| | | | converter calls
* fixes #8776Araq2018-08-271-10/+11
|
* allow .experimental in a .push/pop environment; refs #8676Araq2018-08-272-17/+23
|
* optimize away genericReset for result assignment; refs #8745Araq2018-08-271-3/+112
|
* fixes #8781 by appending "_U" instead of 'U' (#8787)Vindaar2018-08-271-1/+3
|
* More checks for custom pragmas placement (#8765)LemonBoy2018-08-251-3/+6
| | | | We're not interested in custom pragmas attached to certain node kinds so the compiler silently ignored them.
* fixes #8739; allow --hint:foo:on --warning:bar:off (#8757)Timothee Cour2018-08-252-8/+17
|
* fixes 8754 (#8755)cooldome2018-08-241-0/+8
| | | | | | * fixes 8754 * improve test
* Validate pragmas attached to for variables (#8749)LemonBoy2018-08-242-0/+3
| | | Fixes #8741
* improve error messages by filtering out highly unlikely mismatchesAndreas Rumpf2018-08-241-0/+10
|
* enforce the condition of a 'when' condition to be of type bool; refs #8603Andreas Rumpf2018-08-231-1/+1
|
* add nimHasWarningX and nimHasHintX defines for feature detection purposesAndreas Rumpf2018-08-231-0/+6
|
* make nimsuggest compile againAndreas Rumpf2018-08-231-1/+1
|
* fixes merge conflictAraq2018-08-2316-61/+104
|\
| * Fix for module alias inside brackets (#8726)Oscar Nihlgård2018-08-232-14/+19
| |
| * partially fix #8218: nim doc --project (#8737)Timothee Cour2018-08-231-4/+3
| |
| * better formatting for recursive module dependency (#8735)Timothee Cour2018-08-231-1/+1
| |
| * Fix abs & unary sub in semfold (#8724)Oscar Nihlgård2018-08-221-2/+6
| |
| * Pick skParam symbols when resolving type idents (#8720)LemonBoy2018-08-221-1/+1
| | | | | | Fixes #8357
| * fixes 8594 (#8721)cooldome2018-08-221-2/+2
| |
| * Don't consider tyAnd/tyNot/tyOr/tyAnything as generic (#8700)LemonBoy2018-08-222-17/+34
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Don't consider tyAnd/tyNot/tyOr/tyAnything as generic `containsGenericType` was too shallow and didn't check all the branches. The resulting half-processed nodes are often simplified by the constant folding pass but when that's not possible we get a nasty error during codegen. Fixes #8693 * Move the blame onto the semFold pass Slightly better evaluation of `is` forms.
| * Cosmetic: fix typo on TRIPLESTR_LIT (#8663)Iván Montes2018-08-212-2/+2
| |
| * Fix #8126 (#8712)zah2018-08-213-2/+4
| | | | | | | | | | | | This is a temporary fix that will be reworked in a follow up commit that aims to eliminate the tfExplicit flag from the compiler. The complete and proper fix was considered too risky for inclusion just before our 0.19 release.
| * More robust handling of deprecated pragmas (#8696)LemonBoy2018-08-212-9/+24
| | | | | | | | | | | | Prevent `deprecated` annotations to "slip" up to the parent module and warn about unsupported annotations. Accidentally fixes #7867
| * sfForward is also sfReorder for skModule symbols (#8692)LemonBoy2018-08-211-1/+1
| | | | | | | | | | Take this into account while searching for undefined forward references. Fixes #8665
| * Update all the default parameters after an instantiation (#8689)LemonBoy2018-08-201-6/+5
| | | | | | | | | | | | The old implementation relied on the (now?) wrong assumption that default-valued parameters can only be placed after the required ones. Fixes #8683
| * exploit nil seqs for performance (#8688)Andreas Rumpf2018-08-202-8/+15
| | | | | | | | | | * changes $ for seqs to never produce 'nil' * exploit the fact that empty seqs don't have to allocate in the code generator
| * Expand tyAlias in typeToString (#8634)LemonBoy2018-08-181-0/+2
| | | | | | Fixes #8339
* | even more strict isNil handling for strings/seqs in order to detect bugsAraq2018-08-2216-71/+66
| |
* | make tests green againAraq2018-08-211-1/+1
| |
* | some progress on destructors for builtin seqsAndreas Rumpf2018-08-202-2/+6
| |
* | fixes merge conflictAndreas Rumpf2018-08-1943-303/+456
|\ \
| * | exploit the fact that empty seqs don't have to allocate in the code generatorAndreas Rumpf2018-08-182-8/+15
| |/
| * every .experimental feature has a corrsponding 'nimHasX' define; fixes ↵Araq2018-08-181-0/+6
| | | | | | | | #8644; refs #8672
| * scriptconfig: register passes once (#8590)alaviss2018-08-171-2/+5
| | | | | | fixes #8235
| * Look for user nim.cfg in "nim/" subdir in usual config dir locations (#8662)Kaushal Modi2018-08-171-1/+1
| | | | | | Fixes https://github.com/nim-lang/Nim/issues/8661.
| * Fixes 8535 (#8591)LemonBoy2018-08-173-16/+29
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Goodbye postInitProc * Give preInitProc its own scope Avoid any conflict between the variables introduced by preInitProc and initProc since both are codegen'd in the same function body. * Fix codegen for global var init in emulated TLS Fixes #8535 * Add test for #8535 * Keep a bogus stack frame around * Remove more dead code
| * fixes #8653Andreas Rumpf2018-08-161-2/+2
| |
| * Genode fixes (#8501)Emery Hemingway2018-08-161-2/+3
| | | | | | | | | | | | | | | | | | | | | | | | | | * Genode fixes - wrap strings in "Genode::Cstring" when logging - define SIGABRT for Genode - disable GCC -fstack-protector - use log RPC for fatal messages - add --os:genode build to appveyor - define paramStr and paramCount * Select fixups for Genode POSIX
| * Merge branch 'devel' into araq-miscAndreas Rumpf2018-08-164-1/+15
| |\
| | * Allow taking address of skForVar variables (#8632)LemonBoy2018-08-141-1/+1
| | | | | | | | | Fixes #8630
| | * Fix unsound transform pass (#8633)LemonBoy2018-08-143-0/+14
| | | | | | | | | | | | | | | When a `var openArray[T]` function parameter goes trough the `transformAddrDeref` pass we may lose the `var` specifier, leading to nasty crashes at runtime.
| * | implements 'case statement macros' in order to encourage the development of ↵Andreas Rumpf2018-08-162-75/+110
| | | | | | | | | | | | pattern matching mechanisms that are not terrible to look at
| * | put the new for loop macros under an experimental switch named 'forLoopMacros'Andreas Rumpf2018-08-152-4/+7
| | |
| * | implement the --nilseqs switch properlyAndreas Rumpf2018-08-151-0/+1
| | |
| * | changes how the now illegal 'string == nil' comparison is detectedAndreas Rumpf2018-08-153-7/+4
| | |
| * | make tests green againAraq2018-08-131-1/+1
| | |