compiler/sem*: better lineinfo for templates (#10428)
* compiler/sem*: better lineinfo for templates
Lineinfo for templates is inconsistant across the compiler, for example:
doAssert true
^ ^
a[int](10)
^^ ^
The `^` marks where the compiler thinks the template starts.
For qualified call, we got the same situation with `proc`s before #10427:
system.once
^
Generics lineinfo within template declaration is also incorrect, for
example, this is where the compiler believes the `T` in `[T]` is:
template a[T](b: T)
^
This PR addresses all of these problems.
* nimsuggest: add tests for template highlighting
This commit is contained in:
parent
bad5ad6dc7
commit
35d96d8749
5 changed files with 27 additions and 9 deletions
9
nimsuggest/tests/ttemplate_highlight.nim
Normal file
9
nimsuggest/tests/ttemplate_highlight.nim
Normal file
|
|
@ -0,0 +1,9 @@
|
|||
doAssert true#[!]#
|
||||
|
||||
discard """
|
||||
$nimsuggest --tester $1
|
||||
>highlight $1
|
||||
highlight;;skTemplate;;1;;0;;8
|
||||
highlight;;skTemplate;;1;;0;;8
|
||||
highlight;;skEnumField;;1;;9;;4
|
||||
"""
|
||||
Loading…
Add table
Add a link
Reference in a new issue