Add support for injecting runtime calls to trace in DsM. This
allows the desugarer to add compile-time information to a runtime
This seems reasonable to me although I've suggested some cleanups.
This looks reasonable but can you make the documentation a bit more comprehensive? It's currently rather unclear what this actually does without reading the implementation.
Why is this boot file necessary?
What we drop these?
We might potentially want to use other tracing functions from modules with import loops. Is there any reason not to include them? Making trace wired-in to support pprRuntimeTrace sounds very reasonable; how hard is that?
I looked into the idea of wiring trace in, and to be honest, I don't think it's worth it. That locks down its inlining info, which seems like a potential maintenance burden. It seems likely to be better for anyone who needs to inject trace calls into Debug.Trace or its dependencies to just add the necessary imports by hand--there just aren't that many modules like that.