nim-wiki/Debugging-the-compiler.md

11 lines
495 B
Markdown

```nimrod
echo renderTree(someNode) # pretty prints the nimrod ast
debug(someNode) # outputs some JSON representation
echo typeToString(someType) # pretty prints some type
debug(someType)
echo symbol.name.s
debug(symbol)
echo renderTree(someNode, {renderIds}) # pretty prints the nimrod ast, but annotates symbol IDs
if n.info ?? "temp.nim": echo renderTree(n) # only output when it comes from "temp.nim"
if n.info ?? "temp.nim": writeStackTrace() # why does it process temp.nim here?
```