findSourceMap/findEntry provides confusing/misleading line and column numbers
Version
20.0.0, 18.16.0
Platform
Darwin moxy.lan 22.4.0 Darwin Kernel Version 22.4.0: Mon Mar 6 20:59:28 PST 2023; root:xnu-8796.101.5~3/RELEASE_ARM64_T6000 arm64
Subsystem
No response
What steps will reproduce the bug?
Run the code provided in this gist, as shown in the first comment: https://gist.github.com/isaacs/ba57fca9ec16152256cba4b9b544750c
Verified with VSCode Source Map Visualizer that the mappings are correct. Note that:
- The generatedLine and generatedColumn from the source map payload do not consistently match the line/column from the error object. (It seems like they always should?)
- The column number is never correct, even when the lineNumber is.
- Frequently the column number is far longer than the line referenced, which should be impossible.
How often does it reproduce? Is there a required condition?
100% of the time.
It seems like node's --enable-source-maps
is just broken, or the SourceMap
object is not doing the right thing.
What is the expected behavior? Why is that the expected behavior?
Expected behavior would be:
-
generatedLine
,generatedColumn
should always match the call site line/number specified. I don't see how it could be different, it's supposed to be looking up the mapping for that generated result, so how could the generated result be different from the thing being looked up? -
originalLine
andoriginalColumn
should accurately reflect the origin specified in the sourcemap. For example, the callsite lineNumber 51 columnNumber 11 should result in an originalLine of 64, and originalColumn of 9.
What do you see instead?
Confusing and random errors in every line/column reported.
Origin locations that do not match the origin location provided.
Additional information
No response