| Commit message (Collapse) | Author | Age | Files | Lines |
... | |
|
|
| |
test removing useVersion
|
|
|
| |
A for expression now can have a generated iterator, allowing for more composable iterables
|
|
|
|
|
|
|
| |
generics (#21619)
* fixes #21617; createTypeBoundOps with PContext in order to instantiate generics
* keep idgen
|
| |
|
|
|
| |
closes https://github.com/nim-lang/RFCs/issues/480
|
|
|
|
|
| |
refc and ORC [backport] (#21611)
fix #20972 fixes invalid and UB codegen case object transitions for refc and ORC
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* std/bitops: Add explicit type masking for the JS target
Typecasts on the JavaScript backend do not function the same way as they
do on C and C++ backends, so for bitwise operations we may need to mask them
back down into their allowed range when they get shifted outside it.
Since they do work as expected on the other backends, a default bitmask
of all 1's is casted down into the target type as an easily optimizable
"& 0xFF" operation for these backends.
* Fixup: this should still be a func
* Run test case on js target
* Adapt testcase to contributor guide and best practices
* Simplify constrain logic and turn into actual no-op for the C side
|
|
|
|
|
|
|
|
|
| |
* Extend intVal range to nnkUInt64Lit
Fixes #21593
* Properly cast intVal as unsigned
* Add testcase for #21593
|
|
|
|
|
|
|
| |
dispatcher for ORC (#21594)
* fixes #21592; create type operations for the method dispatcher
* add a test case
|
|
|
|
|
| |
* make --exceptions:quirky work with C++
* make tests green again
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
* document general use of `_`, error message, fixes
fixes #20687, fixes #21435
Documentation and changelog updated to clarify new universal behavior
of `_`. Also new error message for attempting to use `_`, new tests,
and fixes with overloadable symbols and
implicit generics.
* add test for #21435
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* tuple unpacking for vars as just sugar, allowing nesting
* set temp symbol AST
* hopeful fix some issues, add test for #19364
* always use temp for consts
* document, fix small issue
* fix manual indentation
* actually fix manual
* use helper proc
* don't resem temp tuple assignment
|
|
|
|
|
| |
* fixes #20993 [backport:1.6]
* proper line endings for the test file
|
|
|
| |
was breaking macos CI
|
|
|
|
|
| |
types) (#21511)
hacky attempt to reconcile default explicit constructors with enforcement of brace initialization, instead of memsetting imported objects to 0
|
|
|
| |
fixes #14255; Crash in compiler when using system.any by accident.
|
|
|
|
|
|
|
|
|
| |
wrongly in generics (#21554)
* fixes #3770; templates with untyped parameters resolve private fields wrongly
* add a test case for #3770
* rename to `nfSkipFieldChecking`
|
|
|
|
|
|
|
| |
`len` could contain side effects and may result in different values when
substituted twice in the template expansion. Instead, capture the result
of substituting `len` once.
closes: #21538
|
|
|
|
| |
to text and text= procs. Remove unnecessary LF for xnVerbatimText
in $ proc.
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
converter (#21533)
* Add a test case
There are way more test cases (See all branches of analyseIfAddressTaken but this covers at least a second branch
* Port analyseIfAddressTaken from semexprs to sigmatch
This was done since we cannot import sem or semexprs (circular import) but we need the rest of the logic. In needs to be done here since the converter isn't semmed afterwards and so we can't just leave the process til later use the version from semexprs
* Less hacky solution which has the checking be done in analyseIfAddressTakenInCall
This was done instead of the recommendation on removing it since sfAddrTaken is used in places other than the backend
* Remove weird whitespace
* Still check nkHiddenAddr if we are checking a converter
|
| |
|
|
|
|
|
|
|
| |
* add a prepass for codeReordering
* simplify
* fixes
|
|
|
|
|
|
|
|
|
|
|
| |
* fix #18977 disallow change branch of an object variant in ORC
* check errors for goto exception
* fixes conditions
* fixes tests
* add a test case for #18977
|
|
|
| |
fixes #19857; Exception raised in closure may be "skipped"
|
| |
|
|
|
|
|
| |
* fixes #21496; Ambiguous calls compiles when module name are equal
* add a test case
|
|
|
|
|
|
|
|
|
|
|
| |
introducing new local vars [backport: 1.6] (#21489)
* fixes #21306; don't transform yields in the var section when introducing new local vars
* adds `inVarSection` so the var section in the var section is freshed
* use `isIntroducingNewLocalVars` to avoid yield transformations in var sections
* fixes comments
|
|
|
|
|
|
|
|
|
| |
* fixes #21023; Segfault when mixing seqs, orc, variants and futures
* fixes none of the branches were explicitly selected
* add one more test
* one more test
|
| |
|
| |
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(#21475)
* fixes `@[]` type inference in generics
* add issue links
* fixes macros and iterators
* refactor
* add one more test
|
| |
|
| |
|
|
|
|
|
| |
* fixes #21461; Move nim-gdb.py and add nim-lldb.py
* fixes bad path for nim-gdb.py
|
|
|
|
|
|
|
| |
* Add test case
* Fixes 21447: Keeps stackTrace around when using futureLogging
* Remove extra whitespace
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
(#21274) [backport:1.6]
* fixes #20139; hash types based on its path relative its project
* add a test case
* fixes procs
* better implementation and test case
---------
Co-authored-by: Andreas Rumpf <rumpf_a@web.de>
|
|
|
|
|
| |
(#21459)
fixes #20422; emit nimPrepareStrMutationV2 for toOpenArray to keep the abstraction of mutable strings which have immutable string literals
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* fixes #19291; implements `wasMoved` hook
* basics
* checkpoint
* finish `wasMoved`
* add a test for #19291
* add documentation and changelog
* work `attachedWasMoved` with generics
* fixes optimizer
* register `=wasMoved`
* handle wasMoved magcis
* check another round
* some patches
* try `op == nil`
* nicer
* generate `wasMoved` before `destroy`
* try again
* fixes tests
* default wasMoved
* Update tests/destructor/tv2_cast.nim
* Update tests/destructor/tv2_cast.nim
* Update tests/arc/topt_refcursors.nim
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
`getAst` uses type info to annotate the type of quoted variables; no more type erasures for quoted variables (#21433)
* fixes #21326; getAst uses type info to annotateType quoted variables
* simplify logics; sem types first
* fixes important packages
* add testcases
* tiny
|
| |
|
|
|
|
|
| |
* tests/assert/tassert_c.nim: explicitly enable stack traces
* tests/errmsgs: explicitly enable stack traces
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
global variables with null values in VM (#21351)
* fixes #10938; always initialize global variable in VM
* fixes importc vars
* there is a pre-existing issue regarding closure types in the VM
* add tests
|
|
|
|
|
| |
* fixes #21439; Add tyOpenArray to genTypeInfo.
* Add test.
|
| |
|
| |
|
|
|
|
|
|
|
|
|
| |
* fixes #21393 and misc style changes
* progress
---------
Co-authored-by: ringabout <43030857+ringabout@users.noreply.github.com>
|