rustc-dev-guide/examples
Florian Brucker 1979d85189 Fix examples to work with nightly-2025-02-13
While there were comments indicating which nightly versions the examples
were tested with, those versions did not work for me: neither did the
examples compile, nor did they produce the expected output.

This commit fixes the compilation issues, using nightly-2025-02-13 for
all examples (previously the version differed between the examples) and,
in the case of the `rustc_driver` examples, also fixes the argument
passing: rustc ignores the first argument, so we need to pass the
filename as the second (otherwise we only get the help text printed).

Note that the `rustc-interface-getting-diagnostics.rs` example still
does not produce any output, which I assume is not how it is intended.
However, I don't know enough to fix it.

To avoid inconsistencies between the documented version and the actually
required version I've moved the version comment from the Markdown into
the Rust code where it hopefully won't be forgotten as easily.

Finally I've clarified in the examples' README that you also need to use
the proper nightly version when compiling the examples, not just when
running them.
2025-02-15 19:44:32 +01:00
..
README Fix examples to work with nightly-2025-02-13 2025-02-15 19:44:32 +01:00
rustc-driver-example.rs Fix examples to work with nightly-2025-02-13 2025-02-15 19:44:32 +01:00
rustc-driver-interacting-with-the-ast.rs Fix examples to work with nightly-2025-02-13 2025-02-15 19:44:32 +01:00
rustc-interface-example.rs Fix examples to work with nightly-2025-02-13 2025-02-15 19:44:32 +01:00
rustc-interface-getting-diagnostics.rs Fix examples to work with nightly-2025-02-13 2025-02-15 19:44:32 +01:00

README

For each example to compile, you will need to first run the following:

    rustup component add rustc-dev llvm-tools

To create an executable:

    rustup run nightly rustc rustc-driver-example.rs

You might need to be more specific about the exact nightly version. See the comments at the top of
the examples for the version they were written for.

To run an executable:

    rustup run nightly ./rustc-driver-example