Diagnostics creation and emission for
This module contains the code for creating and emitting diagnostics.
Emit diagnostics using the
The current rustc diagnostics emitter.
A JSON emitter for errors.
Bindings to acquire a global named lock.
Used for emitting structured error messages and other diagnostic information.
Signifies that the compiler died with an explicit call to
Used as a return value to signify a fatal error occurred. (It is also used as the argument to panic at the moment, but that will eventually not be true.)
A handler deals with errors and other compiler output. Certain errors (fatal, bug, unimpl) may cause immediate exit, others log errors for later reporting.
This inner struct exists to keep it all behind a single lock; this is done to prevent possible deadlocks in a multi-threaded compiler, as well as inconsistent state observation.
A “sub”-diagnostic attached to a parent diagnostic. For example, a note attached to an error.
See the docs on
Indicates the confidence in the correctness of a suggestion.
A key denoting where from a diagnostic was stashed.