| Commit message (Collapse) | Author | Age | Files | Lines |
|
|
|
|
| |
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
|
|
|
|
|
|
|
|
|
| |
* Fix example code in system.nim
* Add example code to lib/system.nim
* Fix compile error
* Fix example code that can be unsafe
|
|
|
|
|
|
|
| |
This fixes a regression introduced in #20990 . When a group referencing
is used and one of the overloaded symbols is in `include`d file, then
`nim doc` crashes. The fix is in distinguishing (the index of) module
and file where the symbol is defined, and using only module as the
key in hash table for group referencing.
|
|
|
|
|
|
|
|
|
| |
* 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
|
| |
|
|
|
|
|
| |
overview (#21580)
Remove a lot of "This module x" and reword some entries
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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
|
|
|
| |
remove seq[T] setLen UB
|
| |
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
* 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
|
|
|
|
|
| |
Mention Source Code Filters in `String handling`
...as a viable solution for templating
|
|
|
|
|
| |
* fixes #20993 [backport:1.6]
* proper line endings for the test file
|
|
|
| |
was breaking macos CI
|
|
|
|
|
| |
Revert "Add `cursor` to lists iterator variables (#21527)"
This reverts commit 3936071772d648f98c36e5aad16a341b86344e6c.
|
|
|
|
|
| |
types) (#21511)
hacky attempt to reconcile default explicit constructors with enforcement of brace initialization, instead of memsetting imported objects to 0
|
|
|
| |
* followup #21507
|
|
|
| |
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`
|
|
|
|
|
| |
(#21462)
mitigates #21272; but it's not the final fix because the first round of overload resolution should already match
|
|
|
| |
Fix infinite recursion introduced in 7031ea6
|
|
|
| |
fixes manual
|
|
|
|
|
| |
Related to CVE-2021-41259
https://github.com/nim-lang/security/security/advisories/GHSA-3gg2-rw3q-qwgc
https://github.com/nim-lang/Nim/pull/19128#issuecomment-1181944367
|
|
|
|
|
|
|
| |
`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.
|
|
|
|
| |
- `nimble` will build `nim` using `bin/nim` and if it is already present we can
reuse it.
|
|
|
|
|
|
|
|
|
|
|
| |
* fix nimMAxHeap checks
* move check to alloc pages
* remove debug trace
* Fix bad indentation
How the hell did that pass through CI ?
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
|
| |
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
|
|
|
|
|
| |
NuttX has standard posix_spawn interface, and can be used with it.
* https://nuttx.apache.org/docs/12.0.0/reference/user/01_task_control.html#c.posix_spawn
|
|
|
| |
NuttX supports accept4 since https://github.com/apache/nuttx/commit/48c9d1033659603663f6e35587cf27045a130e0d
|
|
|
|
|
|
|
|
|
| |
* Fix custom objects, fix handling of nil variables
* Rename because lldb complains about dashes in filename
* Add example of how to use custom type formatting from Nim
* Add synthetic objects with dynamic fields and add an example
|
| |
|
|
|
|
|
|
|
| |
* 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"
|
| |
|
|
|
|
|
| |
* Optimize `cgen.addIndent`
* Avoid temporaries
|
|
|
|
|
| |
Add `cursor` annotations to iterator variables
* See https://nim-lang.github.io/Nim/destructors.html#the-cursor-pragma
|
| |
|
|
|
|
|
| |
* fixes #21496; Ambiguous calls compiles when module name are equal
* add a test case
|
|
|
| |
since https://github.com/nim-lang/Nim/pull/15105
|
| |
|
|
|
|
|
|
|
|
|
|
|
| |
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
|