summary refs log tree commit diff stats
path: root/compiler/semcall.nim
Commit message (Collapse)AuthorAgeFilesLines
* fixes #14562Araq2020-06-051-1/+4
|
* Make ./koch temp --gc:arc work (#14186)Clyybber2020-05-011-1/+1
|
* changed type() to typeof() in docs and error messages (#14084)hlaaftana2020-04-241-1/+1
|
* DrNim (Nim compiler with Z3 integration) (#13743)Andreas Rumpf2020-03-311-3/+5
| | | | | | | | | | | | | | | | | | | | | | | | * code cleanups and feature additions * added basic test and koch/CI integration * make it build on Unix * DrNim: now buildable on Unix, only takes 10 minutes, enjoy * added basic documentation for DrNim which can also be seen as the RFC we're following * drnim: change the build setup so that drnim.exe ends up in bin/ * makes simple floating point ranges work * added basic float range check * drnim: teach Z3 about Nim's range types plus code refactoring * drnim: make unsigned numbers work * added and fixed index checking under setLen * first implementation of .ensures, .invariant and .assume (.requires still missing and so is proc type compatibility checking * drnim: .requires checking implemented * drnim: implemented .ensures properly * more impressive test involving min() * drnim: check for proc type compatibility and base method compatibility wrt .requires and .ensures * testament: support for 'pattern <directory> * koch: uses new <directory> feature of testament * drnim: added tiny musings about 'old' * Make testament work with old SSL versions * koch: add support for 'koch drnim -d:release' * drnim: preparations for the param.old notation
* better error messages for Nim's effect systemAraq2020-03-221-0/+17
|
* fix #13538 sigmatch errors are now sorted (#13701)Timothee Cour2020-03-201-0/+7
| | | | | | | * fix #13538 sigmatch now sorted and has reliable order * re-enable tests that were disabled because of that bug * fix remaining tests and un-disable 2 other tests that were affected by this bug
* fix `is` with generic types; fix `genericHead(Foo[T])` (#13303)Timothee Cour2020-02-091-4/+0
| | | | | * fix #9855, fix #9855, fix genericHead * render TTypeKind via toHumanStr
* fixes #12148 [backport] (#12888)Andreas Rumpf2019-12-121-1/+1
|
* Cosmetic compiler cleanup (#12718)Clyybber2019-11-281-59/+56
| | | | | | | | | | | | | | | | | | * Cleanup compiler code base * Unify add calls * Unify len invocations * Unify range operators * Fix oversight * Remove {.procvar.} pragma * initCandidate -> newCandidate where reasonable * Unify safeLen calls
* [backport] Fix spelling typos (#12755)Brian Wignall2019-11-281-1/+1
|
* compiler/semcall: return the correct lineinfo for nkCallStrLit (#12484)alaviss2019-10-241-1/+2
|
* Fix spellings (#12277) [backport]Federico Ceratto2019-09-271-1/+1
|
* Small ast.nim cleanup (#12156)Clyybber2019-09-091-3/+3
| | | | | * Remove sonsLen * Use Indexable
* fixes #12024 (#12065)Andreas Rumpf2019-08-271-0/+8
|
* fixes #11942 (#11945)Arne Döring2019-08-141-1/+1
|
* [refactoring] compiler: simplified markUsedAndreas Rumpf2019-08-081-2/+2
|
* fix crash on sigmatch (#11913)Timothee Cour2019-08-081-0/+1
|
* revert changesAndrii Riabushenko2019-07-251-1/+1
|
* fixes #11826Andrii Riabushenko2019-07-251-1/+1
|
* fixes a 'nim check' regressionAraq2019-07-191-1/+1
|
* Merge branch 'devel' into araq-detect-unused-importsAndreas Rumpf2019-07-181-31/+31
|\
| * fix #8305 #7808 #10285 #11061 + other bugs with type mismatch error msgsTimothee Cour2019-07-081-31/+31
| |
* | [feature] detect unused importsAraq2019-07-171-2/+2
|/
* Replace countup(x, y-1) with x ..< yClyybber2019-05-071-3/+3
|
* fixes #10934Araq2019-03-311-0/+1
|
* Merge branch 'devel' into araq-quirky-exceptionsAndreas Rumpf2019-02-081-12/+31
|\
| * compiler: don't use 2 spaces in an error messageAraq2019-02-041-1/+1
| |
| * semcall: correct lineinfo for accquoted symbols (#10461)alaviss2019-01-271-1/+1
| |
| * compiler/sem*: improve lineinfo for qualified and generic procs (#10427)alaviss2019-01-231-10/+18
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | Previously the compiler will believe these are where `newSeq` symbol starts: newSeq[int]() ^ system.newSeq[int]() ^ This commit moves them back to: newSeq[int]() ^ system.newSeq[int]() ^
| * fix leftover comment from #9766Timothee Cour2019-01-081-7/+5
| |
| * [error messages, stacktraces] fix #8794 #9270 #9767 #9768 (#9766)Timothee Cour2019-01-081-1/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * fixes #8794 : `Error: undeclared field: 'foo'` should show type (+ where type is defined) (hard to guess in generic code) * fixes #9270: `--listFullPaths` not honored by `declared in foo.nim` messages * fixes #9767: VM stacktrace doesn't honor --excessiveStackTrace:on * fixes #9768: VM stacktrace misses column info, can lead to ambiguous or harder to read stacktraces * refactors some col+1 code to col + ColOffset (self documents code) * make getProcHeader show declared info location also for types and all routine kinds (including macros,templates) instead of just (rather arbitrarily) for iterator,proc,func,method * --listFullPaths now is honored in more places * fix typo system/except.nim => lib/system/excpt.nim * remove substr(foo, 0) hack in compiler/vm.nim which seems old and not applicable anymore
* | --define:nimQuirky exception handling for Nim; in preparation of a blog postAndreas Rumpf2019-01-031-0/+1
|/
* Converter bug fixes (#9700)cooldome2018-11-151-0/+2
| | | | | * Fixes #9698 * Fixes #9699
* added first version of a nimfind tool for the poor souls that don't have a ↵Andreas Rumpf2018-11-141-2/+2
| | | | good nimsuggest integretation
* feedback injectedArne Döring2018-11-081-1/+2
|
* fix #9319Arne Döring2018-11-081-0/+2
|
* produce more helpful error messages when overloading resolution failsAndreas Rumpf2018-11-031-8/+12
|
* replace deprecated `safeAdd` with `add` (#9416)Miran2018-10-181-1/+1
|
* fixes #8671; show helpful msg (lookup symbol, eg iterator) on 'attempting to ↵Timothee Cour2018-10-141-5/+27
| | | | call undeclared routine' error (#8786)
* Fix overload resolution for pragmas evaluation (#8902)LemonBoy2018-10-091-6/+7
| | | | Fixes #6448 Fixes #4384
* fixes #8043Araq2018-09-031-4/+7
|
* 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
* improve error messages by filtering out highly unlikely mismatchesAndreas Rumpf2018-08-241-0/+10
|
* 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
* WIP: disallow 'nil' for strings and seqsAndreas Rumpf2018-08-131-3/+3
|
* Try conversion to static[T] in generic instantation (#8443)LemonBoy2018-07-301-1/+9
| | | Fixes #8439
* allow referencing other parameters in default parameter valuesZahary Karadjov2018-06-161-1/+3
| | | | | | | | fix #7756 fix #1201 fix #7000 fix #3002 fix #1046
* fixes #7222; fixes #5595; fixes #3747Zahary Karadjov2018-06-161-4/+19
| | | | | | | | | | * late instantiation for the generic procs' default param values * automatic mixin behaviour in concepts Other fixes: * don't render the automatically inserted default params in calls * better rendering of tyFromExpr
* refactoring: remove idents.legacy global variable and pass the IdentCache ↵Andreas Rumpf2018-05-271-5/+5
| | | | around explicitly