* .

* Fix jsgen FrameInfo

* Fix jsgen FrameInfo

* .

* Move to PProc
This commit is contained in:
Juan Carlos
2023-05-23 04:59:21 -03:00
committed by GitHub
parent 76a98fee65
commit d372ad3ee6
2 changed files with 6 additions and 0 deletions

View File

@@ -473,6 +473,7 @@
- When compiling for Release the flag `-fno-math-errno` is used for GCC.
- Removed deprecated `LineTooLong` hint.
- Line numbers and filenames of source files work correctly inside templates for JavaScript targets.
## Docgen

View File

@@ -110,6 +110,7 @@ type
extraIndent: int
up: PProc # up the call chain; required for closure support
declaredGlobals: IntSet
previousFileName: string # For frameInfo inside templates.
template config*(p: PProc): ConfigRef = p.module.config
@@ -803,6 +804,10 @@ proc genLineDir(p: PProc, n: PNode) =
lineF(p, "$1", [lineDir(p.config, n.info, line)])
if hasFrameInfo(p):
lineF(p, "F.line = $1;$n", [rope(line)])
let currentFileName = toFilename(p.config, n.info)
if p.previousFileName != currentFileName:
lineF(p, "F.filename = $1;$n", [makeJSString(currentFileName)])
p.previousFileName = currentFileName
proc genWhileStmt(p: PProc, n: PNode) =
var cond: TCompRes