| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
|
|
|
|
|
| |
* Assignments, which would accidentally create global
variables, instead throw an error in strict mode
* Assignment to a getter-only property
Co-authored-by: Sven Keller <s.keller@cortona.de>
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* fixes #17369
* megatest is green for --cpu:arm64
* docgen output includes more tags/raises
* implemented 'effectsOf'
* algorithm.nim: uses new effectsOf annotation
* closes #18376
* closes #17475
* closes #13905
* allow effectsOf: [a, b]
* added a test case
* parameters that are not ours cannot be declared as .effectsOf
* documentation
* manual: added the 'sort' example
* bootstrap with the new better options
|
|
|
|
|
|
|
|
| |
* improvements to $(SomeInteger) and addInt
* remove mIntToStr, mInt64ToStr
* improvements
* fix tests/pragmas/tinjectstmt.nim; the diff is harmless, cgen code is identical with -d:danger or debug mode
* rm tests/system/tstrmantle.nim
* revert compiler/jsgen.nim for -d:nimVersion140
|
|
|
|
|
| |
* fix #18702
* Apply suggestions from code review
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
lineinfo, in all backends (c,vm,js) (#11955)
* fix #10053 FieldError for vm
* fixup
* FieldError now also shows runtime value of discriminant
* fix field error reporting in vm
* also report culprit line info in err msg
* fix errors for newruntime 2
* fix for js
* fixup
* PRTEMP4
* works
* works
* works perfect
* refactor
* std/private/repr_impl
* suppport --gc:arc
* cleanup
* refactor
* simplify
* simplify
* simplify
* fixup
* move out compiler.vmgen.genCustom
* fixup
* fixup
* add tests
* revert compiler/debugutils.nim
* simplify reprDiscriminant
* fixup
* lib/std/private/repr_impl.nim -> lib/system/repr_impl.nim
* try to fix D20210812T165220
* honor --declaredlocs
* control toFileLineCol via --declaredlocs
|
|
|
|
|
|
|
|
|
| |
* Fix and improve Nintendo Switch support
* Document the necessity for nimAllocPagesViaMalloc
* update changelog
* Use --gc:orc in examples
|
|
|
|
|
|
| |
* Add optional recursive arg to distinctBase
* Add docs and examples
Co-authored-by: ALANVF <alan.invents@gmail.com>
|
|
|
|
| |
to avoid confusion with unrelated std/vmutils (#18660)
|
| |
|
|
|
|
|
| |
* fix #18620
* add testcase
|
| |
|
| |
|
| |
|
|
|
|
|
| |
* fixes #18550
* update the manual to reflect reality
|
|
|
|
|
|
| |
* compiler/vmhooks: add getVar to allow vmops with var params
* addFloat vmops with var param
* cgen now renders float32 literals in c backend using roundtrip float to string
|
| |
|
|
|
|
|
|
|
| |
* make dragonbox opt-in via -d:nimFpRoundtrips
* make tests green again
* make tests green again
|
|
|
|
|
| |
* added switch
* alloc.nim needs page aligned memory blocks
|
|
|
| |
This reverts commit 23d23ecb081be6702d74024be8f96d92d9f88a59.
|
|
|
|
|
|
| |
* ORC refactoring in preparation for further changes (=dispose must die)
* ORC: embrace =destroy, avoid =dispose
* ORC: no need for =dispose
* closes #18421
|
| |
|
|
|
|
| |
identifier` nimrtl error (#18406)
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* Simplify addInt, remove digits10
Co-authored-by: Charles Blake <charlechaud@gmail.com>
* Fix bootstrapping
* Add noInit to tmp array
* noInit -> noinit
Co-authored-by: Charles Blake <charlechaud@gmail.com>
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
XDeclaredButNotUsed, etc; fix #17511, #17510, #14246 (without realModule) (#18362)
* {.used: symbol}
* add tests
* fix tests with --import
* --import works without giving spurious unused warnings
* new warning warnDuplicateModuleImport for `import foo; import foo`
* fix test, add resolveModuleAlias, use proper line info for module aliases
* fix spurious warnings
* fix deprecation msg for deprecated modules even with `import foo as bar`
* disable a test for i386 pending sorting XDeclaredButNotUsed errors
* UnusedImport now works with re-exported symbols
* fix typo [skip ci]
* ic support
* add genPNode to allow writing PNode-based compiler code similarly to `genAst`
* fix DuplicateModuleImport warning
* adjust test
* fixup
* fixup
* fixup
* fix after rebase
* fix for IC
* keep the proc inline, move the const out
* [skip ci] fix changelog
* experiment: remove calls to resolveModuleAlias
* followup
* fixup
* fix tests/modules/tselfimport.nim
* workaround tests/deprecated/tmodule1.nim
* fix properly
* simplify
|
| |
|
| |
|
|
|
| |
Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com>
|
|
|
|
|
| |
* move {.injectStmt.} to experimental; add a test
* undocument and deprecat `.injectStmt` but keep its implementation until we have a replacement
|
|
|
|
|
| |
(#18265)
This reverts commit 0adb47aa15e242983c8251d85367c0fe45fc5f12.
|
|
|
|
|
|
|
|
|
|
| |
In CPS we would consume an exception in the except branch by stashing it
into a local then remove the exception from Nim environment so as not to
leak it to other code that would be running before the continuation
continues
However since popCurrentException() assumes that the exception always
exist, removing the exception from an except branch will cause a
SIGSEGV to happen. This commit fixes that.
|
|
|
|
|
|
|
| |
* refs #7717 roundtrip float to string
* make parseFloat more correct
* improve float tests
* improve float tests
* cleanup
|
| |
|
| |
|
|
|
|
|
| |
* added float32 schubfach algorithm; wip
* fixes #18418
|
|
|
|
| |
nested templates (#18082)
|
|
|
|
|
| |
* use dragonbox algorithm; alternative to #18008
* removed unsafe code
|
|
|
|
|
|
|
|
|
|
|
| |
* [std/re] make interface consistent
* tiny
* revert
* close #18129 add setCurrentException
* changelog entry
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
[backport:1.2]
Copying StackTraceEntry instances when nimStackTraceOverride is defined
breaks the link between a cstring field that's supposed to point at
another string field in the same object.
Sometimes, the original object is garbage collected, that memory region
reused for storing other strings, so when the StackTraceEntry copy tries
to use its cstring pointer to construct a traceback message, it accesses
unrelated strings.
This only happens for async tracebacks and this patch prevents that by
making sure we only use the string fields when nimStackTraceOverride is
defined.
Async tracebacks also beautified slightly by getting rid of an extra line
that was supposed to be commented out, along with the corresponding debugging output.
There's also a micro-optimisation to avoid concatenating two strings just
to get their combined length.
|
|
|
|
| |
* ARC: fixes memory leaks with newSeq used in a loop [backport:1.4]
* Update tests/arc/tnewseq_legacy.nim
|
|
|
|
|
| |
(#17944)" (#17992)
This reverts commit 98c29c01eb91a0c6ce7da09380a272eebe6bca6f.
|
|
|
|
|
|
|
|
|
| |
* ORC: progress
* ORC: bugfix; don't follow acyclic data even if only at runtime the subtype is marked as acyclic
* progress
* minor style changes
|
|
|
|
|
|
|
| |
generic (#17942)
* fix #17941: UnusedImport works for var/let/const/type invoked inside a generic
* fixup
|
|
|
|
|
|
|
| |
* fix #14873 properly by skipping `abi` field in importc type
* add test
* fix test for windows
|
| |
|
| |
|
| |
|
|
|
|
|
|
| |
(#17909)
* system.nim cleanup some exported constants which should never have been exported
|