summary refs log tree commit diff stats
path: root/compiler
Commit message (Collapse)AuthorAgeFilesLines
* Fix subtype conversion w/ varargs arguments (#10402)LemonBoy2019-01-211-2/+3
| | | | | | | | | The type matching is done on the `T` of the `varargs[T]` so the conversion must be performed to `T` and not to the whole type. This problem is only noticeable with the cpp backend since C doesn't give a damn shit about your fucking (wrong) types. Fixes #9845
* Proper check for tyStatic[T] -> U conversions (#10382)LemonBoy2019-01-211-0/+2
| | | | | Drop the outer tyStatic shell then perform the check. Fixes #7609
* Support system.reset in vm (#10400)Oscar Nihlgård2019-01-213-4/+4
|
* Correct lineinfo for accent quoted symbols in proc definition (#10399)alaviss2019-01-212-11/+14
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * compiler/parser: preserve lineinfo for accent quoted symbols Previously the lineinfo for symbol $$$ in this example is: proc `$$$` ^ After this commit: proc `$$$` ^ * compiler/semstmts: correct lineinfo for accent quoted idents Previously nimsuggest would highlight this as: proc `$$$` ^~~ After this commit: proc `$$$` ^~~ * nimsuggest/tests: add a test for accent quoted proc Disabled by default
* Fix error lexer error messages for to large numbers (#10394)Oscar Nihlgård2019-01-211-33/+29
|
* Fix spelling errors (#10379)Federico Ceratto2019-01-191-1/+1
|
* fix #9629 every binary cmd line option allows on/off/empty=on (#10353)Timothee Cour2019-01-181-40/+22
| | | | | | * fix #9629 every binary cmd line option allows on/off/empty=on * workaround refs #10359
* destructors: first step towards fixing #9617 (#10341)cooldome2019-01-184-67/+87
|
* Properly wrap discarded statements (#10322)LemonBoy2019-01-172-12/+16
| | | | | | Failing to do so lead the codegen to emit invalid code sometimes, especially when C++ references were involved. Fixes #10241
* Added support for --genDeps on JS backend (#10320)nepeckman2019-01-151-0/+3
|
* improve vmgen.codeListing formatting (#10306)Timothee Cour2019-01-153-14/+26
| | | | | * improve vmgen.codeListing formatting * address comments
* fix #10305 nim cpp is now nan-correct at CT (#10310)Timothee Cour2019-01-151-4/+4
| | | | | * fix #10305 nim cpp is now nan-correct at CT * add example where simply `nim cpp -d:release` would exhibit nan bug
* fixes #10203 (#10290)Andreas Rumpf2019-01-152-16/+14
| | | | | | * fixes #10203 * make typredef test green again * fixes the regressions differently
* typed/untyped return type is invalid for everything except templates and ↵Neelesh Chandola2019-01-152-5/+5
| | | | macros (#10275)
* fix #9842 #9951: `nim -r` and parseopt.cmdLineRest are now correctTimothee Cour2019-01-141-1/+1
|
* improve formatting in assertEqualsTimothee Cour2019-01-141-7/+8
|
* fixes #7878Araq2019-01-141-1/+1
|
* fixes #7524Araq2019-01-142-9/+13
|
* Add stdin read support to nimscrit #3983 (#10292)genotrance2019-01-141-3/+12
|
* fixes #10075 [backport]Araq2019-01-131-2/+1
|
* fixes #10136Araq2019-01-131-2/+2
|
* fixes #10104Araq2019-01-131-6/+12
|
* improve error messages quality for '.push: raises []'Araq2019-01-131-0/+7
|
* Fixes 10202 (#10283)rec2019-01-121-2/+2
| | | | | | * Add a test case for #10202 * Fix asgn for object tyVars; fixes #10202 * Check the variant kind before accessing the sym field
* docgen: support markdown link syntax; enable markdown extensionsAraq2019-01-111-2/+2
|
* Cleanup comesFromPush logic (#10278)Neelesh Chandola2019-01-111-8/+1
|
* fixes #10216 (#10270)Andreas Rumpf2019-01-111-8/+11
|
* fixes #10240 (#10269)Andreas Rumpf2019-01-111-2/+4
| | | | | | * kochdocs.nim: code cleanup * fixes #10420
* void object fields are now ignored by codegen and fields/fieldPairs iterator ↵Neelesh Chandola2019-01-103-0/+7
| | | | | | | | | (#10144) * Codegen now ignores object fields of type void * Fix `$` bug for objects/tuples where it does not add a comma * fields/fieldPairs iterators now ignore void types * Use `isEmptyType` instead of checking for `tyVoid` directly
* fixes #10251 (#10255)Arne Döring2019-01-101-1/+1
|
* destructors: lift type bound operations for case and distinct objects (#10238)cooldome2019-01-101-5/+41
|
* add `alignTable`, `parseTableCells` to align/format a tab(etc) delimited ↵Timothee Cour2019-01-092-0/+120
| | | | | | | | table (#10182) * add compiler/unittest_light.nim for easy diffing: assertEquals and mismatch * fixup * add alignTable, parseTableCells
* fix leftover comment from #9766Timothee Cour2019-01-081-7/+5
|
* [error messages, stacktraces] fix #8794 #9270 #9767 #9768 (#9766)Timothee Cour2019-01-086-31/+58
| | | | | | | | | | | | | | | | | | | * 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
* {.deprecated: msg.} now works for vars and lets (#10234)Neelesh Chandola2019-01-082-3/+7
|
* Don't use deprecated pragma syntax (#10187)Clyybber2019-01-081-1/+1
| | | | | | * Don't use deprecated pragma syntax * Remove pure pragma, since it's a noop now
* Fix for sizeof bitsize combination (#10227)Arne Döring2019-01-071-3/+8
| | | | | | | | * fix #10082 * added test
* Show error when trying to export individual enum field (#10109)Neelesh Chandola2019-01-071-1/+3
|
* add custom pragma support for var and let symbols (#9582)jcosborn2019-01-075-9/+34
| | | | | | * add custom pragma support for var and let symbols * updated changelog for custom pragmas on var and let symbols * add oldast switch for backwards compatibility
* Fix #10073 (#10218)zah2019-01-071-1/+8
|
* remove deprecated modules (#10215)Miran2019-01-071-28/+0
| | | | | | | | | | | | | | | | | | * removed from `compiler`: * lists (deprecated 2 years ago) * removed from `lib` (all deprecated 3 years ago): * ssl * matchers * httpserver * removed from `lib/deprecated`: * unsigned * actors (and three accompanying tests) * parseurl * moved to `lib/deprecated`: * securehash (the reason for not directly removing - it was deprecated (only) one year ago)
* Fix defer not not-working at top level (#10191)Neelesh Chandola2019-01-072-2/+2
|
* expandFilename on windows is now consistent with other platforms (#10154)Neelesh Chandola2019-01-041-10/+1
|
* fixes #10188Araq2019-01-041-0/+1
|
* runnableExamples: compile and test them as a single file; fixes #9300Araq2019-01-041-2/+10
|
* exportc is now not allowed for type aliases (#9979)Neelesh Chandola2019-01-021-0/+2
|
* [cleanup] remove dead code compiler.options.mergeConfigs (#10165)Timothee Cour2019-01-021-78/+0
|
* Show field not initialized warning only when `notnil` used (#10155)Neelesh Chandola2019-01-011-1/+1
|
* Deprecate gc v2 (#10151)Neelesh Chandola2019-01-0111-20/+20
| | | | | | * Deprecate gc v2 * warnDeprecated now has custom messages
* fixes #10148 (#10149)cooldome2018-12-311-13/+18
| | | | | * fixes #10148 * fix a typo