summary refs log tree commit diff stats
path: root/tests/parser
Commit message (Collapse)AuthorAgeFilesLines
* second test case haul for templates and generics (#22728)metagn2023-09-191-1/+12
| | | | closes #8390, closes #11726, closes #8446, closes #21221, closes #7461, closes #7995
* type annotations for variable tuple unpacking, better error messages (#22611)metagn2023-09-011-0/+17
| | | | | | | | | * type annotations for variable tuple unpacking, better error messages closes #17989, closes https://github.com/nim-lang/RFCs/issues/339 * update grammar * fix test
* some test cleanups & category reorganization (#22010)metagn2023-06-061-0/+30
| | | | | | | | | | | | | | | | | * clean up some test categories * mention exact slice issue * magics into system * move trangechecks into overflow * move tmemory to system * try fix CI * try fix CI * final CI fix
* post expr blocks colon fix + correct grammar (#21983)metagn2023-06-061-0/+8
| | | | | | | | | | | | | | | * post expr blocks colon fix + correct grammar fixes #21982 * fix dochelpers * this is remarkably common * use head for unchained * fix atlas * final grammar fix
* fix #19430 (#21603)metagn2023-04-061-0/+3
|
* tuple unpacking for vars as just sugar, allowing nesting (#21563)metagn2023-03-281-0/+48
| | | | | | | | | | | | | | | | | | | * 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 #19795; fixes #11852; fixes #19974; remove parsing pipeline, Nim now ↵ringabout2023-02-221-20/+9
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | parses the whole module at one time (#21379) * fixes #19795; remove parse pipeline * isScript * fixes nimscriptapi * don't touch reorder * check script * fixes tests * it seems implicit imports of system cause troubles * access the first child of `nkStmtList` * ignore comments * minor messages * perhaps increases hloLoopDetector * the module is a stmtList, which changes the errors * fixes nimdoc * fixes tlinter * fixes nim secret tests * fixes arc_misc * fixes nim secret tests again * safe; fixes one more test * GlobalError is the root cause too * fixes parsing errors * put emit types to the cfsForwardTypes section * fixes #11852; `{.push checks:off}` now works in procs * disable navigator * fixes nimdoc * add tests for JS * fixes nimsuggest
* allow omitting stmts using `finally` as post expr blocks; make it consistent ↵ringabout2023-02-141-0/+11
| | | | | with `else`, `except` etc. (#21361) allow omitting stmts using `finally` as post expr blocks
* fixes #21144; try expression will not match the less indentation except (#21152)ringabout2022-12-211-0/+27
| | | fixes #21144; try expression will not match the less indent except
* fix issue #20922 by handling missing expr in `exprList` for `tkOf` (#20930)Vindaar2022-12-081-0/+46
| | | | | | | | | | | | | | | | | | * fix issue #20922 by handling missing expr in `exprList` for `tkOf` * fix line numbers in test case * rewrite exprList requiring expr, add optionalExprList for except As suggested by @metagn. * update test case to reflect new code * update grammar.txt * update line numbers in test case taking into account nimout Given the number of errors that are produced it seems easier to do it this way instead of using `tt.Error`.
* Named arguments in commands + many grammar fixes (#20994)metagn2022-12-066-0/+80
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * Breaking parser changes, implement https://github.com/nim-lang/RFCs/issues/442 Types are separated from expressions and better reflected in the grammar. * add test * more accurate grammar * fix keyword typedescs * accept expressions in proc argument lists * CI "fixes" * fixes * allow full ref expressions again, adapt old tests * cleanup, fix some tests * improve grammar, try and revert semtypes change * restrict sigil binding to identOrLiteral * fix, should have caught this immediately * add changelog entry, fix double not nil bug * correct grammar * change section * fix * real fix hopefully * fix test * support LL(1) for tuples * make grammar.txt too
* allow proc expressions in place of statements (#20935)metagn2022-11-291-0/+3
| | | properly fixes #18714
* defaults to ORC (#19972)ringabout2022-09-231-0/+4
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * defaults to Orc * bootstrap using refc * use gc * init orc defines * unregister orc * fix gc * fix commands * add prepareMutation for orc * enable deepcopy for orc * prepareMutation * more fixes * some cases * bug #20081 * partial fixes * partial fixes * fixes command line * more fixes * build Nim with refc * use gc * more fixes * rstore * orc doesn't support threadpool * more shallowCopy * more fixes * fixes unsafeNew * workarounds * small * more fixes * fixes some megatest * tcodegenbugs1 refc * fxies megatest * build nimble with refc * workaround tensordsl tests * replace shallowCopy with move * fixes action * workaround * add todo * fixes important packages * unpublic unregisterArcOrc * fixes cpp * enable windows Co-authored-by: xflywind <43030857+xflywind@users.noreply.github.com>
* use arrow precedence in spec (#20166)metagn2022-09-061-0/+7
| | | | | | | * test using arrow precedence in spec refs #8759 * add test for #8759
* new .redefine pragma for templates, warn on redefinition without it (#20211)metagn2022-08-231-1/+1
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * test CI for template redefinitions * adapt asyncmacro * fix quote * fix again * try something else * revert * fix ioselectors_select, disable packages CI * adapt more tests & simplify * more * more * more * rename to redefine, warn on implicit redefinition * basic documentation [skip ci] * Update compiler/lineinfos.nim Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com> Co-authored-by: konsumlamm <44230978+konsumlamm@users.noreply.github.com>
* fixes #19662; Indent level errored for first line (#19718)flywind2022-04-251-0/+6
|
* Allow full commands and blocks in type sections (#19181)hlaaftana2022-01-025-0/+368
| | | | | | | * allow full commands and blocks in type sections * update grammar * fix changelog [skip ci] * more tests * even more tests
* treat do with pragmas but no parens as proc (#19191)hlaaftana2021-12-051-2/+17
| | | fixes #19188
* fix #12274 (#19180)hlaaftana2021-11-241-0/+9
|
* fixes #18847 [backport] (#18870)Andreas Rumpf2021-09-201-0/+4
|
* Fix #16426 (#18377)Clyybber2021-06-281-0/+15
|
* Small parser loop fix (#17904)Clyybber2021-04-301-1/+4
| | | | * Fix loop on error with nim check in semiStmtList * Add test
* refs #15667 improve invalid indentation errors, report when & where `=` ↵Timothee Cour2021-04-101-0/+58
| | | | | | | | | | | could be missing (#16397) * refs #15667 improve invalid indentation errors * also show line info where = is missing * add test * add more tests
* unify tuple expressions (#13793)Arne Döring2021-03-302-11/+10
| | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | | * unify tuple expressions * fix test * fix test * apply feedback * Handle empty tuples * Fix rendering named unary tuple * Protect static NimNode against stripping * Slightly less hacky * Revert "Slightly less hacky" This reverts commit 170c5aec0addc029f637afbc948700ca006b7942. * Slightly less hacky * Cleanup * Fix test * Fix another test * Add condsym * Rebase fallout * changelog: Move from compiler changes to language changes * Add stricter tests * Add empty tuple example to doc/astspec * Fix test Co-authored-by: Clyybber <darkmine956@gmail.com>
* add finally as post expr block [backport:1.4] (#16896)hlaaftana2021-02-011-0/+115
|
* use doAssert in tests (#16486)flywind2020-12-281-25/+25
|
* Add testcase for invalid if statement (#15313)Clyybber2020-09-121-0/+12
|
* Fix #15305 (#15311)Clyybber2020-09-121-0/+12
| | | | | * Fix #15305 * Fix test
* Better semiStmtList parsing (#15123)Clyybber2020-09-091-0/+165
| | | | | | | * Better semiStmtList parsing * Add examples from forums and wiki * Move parseIfExpr near parseIfOrWhen * Update grammar
* make `from` an operator (#14241)hlaaftana2020-05-081-0/+12
|
* Remove immediate pragma (#11308)Arne Döring2019-05-291-5/+5
| | | | | * remove immediate from tests * remove immediate from the compiler
* revert parser stmtListExpr (#11007)cooldome2019-04-171-20/+0
| | | | | | | | | | | | | | | | | * Revert "Support for stmtListExpr in parser after major keywords. Scaled down version. (#10852)" This reverts commit 862897dc0f122e374c0e4d44770ffcd8825e51e3. * redo fix for #4035 * render stmtlistExpr using semicolon * Revert "render stmtlistExpr using semicolon" This reverts commit cafb78b8d5b125b5f6ba94248377a1433b3138cb. * revert test
* fixes #10896 (#10903)Andreas Rumpf2019-03-251-0/+5
|
* fixes #10861 (#10877)cooldome2019-03-211-1/+15
|
* Support for stmtListExpr in parser after major keywords. Scaled down ↵cooldome2019-03-181-0/+20
| | | | | | | version. (#10852) * Support for stmtListExpr in parser after major keywords * fixes #4035
* gc: destructors is beginning to work (#10483)Andreas Rumpf2019-01-291-0/+9
| | | | | | | | | | | | | | | | * kochdocs.nim: code cleanup * docgen: nicer indentation * parser.nim: code cleanup * fixes #10458 * make tests green again * make =destroy mixins * gc:destructors: produced C code is almost working * --gc:destructors simple program compiles (but leaks memory) * gc:destructors make examples compile in C++ mode * destructors: string implementation bugfixes * strs.nim: minor code cleanup * destructors: builtin seqs are beginning to work * remove debugging helpers
* require errormsg to be specified before file.Arne Döring2018-12-117-15/+6
|
* fixes #9633Andreas Rumpf2018-11-081-1/+17
|
* parser change: 'not' is always a unary operator; fixes #9574Andreas Rumpf2018-11-071-0/+5
|
* removed the undocumented #? strongSpaces parsing modeAraq2018-11-061-83/+0
|
* Fix #8126 (#8712)zah2018-08-211-0/+4
| | | | | | This is a temporary fix that will be reworked in a follow up commit that aims to eliminate the tfExplicit flag from the compiler. The complete and proper fix was considered too risky for inclusion just before our 0.19 release.
* Implement the `is` operator for the new static and typedesc type classesZahary Karadjov2018-06-161-7/+32
| | | | | | | | | This also makes the first baby steps towards a sound treatment of higher-order kinds (type type int). Adds test cases showcasing the new features. * Also fixes breakage after the rebase
* A minimal patch enabling the new typedesc and static types syntaxZahary Karadjov2018-06-161-53/+99
|
* Starting test recording the current state of the parserZahary Karadjov2018-06-161-0/+481
| | | | | | | | | In the next commit, I'll introduce changes to the parser bringing consistent handling of all type modifiers (ref, ptr, var, static and type). The goal of this commit is to record precisely what is going to be changed (i.e. by allowing you to look at the diff). To preserve the diff, please don't squash upon merging.
* make tests green againAraq2018-05-144-7/+7
|
* update the changelogAndreas Rumpf2018-05-061-432/+0
|
* fixes #7582Andreas Rumpf2018-05-052-2/+13
|
* Get symbol kind (#7491)Arne Döring2018-04-111-89/+89
|
* Fix parser bug with type classes (#7480)Oscar Nihlgård2018-04-061-0/+17
|
* added the 'x.p[:T]' notation for explicit generic instantiations in ↵Araq2018-04-061-1/+7
| | | | combination with the ddot calling syntax