Crate rustc_errors[][src]

Expand description

Diagnostics creation and emission for rustc.

This module contains the code for creating and emitting diagnostics.


pub use emitter::ColorConfig;


Emit diagnostics using the annotate-snippets library

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 .bug or .span_bug rather than a failed assertion, etc.

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 CodeSuggestion::substitutions

Used to translate between Spans and byte positions within a single output line in highlighted code of structured suggestions.


Indicates the confidence in the correctness of a suggestion.

A key denoting where from a diagnostic was stashed.



Type Definitions