diff --git a/src/doc/guide-plugins.md b/src/doc/guide-plugins.md index 742433b99ac..1ba28c0117d 100644 --- a/src/doc/guide-plugins.md +++ b/src/doc/guide-plugins.md @@ -1,4 +1,4 @@ % The (old) Rust Compiler Plugins Guide This content has moved into -[the Rust Programming Language book](book/compiler-plugins.html). +[the Unstable Book](unstable-book/plugin.html). diff --git a/src/doc/reference/src/attributes.md b/src/doc/reference/src/attributes.md index da43e1cc057..8f3fdbf3679 100644 --- a/src/doc/reference/src/attributes.md +++ b/src/doc/reference/src/attributes.md @@ -317,7 +317,7 @@ For any lint check `C`: The lint checks supported by the compiler can be found via `rustc -W help`, along with their default settings. [Compiler -plugins](../book/compiler-plugins.html#lint-plugins) can provide additional +plugins](../unstable-book/plugin.html#lint-plugins) can provide additional lint checks. ```{.ignore} diff --git a/src/doc/reference/src/macros.md b/src/doc/reference/src/macros.md index 9ec5f2d6945..d64c40dcad8 100644 --- a/src/doc/reference/src/macros.md +++ b/src/doc/reference/src/macros.md @@ -14,4 +14,4 @@ And one unstable way: [compiler plugins]. [Macros]: ../book/macros.html [Procedural Macros]: ../book/procedural-macros.html -[compiler plugins]: ../book/compiler-plugins.html +[compiler plugins]: ../unstable-book/plugin.html diff --git a/src/doc/unstable-book/src/plugin.md b/src/doc/unstable-book/src/plugin.md index 313ef2ec91d..ca69b7084d3 100644 --- a/src/doc/unstable-book/src/plugin.md +++ b/src/doc/unstable-book/src/plugin.md @@ -129,9 +129,9 @@ The advantages over a simple `fn(&str) -> u32` are: a way to define new literal syntax for any data type. In addition to procedural macros, you can define new -[`derive`](../reference.html#derive)-like attributes and other kinds of -extensions. See `Registry::register_syntax_extension` and the `SyntaxExtension` -enum. For a more involved macro example, see +[`derive`](../reference/attributes.html#derive)-like attributes and other kinds +of extensions. See `Registry::register_syntax_extension` and the +`SyntaxExtension` enum. For a more involved macro example, see [`regex_macros`](https://github.com/rust-lang/regex/blob/master/regex_macros/src/lib.rs). @@ -175,8 +175,8 @@ quasiquote as an ordinary plugin library. # Lint plugins Plugins can extend [Rust's lint -infrastructure](../reference.html#lint-check-attributes) with additional checks for -code style, safety, etc. Now let's write a plugin +infrastructure](../reference/attributes.html#lint-check-attributes) with +additional checks for code style, safety, etc. Now let's write a plugin [`lint_plugin_test.rs`](https://github.com/rust-lang/rust/blob/master/src/test/run-pass-fulldeps/auxiliary/lint_plugin_test.rs) that warns about any item named `lintme`. @@ -254,9 +254,10 @@ mostly use the same infrastructure as lint plugins, and provide examples of how to access type information. Lints defined by plugins are controlled by the usual [attributes and compiler -flags](../reference.html#lint-check-attributes), e.g. `#[allow(test_lint)]` or -`-A test-lint`. These identifiers are derived from the first argument to -`declare_lint!`, with appropriate case and punctuation conversion. +flags](../reference/attributes.html#lint-check-attributes), e.g. +`#[allow(test_lint)]` or `-A test-lint`. These identifiers are derived from the +first argument to `declare_lint!`, with appropriate case and punctuation +conversion. You can run `rustc -W help foo.rs` to see a list of lints known to `rustc`, including those provided by plugins loaded by `foo.rs`.