Generalize branch references to HEAD
This commit is contained in:
parent
bd3ac03300
commit
d3473f0741
92 changed files with 222 additions and 222 deletions
2
.github/ISSUE_TEMPLATE/tracking_issue.md
vendored
2
.github/ISSUE_TEMPLATE/tracking_issue.md
vendored
|
|
@ -50,7 +50,7 @@ for larger features an implementation could be broken up into multiple PRs.
|
|||
[stabilization-guide]: https://rustc-dev-guide.rust-lang.org/stabilization_guide.html#stabilization-pr
|
||||
[doc-guide]: https://rustc-dev-guide.rust-lang.org/stabilization_guide.html#documentation-prs
|
||||
[nightly-style-procedure]: https://github.com/rust-lang/style-team/blob/main/nightly-style-procedure.md
|
||||
[Style Guide]: https://github.com/rust-lang/rust/tree/master/src/doc/style-guide
|
||||
[Style Guide]: https://github.com/rust-lang/rust/tree/HEAD/src/doc/style-guide
|
||||
|
||||
### Unresolved Questions
|
||||
<!--
|
||||
|
|
|
|||
2
.github/workflows/ci.yml
vendored
2
.github/workflows/ci.yml
vendored
|
|
@ -323,7 +323,7 @@ jobs:
|
|||
# If a some dependent job has failed, this exits with 1.
|
||||
- name: calculate the correct exit status
|
||||
run: jq --exit-status 'all(.result == "success" or .result == "skipped")' <<< '${{ toJson(needs) }}'
|
||||
# Publish the toolstate if an auto build succeeds (just before push to master)
|
||||
# Publish the toolstate if an auto build succeeds (just before push to the default branch)
|
||||
- name: publish toolstate
|
||||
run: src/ci/publish_toolstate.sh
|
||||
shell: bash
|
||||
|
|
|
|||
2
.github/workflows/post-merge.yml
vendored
2
.github/workflows/post-merge.yml
vendored
|
|
@ -1,4 +1,4 @@
|
|||
# Workflow that runs after a merge to master, analyses changes in test executions
|
||||
# Workflow that runs after a merge to the default branch, analyses changes in test executions
|
||||
# and posts the result to the merged PR.
|
||||
|
||||
name: Post merge analysis
|
||||
|
|
|
|||
|
|
@ -213,7 +213,7 @@ impl<'a> IntoIterator for LLVMFeature<'a> {
|
|||
///
|
||||
/// Check the current rustc fork of LLVM in the repo at
|
||||
/// <https://github.com/rust-lang/llvm-project/>. The commit in use can be found via the
|
||||
/// `llvm-project` submodule in <https://github.com/rust-lang/rust/tree/master/src> Though note that
|
||||
/// `llvm-project` submodule in <https://github.com/rust-lang/rust/tree/HEAD/src> Though note that
|
||||
/// Rust can also be build with an external precompiled version of LLVM which might lead to failures
|
||||
/// if the oldest tested / supported LLVM version doesn't yet support the relevant intrinsics.
|
||||
pub(crate) fn to_llvm_features<'a>(sess: &Session, s: &'a str) -> Option<LLVMFeature<'a>> {
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@
|
|||
//! Only valid for queries returning `Result<_, ErrorGuaranteed>`.
|
||||
//!
|
||||
//! For the up-to-date list, see the `QueryModifiers` struct in
|
||||
//! [`rustc_macros/src/query.rs`](https://github.com/rust-lang/rust/blob/master/compiler/rustc_macros/src/query.rs)
|
||||
//! [`rustc_macros/src/query.rs`](https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc_macros/src/query.rs)
|
||||
//! and for more details in incremental compilation, see the
|
||||
//! [Query modifiers in incremental compilation](https://rustc-dev-guide.rust-lang.org/queries/incremental-compilation-in-detail.html#query-modifiers) section of the rustc-dev-guide.
|
||||
//!
|
||||
|
|
|
|||
|
|
@ -5,16 +5,16 @@
|
|||
//! intrinsics via stable wrapper functions. Use these instead.
|
||||
//!
|
||||
//! These are the imports making intrinsics available to Rust code. The actual implementations live in the compiler.
|
||||
//! Some of these intrinsics are lowered to MIR in <https://github.com/rust-lang/rust/blob/master/compiler/rustc_mir_transform/src/lower_intrinsics.rs>.
|
||||
//! The remaining intrinsics are implemented for the LLVM backend in <https://github.com/rust-lang/rust/blob/master/compiler/rustc_codegen_ssa/src/mir/intrinsic.rs>
|
||||
//! and <https://github.com/rust-lang/rust/blob/master/compiler/rustc_codegen_llvm/src/intrinsic.rs>,
|
||||
//! and for const evaluation in <https://github.com/rust-lang/rust/blob/master/compiler/rustc_const_eval/src/interpret/intrinsics.rs>.
|
||||
//! Some of these intrinsics are lowered to MIR in <https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc_mir_transform/src/lower_intrinsics.rs>.
|
||||
//! The remaining intrinsics are implemented for the LLVM backend in <https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc_codegen_ssa/src/mir/intrinsic.rs>
|
||||
//! and <https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc_codegen_llvm/src/intrinsic.rs>,
|
||||
//! and for const evaluation in <https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc_const_eval/src/interpret/intrinsics.rs>.
|
||||
//!
|
||||
//! # Const intrinsics
|
||||
//!
|
||||
//! In order to make an intrinsic unstable usable at compile-time, copy the implementation from
|
||||
//! <https://github.com/rust-lang/miri/blob/master/src/intrinsics> to
|
||||
//! <https://github.com/rust-lang/rust/blob/master/compiler/rustc_const_eval/src/interpret/intrinsics.rs>
|
||||
//! <https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc_const_eval/src/interpret/intrinsics.rs>
|
||||
//! and make the intrinsic declaration below a `const fn`. This should be done in coordination with
|
||||
//! wg-const-eval.
|
||||
//!
|
||||
|
|
|
|||
|
|
@ -1611,7 +1611,7 @@ impl Build {
|
|||
// If available, we read the beta revision from that file.
|
||||
// This only happens when building from a source tarball when Git should not be used.
|
||||
let count = extract_beta_rev_from_file(self.src.join("version")).unwrap_or_else(|| {
|
||||
// Figure out how many merge commits happened since we branched off master.
|
||||
// Figure out how many merge commits happened since we branched off main.
|
||||
// That's our beta number!
|
||||
// (Note that we use a `..` range, not the `...` symmetric difference.)
|
||||
helpers::git(Some(&self.src))
|
||||
|
|
|
|||
|
|
@ -162,7 +162,7 @@ optional:
|
|||
IMAGE: pr-check-1
|
||||
<<: *job-linux-4c
|
||||
|
||||
# Main CI jobs that have to be green to merge a commit into master.
|
||||
# Main CI jobs that have to be green to merge a commit into the default branch.
|
||||
#
|
||||
# These jobs automatically inherit envs.auto, to avoid repeating it in each job
|
||||
# definition.
|
||||
|
|
|
|||
|
|
@ -106,7 +106,7 @@ fi
|
|||
|
||||
# Always set the release channel for bootstrap; this is normally not important (i.e., only dist
|
||||
# builds would seem to matter) but in practice bootstrap wants to know whether we're targeting
|
||||
# master, beta, or stable with a build to determine whether to run some checks (notably toolstate).
|
||||
# main, beta, or stable with a build to determine whether to run some checks (notably toolstate).
|
||||
export RUST_RELEASE_CHANNEL=$(releaseChannel)
|
||||
RUST_CONFIGURE_ARGS="$RUST_CONFIGURE_ARGS --release-channel=$RUST_RELEASE_CHANNEL"
|
||||
|
||||
|
|
|
|||
|
|
@ -12,7 +12,7 @@ Item | Kind | Short description | Chapter |
|
|||
`rustc_hir::Crate` | struct | A more abstract, compiler-friendly form of a crate's AST | [The Hir] | [compiler/rustc_hir/src/hir.rs](https://doc.rust-lang.org/nightly/nightly-rustc/rustc_hir/hir/struct.Crate.html)
|
||||
`DefId` | struct | One of four types of HIR node identifiers | [Identifiers in the HIR] | [compiler/rustc_hir/src/def_id.rs](https://doc.rust-lang.org/nightly/nightly-rustc/rustc_hir/def_id/struct.DefId.html)
|
||||
`Diag` | struct | A struct for a compiler diagnostic, such as an error or lint | [Emitting Diagnostics] | [compiler/rustc_errors/src/diagnostic.rs](https://doc.rust-lang.org/nightly/nightly-rustc/rustc_errors/struct.Diag.html)
|
||||
`DocContext` | struct | A state container used by rustdoc when crawling through a crate to gather its documentation | [Rustdoc] | [src/librustdoc/core.rs](https://github.com/rust-lang/rust/blob/master/src/librustdoc/core.rs)
|
||||
`DocContext` | struct | A state container used by rustdoc when crawling through a crate to gather its documentation | [Rustdoc] | [src/librustdoc/core.rs](https://github.com/rust-lang/rust/blob/HEAD/src/librustdoc/core.rs)
|
||||
`HirId` | struct | One of four types of HIR node identifiers | [Identifiers in the HIR] | [compiler/rustc_hir_id/src/lib.rs](https://doc.rust-lang.org/nightly/nightly-rustc/rustc_hir/struct.HirId.html)
|
||||
`Lexer` | struct | This is the lexer used during parsing. It consumes characters from the raw source code being compiled and produces a series of tokens for use by the rest of the parser | [The parser] | [compiler/rustc_parse/src/lexer/mod.rs](https://doc.rust-lang.org/nightly/nightly-rustc/rustc_parse/lexer/struct.Lexer.html)
|
||||
`NodeId` | struct | One of four types of HIR node identifiers. Being phased out | [Identifiers in the HIR] | [compiler/rustc_ast/src/ast.rs](https://doc.rust-lang.org/nightly/nightly-rustc/rustc_ast/node_id/struct.NodeId.html)
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
What's a project without a sense of humor? And frankly some of these are
|
||||
enlightening?
|
||||
|
||||
- [Weird exprs test](https://github.com/rust-lang/rust/blob/master/tests/ui/expr/weird-exprs.rs)
|
||||
- [Weird exprs test](https://github.com/rust-lang/rust/blob/HEAD/tests/ui/expr/weird-exprs.rs)
|
||||
- [Ferris Rap](https://fitzgen.com/2018/12/13/rust-raps.html)
|
||||
- [The Genesis of Generic Germination](https://github.com/rust-lang/rust/pull/53645#issue-210543221)
|
||||
- [The Bastion of the Turbofish test](https://github.com/rust-lang/rust/blob/79d8a0fcefa5134db2a94739b1d18daa01fc6e9f/src/test/ui/bastion-of-the-turbofish.rs)
|
||||
|
|
|
|||
|
|
@ -35,7 +35,7 @@ Definitions of non-builtin attributes take two forms:
|
|||
2. AST-based attributes, defined in the standard library. These attributes have special 'stub'
|
||||
macros defined in places like [`library/core/src/macros/mod.rs`][core_macros].
|
||||
|
||||
[core_macros]: https://github.com/rust-lang/rust/blob/master/library/core/src/macros/mod.rs
|
||||
[core_macros]: https://github.com/rust-lang/rust/blob/HEAD/library/core/src/macros/mod.rs
|
||||
|
||||
These definitions exist to allow the macros to participate in typical path-based resolution - they
|
||||
can be imported, re-exported, and renamed just like any other item definition. However, the body of
|
||||
|
|
|
|||
|
|
@ -224,7 +224,7 @@ keep in mind while going through them:
|
|||
|
||||
[rust-lang/llvm-project repository]: https://github.com/rust-lang/llvm-project
|
||||
[llvm/llvm-project repository]: https://github.com/llvm/llvm-project
|
||||
[`llvm-wrapper`]: https://github.com/rust-lang/rust/tree/master/compiler/rustc_llvm/llvm-wrapper
|
||||
[`llvm-wrapper`]: https://github.com/rust-lang/rust/tree/HEAD/compiler/rustc_llvm/llvm-wrapper
|
||||
[wg-llvm]: https://rust-lang.zulipchat.com/#narrow/stream/187780-t-compiler.2Fwg-llvm
|
||||
[Dev Desktops]: https://forge.rust-lang.org/infra/docs/dev-desktop.html
|
||||
[backport process]: https://llvm.org/docs/GitHub.html#backporting-fixes-to-the-release-branches
|
||||
|
|
|
|||
|
|
@ -81,7 +81,7 @@ For each region we maintain a set storing what elements are present in its value
|
|||
efficient, we give each kind of element an index, the `RegionElementIndex`, and
|
||||
use sparse bitsets).
|
||||
|
||||
[ri]: https://github.com/rust-lang/rust/tree/master/compiler/rustc_borrowck/src/region_infer
|
||||
[ri]: https://github.com/rust-lang/rust/tree/HEAD/compiler/rustc_borrowck/src/region_infer
|
||||
|
||||
The kinds of region elements are as follows:
|
||||
|
||||
|
|
|
|||
|
|
@ -39,12 +39,12 @@ pub trait Step: 'static + Clone + Debug + PartialEq + Eq + Hash {
|
|||
|
||||
There's a couple of preliminary steps before core Bootstrap code is reached:
|
||||
|
||||
1. Shell script or `make`: [`./x`](https://github.com/rust-lang/rust/blob/master/x) or [`./x.ps1`](https://github.com/rust-lang/rust/blob/master/x.ps1) or `make`
|
||||
2. Convenience wrapper script: [`x.py`](https://github.com/rust-lang/rust/blob/master/x.py)
|
||||
3. [`src/bootstrap/bootstrap.py`](https://github.com/rust-lang/rust/blob/master/src/bootstrap/bootstrap.py)
|
||||
4. [`src/bootstrap/src/bin/main.rs`](https://github.com/rust-lang/rust/blob/master/src/bootstrap/src/bin/main.rs)
|
||||
1. Shell script or `make`: [`./x`](https://github.com/rust-lang/rust/blob/HEAD/x) or [`./x.ps1`](https://github.com/rust-lang/rust/blob/HEAD/x.ps1) or `make`
|
||||
2. Convenience wrapper script: [`x.py`](https://github.com/rust-lang/rust/blob/HEAD/x.py)
|
||||
3. [`src/bootstrap/bootstrap.py`](https://github.com/rust-lang/rust/blob/HEAD/src/bootstrap/bootstrap.py)
|
||||
4. [`src/bootstrap/src/bin/main.rs`](https://github.com/rust-lang/rust/blob/HEAD/src/bootstrap/src/bin/main.rs)
|
||||
|
||||
See [src/bootstrap/README.md](https://github.com/rust-lang/rust/blob/master/src/bootstrap/README.md)
|
||||
See [src/bootstrap/README.md](https://github.com/rust-lang/rust/blob/HEAD/src/bootstrap/README.md)
|
||||
for a more specific description of the implementation details.
|
||||
|
||||
[`Step`]: https://doc.rust-lang.org/nightly/nightly-rustc/bootstrap/core/builder/trait.Step.html
|
||||
|
|
|
|||
|
|
@ -12,12 +12,12 @@ only way to build a modern version of `rustc` is with a slightly less modern ver
|
|||
This is exactly how [`./x.py`] works: it downloads the current beta release of
|
||||
`rustc`, then uses it to compile the new compiler.
|
||||
|
||||
[`./x.py`]: https://github.com/rust-lang/rust/blob/master/x.py
|
||||
[`./x.py`]: https://github.com/rust-lang/rust/blob/HEAD/x.py
|
||||
|
||||
Note that this documentation mostly covers user-facing information. See
|
||||
[bootstrap/README.md][bootstrap-internals] to read about bootstrap internals.
|
||||
|
||||
[bootstrap-internals]: https://github.com/rust-lang/rust/blob/master/src/bootstrap/README.md
|
||||
[bootstrap-internals]: https://github.com/rust-lang/rust/blob/HEAD/src/bootstrap/README.md
|
||||
|
||||
## Stages of bootstrapping
|
||||
|
||||
|
|
@ -74,8 +74,8 @@ build the stage2 compiler.
|
|||
There are two concepts at play here: a compiler (with its set of dependencies) and its
|
||||
'target' or 'object' libraries (`std` and `rustc`). Both are staged, but in a staggered manner.
|
||||
|
||||
[`compiler/rustc`]: https://github.com/rust-lang/rust/tree/master/compiler/rustc
|
||||
[`src/bootstrap`]: https://github.com/rust-lang/rust/tree/master/src/bootstrap
|
||||
[`compiler/rustc`]: https://github.com/rust-lang/rust/tree/HEAD/compiler/rustc
|
||||
[`src/bootstrap`]: https://github.com/rust-lang/rust/tree/HEAD/src/bootstrap
|
||||
|
||||
### Stage 1: from current code, by an earlier compiler
|
||||
|
||||
|
|
@ -129,7 +129,7 @@ You can always override the stage by passing `--stage N` explicitly.
|
|||
For more information about stages, [see
|
||||
below](#understanding-stages-of-bootstrap).
|
||||
|
||||
[`./x`]: https://github.com/rust-lang/rust/blob/master/x
|
||||
[`./x`]: https://github.com/rust-lang/rust/blob/HEAD/x
|
||||
|
||||
## Complications of bootstrapping
|
||||
|
||||
|
|
|
|||
|
|
@ -2,7 +2,7 @@
|
|||
|
||||
## Dependencies
|
||||
|
||||
See [the `rust-lang/rust` INSTALL](https://github.com/rust-lang/rust/blob/master/INSTALL.md#dependencies).
|
||||
See [the `rust-lang/rust` INSTALL](https://github.com/rust-lang/rust/blob/HEAD/INSTALL.md#dependencies).
|
||||
|
||||
## Hardware
|
||||
|
||||
|
|
|
|||
|
|
@ -451,15 +451,15 @@ pkgs.mkShell {
|
|||
|
||||
If you use Bash, Zsh, Fish or PowerShell, you can find automatically-generated shell
|
||||
completion scripts for `x.py` in
|
||||
[`src/etc/completions`](https://github.com/rust-lang/rust/tree/master/src/etc/completions).
|
||||
[`src/etc/completions`](https://github.com/rust-lang/rust/tree/HEAD/src/etc/completions).
|
||||
|
||||
You can use `source ./src/etc/completions/x.py.<extension>` to load completions
|
||||
for your shell of choice, or `& .\src\etc\completions\x.py.ps1` for PowerShell.
|
||||
Adding this to your shell's startup script (e.g. `.bashrc`) will automatically
|
||||
load this completion.
|
||||
|
||||
[`src/etc/rust_analyzer_settings.json`]: https://github.com/rust-lang/rust/blob/master/src/etc/rust_analyzer_settings.json
|
||||
[`src/etc/rust_analyzer_eglot.el`]: https://github.com/rust-lang/rust/blob/master/src/etc/rust_analyzer_eglot.el
|
||||
[`src/etc/rust_analyzer_helix.toml`]: https://github.com/rust-lang/rust/blob/master/src/etc/rust_analyzer_helix.toml
|
||||
[`src/etc/rust_analyzer_zed.json`]: https://github.com/rust-lang/rust/blob/master/src/etc/rust_analyzer_zed.json
|
||||
[`src/etc/pre-push.sh`]: https://github.com/rust-lang/rust/blob/master/src/etc/pre-push.sh
|
||||
[`src/etc/rust_analyzer_settings.json`]: https://github.com/rust-lang/rust/blob/HEAD/src/etc/rust_analyzer_settings.json
|
||||
[`src/etc/rust_analyzer_eglot.el`]: https://github.com/rust-lang/rust/blob/HEAD/src/etc/rust_analyzer_eglot.el
|
||||
[`src/etc/rust_analyzer_helix.toml`]: https://github.com/rust-lang/rust/blob/HEAD/src/etc/rust_analyzer_helix.toml
|
||||
[`src/etc/rust_analyzer_zed.json`]: https://github.com/rust-lang/rust/blob/HEAD/src/etc/rust_analyzer_zed.json
|
||||
[`src/etc/pre-push.sh`]: https://github.com/rust-lang/rust/blob/HEAD/src/etc/pre-push.sh
|
||||
|
|
|
|||
|
|
@ -158,7 +158,7 @@ error: internal compiler error: unexpected panic
|
|||
|
||||
note: the compiler unexpectedly panicked. this is a bug.
|
||||
|
||||
note: we would appreciate a bug report: https://github.com/rust-lang/rust/blob/master/CONTRIBUTING.md#bug-reports
|
||||
note: we would appreciate a bug report: https://github.com/rust-lang/rust/blob/HEAD/CONTRIBUTING.md#bug-reports
|
||||
|
||||
note: rustc 1.24.0-dev running on x86_64-unknown-linux-gnu
|
||||
|
||||
|
|
@ -284,7 +284,7 @@ Here are some notable ones:
|
|||
|
||||
Right below you can find elaborate explainers on a selected few.
|
||||
|
||||
[`builtin_attrs`]: https://github.com/rust-lang/rust/blob/master/compiler/rustc_feature/src/builtin_attrs.rs
|
||||
[`builtin_attrs`]: https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc_feature/src/builtin_attrs.rs
|
||||
[`def_path_str`]: https://doc.rust-lang.org/nightly/nightly-rustc/rustc_middle/ty/context/struct.TyCtxt.html#method.def_path_str
|
||||
[`inferred_outlives_of`]: https://doc.rust-lang.org/nightly/nightly-rustc/rustc_middle/ty/context/struct.TyCtxt.html#method.inferred_outlives_of
|
||||
[`item_bounds`]: https://doc.rust-lang.org/nightly/nightly-rustc/rustc_middle/ty/context/struct.TyCtxt.html#method.item_bounds
|
||||
|
|
|
|||
|
|
@ -32,23 +32,23 @@ The repository consists of three main directories:
|
|||
- [`src/`] contains the source code for [`rustdoc`], [`clippy`], [`cargo`], the build system,
|
||||
language docs, etc.
|
||||
|
||||
[`alloc`]: https://github.com/rust-lang/rust/tree/master/library/alloc
|
||||
[`alloc`]: https://github.com/rust-lang/rust/tree/HEAD/library/alloc
|
||||
[`backtrace`]: https://github.com/rust-lang/backtrace-rs/
|
||||
[`cargo`]: https://github.com/rust-lang/cargo
|
||||
[`clippy`]: https://github.com/rust-lang/rust/tree/master/src/tools/clippy
|
||||
[`compiler/`]: https://github.com/rust-lang/rust/tree/master/compiler
|
||||
[`core`]: https://github.com/rust-lang/rust/tree/master/library/core
|
||||
[`etc`]: https://github.com/rust-lang/rust/tree/master/src/etc
|
||||
[`lang_start`]: https://github.com/rust-lang/rust/blob/master/library/std/src/rt.rs
|
||||
[`library/`]: https://github.com/rust-lang/rust/tree/master/library
|
||||
[`proc_macro`]: https://github.com/rust-lang/rust/tree/master/library/proc_macro
|
||||
[`rtstartup`]: https://github.com/rust-lang/rust/tree/master/library/rtstartup
|
||||
[`clippy`]: https://github.com/rust-lang/rust/tree/HEAD/src/tools/clippy
|
||||
[`compiler/`]: https://github.com/rust-lang/rust/tree/HEAD/compiler
|
||||
[`core`]: https://github.com/rust-lang/rust/tree/HEAD/library/core
|
||||
[`etc`]: https://github.com/rust-lang/rust/tree/HEAD/src/etc
|
||||
[`lang_start`]: https://github.com/rust-lang/rust/blob/HEAD/library/std/src/rt.rs
|
||||
[`library/`]: https://github.com/rust-lang/rust/tree/HEAD/library
|
||||
[`proc_macro`]: https://github.com/rust-lang/rust/tree/HEAD/library/proc_macro
|
||||
[`rtstartup`]: https://github.com/rust-lang/rust/tree/HEAD/library/rtstartup
|
||||
[`rust-lang/rust`]: https://github.com/rust-lang/rust
|
||||
[`rustdoc`]: https://github.com/rust-lang/rust/tree/master/src/tools/rustdoc
|
||||
[`src/`]: https://github.com/rust-lang/rust/tree/master/src
|
||||
[`std`]: https://github.com/rust-lang/rust/tree/master/library/std
|
||||
[`test`]: https://github.com/rust-lang/rust/tree/master/library/test
|
||||
[`tests/`]: https://github.com/rust-lang/rust/tree/master/tests
|
||||
[`rustdoc`]: https://github.com/rust-lang/rust/tree/HEAD/src/tools/rustdoc
|
||||
[`src/`]: https://github.com/rust-lang/rust/tree/HEAD/src
|
||||
[`std`]: https://github.com/rust-lang/rust/tree/HEAD/library/std
|
||||
[`test`]: https://github.com/rust-lang/rust/tree/HEAD/library/test
|
||||
[`tests/`]: https://github.com/rust-lang/rust/tree/HEAD/tests
|
||||
|
||||
## Compiler
|
||||
|
||||
|
|
@ -99,9 +99,9 @@ compiler can interface with it.
|
|||
Most of this book is about the compiler, so we won't have any further
|
||||
explanation of these crates here.
|
||||
|
||||
[`compiler/rustc_llvm`]: https://github.com/rust-lang/rust/tree/master/compiler/rustc_llvm
|
||||
[`src/llvm-project`]: https://github.com/rust-lang/rust/tree/master/src/
|
||||
[`Cargo.toml`]: https://github.com/rust-lang/rust/blob/master/Cargo.toml
|
||||
[`compiler/rustc_llvm`]: https://github.com/rust-lang/rust/tree/HEAD/compiler/rustc_llvm
|
||||
[`src/llvm-project`]: https://github.com/rust-lang/rust/tree/HEAD/src/
|
||||
[`Cargo.toml`]: https://github.com/rust-lang/rust/blob/HEAD/Cargo.toml
|
||||
|
||||
### Big picture
|
||||
|
||||
|
|
@ -160,10 +160,10 @@ You can read more about [`rustdoc`] in [this chapter][rustdoc-chapter].
|
|||
|
||||
[`librustdoc`]: https://doc.rust-lang.org/nightly/nightly-rustc/rustdoc/index.html
|
||||
[`rustdoc::main`]: https://doc.rust-lang.org/nightly/nightly-rustc/rustdoc/fn.main.html
|
||||
[`src/tools/rustdoc-js`]: https://github.com/rust-lang/rust/tree/master/src/tools/rustdoc-js
|
||||
[`src/tools/rustdoc-themes`]: https://github.com/rust-lang/rust/tree/master/src/tools/rustdoc-themes
|
||||
[`src/tools/rustdoc`]: https://github.com/rust-lang/rust/tree/master/src/tools/rustdoc
|
||||
[`src/rustdoc-json-types`]: https://github.com/rust-lang/rust/tree/master/src/rustdoc-json-types
|
||||
[`src/tools/rustdoc-js`]: https://github.com/rust-lang/rust/tree/HEAD/src/tools/rustdoc-js
|
||||
[`src/tools/rustdoc-themes`]: https://github.com/rust-lang/rust/tree/HEAD/src/tools/rustdoc-themes
|
||||
[`src/tools/rustdoc`]: https://github.com/rust-lang/rust/tree/HEAD/src/tools/rustdoc
|
||||
[`src/rustdoc-json-types`]: https://github.com/rust-lang/rust/tree/HEAD/src/rustdoc-json-types
|
||||
[rustdoc-chapter]: ./rustdoc.md
|
||||
|
||||
## Tests
|
||||
|
|
@ -173,7 +173,7 @@ about the test suite [in this chapter][testsch].
|
|||
|
||||
The test harness is in [`src/tools/compiletest/`][`compiletest/`].
|
||||
|
||||
[`tests/`]: https://github.com/rust-lang/rust/tree/master/tests
|
||||
[`tests/`]: https://github.com/rust-lang/rust/tree/HEAD/tests
|
||||
[testsch]: ./tests/intro.md
|
||||
|
||||
## Build System
|
||||
|
|
@ -186,10 +186,10 @@ One of the primary tools is [`src/bootstrap/`]. You can read more about
|
|||
bootstrapping [in this chapter][bootstch]. The process may also use other tools
|
||||
from [`src/tools/`], such as [`tidy/`] or [`compiletest/`].
|
||||
|
||||
[`compiletest/`]: https://github.com/rust-lang/rust/tree/master/src/tools/compiletest
|
||||
[`src/bootstrap/`]: https://github.com/rust-lang/rust/tree/master/src/bootstrap
|
||||
[`src/tools/`]: https://github.com/rust-lang/rust/tree/master/src/tools
|
||||
[`tidy/`]: https://github.com/rust-lang/rust/tree/master/src/tools/tidy
|
||||
[`compiletest/`]: https://github.com/rust-lang/rust/tree/HEAD/src/tools/compiletest
|
||||
[`src/bootstrap/`]: https://github.com/rust-lang/rust/tree/HEAD/src/bootstrap
|
||||
[`src/tools/`]: https://github.com/rust-lang/rust/tree/HEAD/src/tools
|
||||
[`tidy/`]: https://github.com/rust-lang/rust/tree/HEAD/src/tools/tidy
|
||||
[bootstch]: ./building/bootstrapping/intro.md
|
||||
|
||||
## Standard library
|
||||
|
|
@ -213,6 +213,6 @@ These include:
|
|||
- [`src/etc`]: Miscellaneous utilities.
|
||||
- And more...
|
||||
|
||||
[`src/ci`]: https://github.com/rust-lang/rust/tree/master/src/ci
|
||||
[`src/doc`]: https://github.com/rust-lang/rust/tree/master/src/doc
|
||||
[`src/etc`]: https://github.com/rust-lang/rust/tree/master/src/etc
|
||||
[`src/ci`]: https://github.com/rust-lang/rust/tree/HEAD/src/ci
|
||||
[`src/doc`]: https://github.com/rust-lang/rust/tree/HEAD/src/doc
|
||||
[`src/etc`]: https://github.com/rust-lang/rust/tree/HEAD/src/etc
|
||||
|
|
|
|||
|
|
@ -29,7 +29,7 @@ check out [triagebot.toml's assign section][map].
|
|||
It contains a listing of the various parts of the compiler and a list of people
|
||||
who are reviewers of each part.
|
||||
|
||||
[map]: https://github.com/rust-lang/rust/blob/master/triagebot.toml
|
||||
[map]: https://github.com/rust-lang/rust/blob/HEAD/triagebot.toml
|
||||
|
||||
## Rust compiler meeting
|
||||
|
||||
|
|
|
|||
|
|
@ -106,7 +106,7 @@ the interpreter, but just use the cached result.
|
|||
## Datastructures
|
||||
|
||||
The interpreter's outside-facing datastructures can be found in
|
||||
[rustc_middle/src/mir/interpret](https://github.com/rust-lang/rust/blob/master/compiler/rustc_middle/src/mir/interpret).
|
||||
[rustc_middle/src/mir/interpret](https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc_middle/src/mir/interpret).
|
||||
This is mainly the error enum and the [`ConstValue`] and [`Scalar`] types. A
|
||||
`ConstValue` can be either `Scalar` (a single `Scalar`, i.e., integer or thin
|
||||
pointer), `Slice` (to represent byte slices and strings, as needed for pattern
|
||||
|
|
@ -217,7 +217,7 @@ function with no arguments, except that constants do not allow local (named)
|
|||
variables at the time of writing this guide.
|
||||
|
||||
A stack frame is defined by the `Frame` type in
|
||||
[rustc_const_eval/src/interpret/eval_context.rs](https://github.com/rust-lang/rust/blob/master/compiler/rustc_const_eval/src/interpret/eval_context.rs)
|
||||
[rustc_const_eval/src/interpret/eval_context.rs](https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc_const_eval/src/interpret/eval_context.rs)
|
||||
and contains all the local
|
||||
variables memory (`None` at the start of evaluation). Each frame refers to the
|
||||
evaluation of either the root constant or subsequent calls to `const fn`. The
|
||||
|
|
@ -229,7 +229,7 @@ The frames are just a `Vec<Frame>`, there's no way to actually refer to a
|
|||
memory that can be referred to are `Allocation`s.
|
||||
|
||||
The interpreter now calls the `step` method (in
|
||||
[rustc_const_eval/src/interpret/step.rs](https://github.com/rust-lang/rust/blob/master/compiler/rustc_const_eval/src/interpret/step.rs)
|
||||
[rustc_const_eval/src/interpret/step.rs](https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc_const_eval/src/interpret/step.rs)
|
||||
) until it either returns an error or has no further statements to execute. Each
|
||||
statement will now initialize or modify the locals or the virtual memory
|
||||
referred to by a local. This might require evaluating other constants or
|
||||
|
|
|
|||
|
|
@ -145,7 +145,7 @@ when contributing to Rust under [the git section](./git.md).
|
|||
[about-pull-requests]: https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/proposing-changes-to-your-work-with-pull-requests/about-pull-requests
|
||||
[development-models]: https://docs.github.com/en/pull-requests/collaborating-with-pull-requests/getting-started/about-collaborative-development-models#fork-and-pull-model
|
||||
[t-compiler]: https://rust-lang.zulipchat.com/#narrow/stream/131828-t-compiler
|
||||
[triagebot]: https://github.com/rust-lang/rust/blob/master/triagebot.toml
|
||||
[triagebot]: https://github.com/rust-lang/rust/blob/HEAD/triagebot.toml
|
||||
|
||||
### Keeping your branch up-to-date
|
||||
|
||||
|
|
@ -357,8 +357,8 @@ is located in [`src/doc`] in the tree, and standard API documentation is generat
|
|||
from the source code itself (e.g. [`library/std/src/lib.rs`][std-root]). Documentation pull requests
|
||||
function in the same way as other pull requests.
|
||||
|
||||
[`src/doc`]: https://github.com/rust-lang/rust/tree/master/src/doc
|
||||
[std-root]: https://github.com/rust-lang/rust/blob/master/library/std/src/lib.rs#L1
|
||||
[`src/doc`]: https://github.com/rust-lang/rust/tree/HEAD/src/doc
|
||||
[std-root]: https://github.com/rust-lang/rust/blob/HEAD/library/std/src/lib.rs#L1
|
||||
|
||||
To find documentation-related issues, use the [A-docs label].
|
||||
|
||||
|
|
|
|||
|
|
@ -167,7 +167,7 @@ before the PR is merged. They are also not allowed to be broken on master in
|
|||
the week leading up to the beta cut.
|
||||
|
||||
[git submodules]: https://git-scm.com/book/en/v2/Git-Tools-Submodules
|
||||
[`.gitmodules`]: https://github.com/rust-lang/rust/blob/master/.gitmodules
|
||||
[`.gitmodules`]: https://github.com/rust-lang/rust/blob/HEAD/.gitmodules
|
||||
[The Rust Reference]: https://github.com/rust-lang/reference/
|
||||
[toolstate website]: https://rust-lang-nursery.github.io/rust-toolstate/
|
||||
[Toolstate chapter]: https://forge.rust-lang.org/infra/toolstate.html
|
||||
|
|
|
|||
|
|
@ -59,7 +59,7 @@ you could run `git shortlog -n 1.68.2.. compiler/rustc_resolve/`. Ignore any com
|
|||
"Rollup merge" or commits by `@bors` (see [CI contribution procedures](./contributing.md#ci) for
|
||||
more information about these commits).
|
||||
|
||||
[map]: https://github.com/rust-lang/rust/blob/master/triagebot.toml
|
||||
[map]: https://github.com/rust-lang/rust/blob/HEAD/triagebot.toml
|
||||
|
||||
### Etiquette
|
||||
|
||||
|
|
|
|||
|
|
@ -638,7 +638,7 @@ checkouts for you.
|
|||
|
||||
Some commits contain large reformatting changes that don't otherwise change functionality. They can
|
||||
be instructed to be ignored by `git blame` through
|
||||
[`.git-blame-ignore-revs`](https://github.com/rust-lang/rust/blob/master/.git-blame-ignore-revs):
|
||||
[`.git-blame-ignore-revs`](https://github.com/rust-lang/rust/blob/HEAD/.git-blame-ignore-revs):
|
||||
|
||||
1. Configure `git blame` to use `.git-blame-ignore-revs` as the list of commits to ignore: `git
|
||||
config blame.ignorerevsfile .git-blame-ignore-revs`
|
||||
|
|
|
|||
|
|
@ -375,8 +375,8 @@ After the edition team has given the go-ahead, the process for stabilizing an ed
|
|||
- Update [`LATEST_STABLE_EDITION`].
|
||||
- Update [`Edition::is_stable`].
|
||||
- Hunt and find any document that refers to edition by number, and update it:
|
||||
- [`--edition` flag](https://github.com/rust-lang/rust/blob/master/src/doc/rustc/src/command-line-arguments.md#--edition-specify-the-edition-to-use)
|
||||
- [Rustdoc attributes](https://github.com/rust-lang/rust/blob/master/src/doc/rustdoc/src/write-documentation/documentation-tests.md#attributes)
|
||||
- [`--edition` flag](https://github.com/rust-lang/rust/blob/HEAD/src/doc/rustc/src/command-line-arguments.md#--edition-specify-the-edition-to-use)
|
||||
- [Rustdoc attributes](https://github.com/rust-lang/rust/blob/HEAD/src/doc/rustdoc/src/write-documentation/documentation-tests.md#attributes)
|
||||
- Clean up any tests that use the `//@ edition` header to remove the `-Zunstable-options` flag to ensure they are indeed stable. Note: Ideally this should be automated, see [#133582].
|
||||
- Bless any tests that change.
|
||||
- Update `lint-docs` to default to the new edition.
|
||||
|
|
|
|||
|
|
@ -7,7 +7,7 @@ simplest mechanisms are the `#[rustc_if_this_changed]` and
|
|||
`#[rustc_then_this_would_need]` annotations. These are used in [ui] tests to test
|
||||
whether the expected set of paths exist in the dependency graph.
|
||||
|
||||
[`tests/ui/dep-graph/dep-graph-caller-callee.rs`]: https://github.com/rust-lang/rust/blob/master/tests/ui/dep-graph/dep-graph-caller-callee.rs
|
||||
[`tests/ui/dep-graph/dep-graph-caller-callee.rs`]: https://github.com/rust-lang/rust/blob/HEAD/tests/ui/dep-graph/dep-graph-caller-callee.rs
|
||||
[ui]: tests/ui.html
|
||||
|
||||
As an example, see [`tests/ui/dep-graph/dep-graph-caller-callee.rs`], or the
|
||||
|
|
|
|||
|
|
@ -1,8 +1,8 @@
|
|||
# `rust-lang/rust` Licenses
|
||||
|
||||
The `rustc` compiler source and standard library are dual licensed under the [Apache License v2.0](https://github.com/rust-lang/rust/blob/master/LICENSE-APACHE) and the [MIT License](https://github.com/rust-lang/rust/blob/master/LICENSE-MIT) unless otherwise specified.
|
||||
The `rustc` compiler source and standard library are dual licensed under the [Apache License v2.0](https://github.com/rust-lang/rust/blob/HEAD/LICENSE-APACHE) and the [MIT License](https://github.com/rust-lang/rust/blob/HEAD/LICENSE-MIT) unless otherwise specified.
|
||||
|
||||
Detailed licensing information is available in the [COPYRIGHT document](https://github.com/rust-lang/rust/blob/master/COPYRIGHT) of the `rust-lang/rust` repository.
|
||||
Detailed licensing information is available in the [COPYRIGHT document](https://github.com/rust-lang/rust/blob/HEAD/COPYRIGHT) of the `rust-lang/rust` repository.
|
||||
|
||||
## Guidelines for reviewers
|
||||
|
||||
|
|
|
|||
|
|
@ -130,8 +130,8 @@ and `mir-opt` tests can be refreshed by running:
|
|||
./x test tests/mir-opt --bless
|
||||
```
|
||||
|
||||
[`tests/mir-opt/coverage/instrument_coverage.rs`]: https://github.com/rust-lang/rust/blob/master/tests/mir-opt/coverage/instrument_coverage.rs
|
||||
[`tests/coverage`]: https://github.com/rust-lang/rust/tree/master/tests/coverage
|
||||
[`src/tools/coverage-dump`]: https://github.com/rust-lang/rust/tree/master/src/tools/coverage-dump
|
||||
[`tests/coverage-run-rustdoc`]: https://github.com/rust-lang/rust/tree/master/tests/coverage-run-rustdoc
|
||||
[`tests/codegen-llvm/instrument-coverage/testprog.rs`]: https://github.com/rust-lang/rust/blob/master/tests/mir-opt/coverage/instrument_coverage.rs
|
||||
[`tests/mir-opt/coverage/instrument_coverage.rs`]: https://github.com/rust-lang/rust/blob/HEAD/tests/mir-opt/coverage/instrument_coverage.rs
|
||||
[`tests/coverage`]: https://github.com/rust-lang/rust/tree/HEAD/tests/coverage
|
||||
[`src/tools/coverage-dump`]: https://github.com/rust-lang/rust/tree/HEAD/src/tools/coverage-dump
|
||||
[`tests/coverage-run-rustdoc`]: https://github.com/rust-lang/rust/tree/HEAD/tests/coverage-run-rustdoc
|
||||
[`tests/codegen-llvm/instrument-coverage/testprog.rs`]: https://github.com/rust-lang/rust/blob/HEAD/tests/mir-opt/coverage/instrument_coverage.rs
|
||||
|
|
|
|||
|
|
@ -226,7 +226,7 @@ a macro author may want to introduce a new name to the context where the macro
|
|||
was called. Alternately, the macro author may be defining a variable for use
|
||||
only within the macro (i.e. it should not be visible outside the macro).
|
||||
|
||||
[code_dir]: https://github.com/rust-lang/rust/tree/master/compiler/rustc_expand/src/mbe
|
||||
[code_dir]: https://github.com/rust-lang/rust/tree/HEAD/compiler/rustc_expand/src/mbe
|
||||
[code_mp]: https://doc.rust-lang.org/nightly/nightly-rustc/rustc_expand/mbe/macro_parser
|
||||
[code_mr]: https://doc.rust-lang.org/nightly/nightly-rustc/rustc_expand/mbe/macro_rules
|
||||
[code_parse_int]: https://doc.rust-lang.org/nightly/nightly-rustc/rustc_expand/mbe/macro_parser/struct.TtParser.html#method.parse_tt
|
||||
|
|
|
|||
|
|
@ -188,6 +188,6 @@ known to be uninitialized) to run these checks.
|
|||
|
||||
[RFC 320]: https://rust-lang.github.io/rfcs/0320-nonzeroing-dynamic-drop.html
|
||||
[reference-drop]: https://doc.rust-lang.org/reference/destructors.html
|
||||
[drops]: https://github.com/rust-lang/rust/blob/master/compiler/rustc_mir_dataflow/src/elaborate_drops.rs
|
||||
[drops-shim]: https://github.com/rust-lang/rust/blob/master/compiler/rustc_mir_transform/src/shim.rs
|
||||
[drops-transform]: https://github.com/rust-lang/rust/blob/master/compiler/rustc_mir_transform/src/elaborate_drops.rs
|
||||
[drops]: https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc_mir_dataflow/src/elaborate_drops.rs
|
||||
[drops-shim]: https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc_mir_transform/src/shim.rs
|
||||
[drops-transform]: https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc_mir_transform/src/elaborate_drops.rs
|
||||
|
|
|
|||
|
|
@ -70,8 +70,8 @@ optimizes it, and returns the improved MIR.
|
|||
If you have any questions along the way, feel free to ask in
|
||||
`#t-compiler/wg-mir-opt` on Zulip.
|
||||
|
||||
[mir-opt-test-readme]: https://github.com/rust-lang/rust/blob/master/tests/mir-opt/README.md
|
||||
[`compiler/rustc_mir_transform/src`]: https://github.com/rust-lang/rust/tree/master/compiler/rustc_mir_transform/src
|
||||
[mir-opt-test-readme]: https://github.com/rust-lang/rust/blob/HEAD/tests/mir-opt/README.md
|
||||
[`compiler/rustc_mir_transform/src`]: https://github.com/rust-lang/rust/tree/HEAD/compiler/rustc_mir_transform/src
|
||||
[`remove_storage_markers`]: https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc_mir_transform/src/remove_storage_markers.rs
|
||||
[`run_optimization_passes()`]: https://doc.rust-lang.org/nightly/nightly-rustc/rustc_mir_transform/fn.run_optimization_passes.html
|
||||
|
||||
|
|
|
|||
|
|
@ -104,4 +104,4 @@ triage.**
|
|||
|
||||
[rustbot]: https://github.com/rust-lang/triagebot/
|
||||
[`ping`]: https://forge.rust-lang.org/triagebot/pinging.html
|
||||
[`triagebot.toml`]: https://github.com/rust-lang/rust/blob/master/triagebot.toml
|
||||
[`triagebot.toml`]: https://github.com/rust-lang/rust/blob/HEAD/triagebot.toml
|
||||
|
|
|
|||
|
|
@ -63,10 +63,10 @@ Parsing is organized by semantic construct. Separate
|
|||
directory. The source file name follows the construct name. For example, the
|
||||
following files are found in the `parser`:
|
||||
|
||||
- [`expr.rs`](https://github.com/rust-lang/rust/blob/master/compiler/rustc_parse/src/parser/expr.rs)
|
||||
- [`pat.rs`](https://github.com/rust-lang/rust/blob/master/compiler/rustc_parse/src/parser/pat.rs)
|
||||
- [`ty.rs`](https://github.com/rust-lang/rust/blob/master/compiler/rustc_parse/src/parser/ty.rs)
|
||||
- [`stmt.rs`](https://github.com/rust-lang/rust/blob/master/compiler/rustc_parse/src/parser/stmt.rs)
|
||||
- [`expr.rs`](https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc_parse/src/parser/expr.rs)
|
||||
- [`pat.rs`](https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc_parse/src/parser/pat.rs)
|
||||
- [`ty.rs`](https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc_parse/src/parser/ty.rs)
|
||||
- [`stmt.rs`](https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc_parse/src/parser/stmt.rs)
|
||||
|
||||
This naming scheme is used across many compiler stages. You will find either a
|
||||
file or directory with the same name across the parsing, lowering, type
|
||||
|
|
@ -164,7 +164,7 @@ the final binary.
|
|||
[parse_mod]: https://doc.rust-lang.org/nightly/nightly-rustc/rustc_parse/parser/struct.Parser.html#method.parse_mod
|
||||
[parse_nonterminal]: https://doc.rust-lang.org/nightly/nightly-rustc/rustc_parse/parser/struct.Parser.html#method.parse_nonterminal
|
||||
[parser]: https://doc.rust-lang.org/nightly/nightly-rustc/rustc_parse/index.html
|
||||
[rustc_parse_parser_dir]: https://github.com/rust-lang/rust/tree/master/compiler/rustc_parse/src/parser
|
||||
[rustc_parse_parser_dir]: https://github.com/rust-lang/rust/tree/HEAD/compiler/rustc_parse/src/parser
|
||||
[String interning]: https://en.wikipedia.org/wiki/String_interning
|
||||
[thir]: ./thir.md
|
||||
|
||||
|
|
|
|||
|
|
@ -110,4 +110,4 @@ In particular, in std's [runtime service],
|
|||
the call to the user-provided `main` function is wrapped in `catch_unwind`.
|
||||
|
||||
|
||||
[runtime service]: https://github.com/rust-lang/rust/blob/master/library/std/src/rt.rs
|
||||
[runtime service]: https://github.com/rust-lang/rust/blob/HEAD/library/std/src/rt.rs
|
||||
|
|
|
|||
|
|
@ -129,8 +129,8 @@ in [run-make tests][rmake-tests] (the relevant tests have `pgo` in their name).
|
|||
There is also a [codegen test][codegen-test] that checks that some expected
|
||||
instrumentation artifacts show up in LLVM IR.
|
||||
|
||||
[rmake-tests]: https://github.com/rust-lang/rust/tree/master/tests/run-make
|
||||
[codegen-test]: https://github.com/rust-lang/rust/blob/master/tests/codegen-llvm/pgo-instrumentation.rs
|
||||
[rmake-tests]: https://github.com/rust-lang/rust/tree/HEAD/tests/run-make
|
||||
[codegen-test]: https://github.com/rust-lang/rust/blob/HEAD/tests/codegen-llvm/pgo-instrumentation.rs
|
||||
|
||||
## Additional information
|
||||
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@
|
|||
This page describes [`rustdoc`]'s passes and modes. For an overview of `rustdoc`,
|
||||
see the ["Rustdoc overview" chapter](./rustdoc.md).
|
||||
|
||||
[`rustdoc`]: https://github.com/rust-lang/rust/tree/master/src/tools/rustdoc
|
||||
[`rustdoc`]: https://github.com/rust-lang/rust/tree/HEAD/src/tools/rustdoc
|
||||
|
||||
## From Crate to Clean
|
||||
|
||||
|
|
@ -72,8 +72,8 @@ which describe the publicly-documentable items in the target crate.
|
|||
[`Attributes`]: https://doc.rust-lang.org/nightly/nightly-rustc/rustdoc/clean/types/struct.Attributes.html
|
||||
[`clean_doc_module`]: https://doc.rust-lang.org/nightly/nightly-rustc/rustdoc/clean/fn.clean_doc_module.html
|
||||
[`clean::types::Crate`]: https://doc.rust-lang.org/nightly/nightly-rustc/rustdoc/clean/types/struct.Crate.html
|
||||
[`clean/mod.rs`]: https://github.com/rust-lang/rust/blob/master/src/librustdoc/clean/mod.rs
|
||||
[`core.rs`]: https://github.com/rust-lang/rust/blob/master/src/librustdoc/core.rs
|
||||
[`clean/mod.rs`]: https://github.com/rust-lang/rust/blob/HEAD/src/librustdoc/clean/mod.rs
|
||||
[`core.rs`]: https://github.com/rust-lang/rust/blob/HEAD/src/librustdoc/core.rs
|
||||
[`Item`]: https://doc.rust-lang.org/nightly/nightly-rustc/rustdoc/clean/types/struct.Item.html
|
||||
[`run_global_ctxt`]: https://doc.rust-lang.org/nightly/nightly-rustc/rustdoc/core/fn.run_global_ctxt.html
|
||||
[`rustc_hir::Crate`]: https://doc.rust-lang.org/nightly/nightly-rustc/rustc_hir/hir/struct.Crate.html
|
||||
|
|
@ -150,7 +150,7 @@ There is also a [`stripper`] module in `librustdoc/passes`, but it is a
|
|||
collection of utility functions for the `strip-*` passes and is not a pass
|
||||
itself.
|
||||
|
||||
[`librustdoc/passes`]: https://github.com/rust-lang/rust/tree/master/src/librustdoc/passes
|
||||
[`librustdoc/passes`]: https://github.com/rust-lang/rust/tree/HEAD/src/librustdoc/passes
|
||||
[`stripper`]: https://doc.rust-lang.org/nightly/nightly-rustc/rustdoc/passes/stripper/index.html
|
||||
|
||||
## From Clean To HTML
|
||||
|
|
@ -193,13 +193,13 @@ the test-runner code can find all the `doctest`s in the crate.
|
|||
|
||||
[`find_codes`]: https://doc.rust-lang.org/nightly/nightly-rustc/src/rustdoc/html/markdown.rs.html#749-818
|
||||
[`formats::renderer::run_format`]: https://doc.rust-lang.org/nightly/nightly-rustc/rustdoc/formats/renderer/fn.run_format.html
|
||||
[`html/format.rs`]: https://github.com/rust-lang/rust/blob/master/src/librustdoc/html/format.rs
|
||||
[`html/layout.rs`]: https://github.com/rust-lang/rust/blob/master/src/librustdoc/html/layout.rs
|
||||
[`html/markdown.rs`]: https://github.com/rust-lang/rust/blob/master/src/librustdoc/html/markdown.rs
|
||||
[`html/render/mod.rs`]: https://github.com/rust-lang/rust/blob/master/src/librustdoc/html/render/mod.rs
|
||||
[`html/render/print_item.rs`]: https://github.com/rust-lang/rust/blob/master/src/librustdoc/html/render/print_item.rs
|
||||
[`librustdoc/formats`]: https://github.com/rust-lang/rust/tree/master/src/librustdoc/formats
|
||||
[`librustdoc/html`]: https://github.com/rust-lang/rust/tree/master/src/librustdoc/html
|
||||
[`html/format.rs`]: https://github.com/rust-lang/rust/blob/HEAD/src/librustdoc/html/format.rs
|
||||
[`html/layout.rs`]: https://github.com/rust-lang/rust/blob/HEAD/src/librustdoc/html/layout.rs
|
||||
[`html/markdown.rs`]: https://github.com/rust-lang/rust/blob/HEAD/src/librustdoc/html/markdown.rs
|
||||
[`html/render/mod.rs`]: https://github.com/rust-lang/rust/blob/HEAD/src/librustdoc/html/render/mod.rs
|
||||
[`html/render/print_item.rs`]: https://github.com/rust-lang/rust/blob/HEAD/src/librustdoc/html/render/print_item.rs
|
||||
[`librustdoc/formats`]: https://github.com/rust-lang/rust/tree/HEAD/src/librustdoc/formats
|
||||
[`librustdoc/html`]: https://github.com/rust-lang/rust/tree/HEAD/src/librustdoc/html
|
||||
[`print_item`]: https://doc.rust-lang.org/nightly/nightly-rustc/rustdoc/html/render/print_item/fn.print_item.html
|
||||
[Askama]: https://docs.rs/askama/latest/askama/
|
||||
|
||||
|
|
|
|||
|
|
@ -10,5 +10,5 @@ These use a NodeJS-based tool called [`browser-UI-test`] that uses [puppeteer] t
|
|||
[Rustdoc test suites]: ../tests/compiletest.md#rustdoc-test-suites
|
||||
[`browser-UI-test`]: https://github.com/GuillaumeGomez/browser-UI-test/
|
||||
[puppeteer]: https://pptr.dev/
|
||||
[rustdoc-gui-readme]: https://github.com/rust-lang/rust/blob/master/tests/rustdoc-gui/README.md
|
||||
[rustdoc-gui-readme]: https://github.com/rust-lang/rust/blob/HEAD/tests/rustdoc-gui/README.md
|
||||
[goml-script]: https://github.com/GuillaumeGomez/browser-UI-test/blob/master/goml-script.md
|
||||
|
|
|
|||
|
|
@ -73,11 +73,11 @@ To use the `@ is` with a `<path>` of `$.index[?(@.docs == "foo")].some.field` an
|
|||
it needs to be a JSON string value.
|
||||
|
||||
[json output]: https://doc.rust-lang.org/nightly/rustdoc/unstable-features.html#json-output
|
||||
[jsondocck]: https://github.com/rust-lang/rust/tree/master/src/tools/jsondocck
|
||||
[jsondoclint]: https://github.com/rust-lang/rust/tree/master/src/tools/jsondoclint
|
||||
[jsondocck]: https://github.com/rust-lang/rust/tree/HEAD/src/tools/jsondocck
|
||||
[jsondoclint]: https://github.com/rust-lang/rust/tree/HEAD/src/tools/jsondoclint
|
||||
[aux-build]: ../tests/compiletest.md#building-auxiliary-crates
|
||||
[`Id`]: https://doc.rust-lang.org/nightly/nightly-rustc/rustdoc_json_types/struct.Id.html
|
||||
[document private items]: https://doc.rust-lang.org/nightly/rustdoc/command-line-arguments.html#--document-private-items-show-items-that-are-not-public
|
||||
[`directive.rs`]: https://github.com/rust-lang/rust/blob/master/src/tools/jsondocck/src/directive.rs
|
||||
[`directive.rs`]: https://github.com/rust-lang/rust/blob/HEAD/src/tools/jsondocck/src/directive.rs
|
||||
[shlex]: https://docs.rs/shlex/1.3.0/shlex/index.html
|
||||
[JSONPath]: https://www.rfc-editor.org/rfc/rfc9535.html
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ Internally, [`compiletest`] invokes the supplementary checker script [`htmldocck
|
|||
|
||||
[Rustdoc test suites]: ../tests/compiletest.md#rustdoc-test-suites
|
||||
[`compiletest`]: ../tests/compiletest.md
|
||||
[`htmldocck.py`]: https://github.com/rust-lang/rust/blob/master/src/etc/htmldocck.py
|
||||
[`htmldocck.py`]: https://github.com/rust-lang/rust/blob/HEAD/src/etc/htmldocck.py
|
||||
|
||||
## HtmlDocCk Directives
|
||||
|
||||
|
|
|
|||
|
|
@ -467,7 +467,7 @@ want the libs team to be able to add new items without causing unrelated
|
|||
tests to fail, but standalone tests will use it more often.
|
||||
|
||||
The `ResultsTable` and `ParsedQuery` types are specified in
|
||||
[`rustdoc.d.ts`](https://github.com/rust-lang/rust/blob/master/src/librustdoc/html/static/js/rustdoc.d.ts).
|
||||
[`rustdoc.d.ts`](https://github.com/rust-lang/rust/blob/HEAD/src/librustdoc/html/static/js/rustdoc.d.ts).
|
||||
|
||||
For example, imagine we needed to fix a bug where a function named
|
||||
`constructor` couldn't be found. To do this, write two files:
|
||||
|
|
|
|||
|
|
@ -19,7 +19,7 @@ and [queries] are discussed in the linked chapters.
|
|||
|
||||
[HIR]: ./hir.md
|
||||
[queries]: ./query.md
|
||||
[rd]: https://github.com/rust-lang/rust/tree/master/src/librustdoc
|
||||
[rd]: https://github.com/rust-lang/rust/tree/HEAD/src/librustdoc
|
||||
|
||||
`librustdoc` performs two major steps after that to render a set of
|
||||
documentation:
|
||||
|
|
@ -35,7 +35,7 @@ lots of details, but that's the high-level overview.
|
|||
using the project in [`src/tools/rustdoc`][bin]. Note that literally all that
|
||||
does is call the `main()` that's in this crate's `lib.rs`, though.)
|
||||
|
||||
[bin]: https://github.com/rust-lang/rust/tree/master/src/tools/rustdoc
|
||||
[bin]: https://github.com/rust-lang/rust/tree/HEAD/src/tools/rustdoc
|
||||
|
||||
## Cheat sheet
|
||||
|
||||
|
|
|
|||
|
|
@ -85,8 +85,8 @@ sanitizer. When sanitizer is unsupported on given target, sanitizers tests will
|
|||
be ignored. This behaviour is controlled by compiletest `needs-sanitizer-*`
|
||||
directives.
|
||||
|
||||
[test-cg]: https://github.com/rust-lang/rust/tree/master/tests/codegen-llvm
|
||||
[test-ui]: https://github.com/rust-lang/rust/tree/master/tests/ui/sanitizer
|
||||
[test-cg]: https://github.com/rust-lang/rust/tree/HEAD/tests/codegen-llvm
|
||||
[test-ui]: https://github.com/rust-lang/rust/tree/HEAD/tests/ui/sanitizer
|
||||
|
||||
## Enabling sanitizer on a new target
|
||||
|
||||
|
|
|
|||
|
|
@ -137,11 +137,11 @@ and `Encodable`.
|
|||
|
||||
[`MetadataDecodable`]: https://doc.rust-lang.org/nightly/nightly-rustc/rustc_macros/derive.MetadataDecodable.html
|
||||
[`MetadataEncodable`]: https://doc.rust-lang.org/nightly/nightly-rustc/rustc_macros/derive.MetadataEncodable.html
|
||||
[`rustc_macros`]: https://github.com/rust-lang/rust/tree/master/compiler/rustc_macros
|
||||
[`rustc_macros`]: https://github.com/rust-lang/rust/tree/HEAD/compiler/rustc_macros
|
||||
[`rustc_metadata::rmeta::`]: https://doc.rust-lang.org/nightly/nightly-rustc/rustc_metadata/rmeta/index.html
|
||||
[`rustc_metadata::rmeta::decoder::DecodeContext`]: https://doc.rust-lang.org/nightly/nightly-rustc/rustc_metadata/rmeta/decoder/struct.DecodeContext.html
|
||||
[`rustc_metadata::rmeta::encoder::EncodeContext`]: https://doc.rust-lang.org/nightly/nightly-rustc/rustc_metadata/rmeta/encoder/struct.EncodeContext.html
|
||||
[`rustc_middle`]: https://github.com/rust-lang/rust/tree/master/compiler/rustc_middle
|
||||
[`rustc_middle`]: https://github.com/rust-lang/rust/tree/HEAD/compiler/rustc_middle
|
||||
|
||||
## Shorthands
|
||||
|
||||
|
|
|
|||
|
|
@ -56,7 +56,7 @@ Finally, we check whether the item bounds of the opaque hold for the expected ty
|
|||
[source][item-bounds-ck].
|
||||
|
||||
[norm]: https://github.com/rust-lang/rust/blob/384d26fc7e3bdd7687cc17b2662b091f6017ec2a/compiler/rustc_trait_selection/src/solve/normalizes_to/opaque_types.rs#L13
|
||||
[coherence-example]: https://github.com/rust-lang/rust/blob/master/tests/ui/type-alias-impl-trait/coherence/coherence_different_hidden_ty.rs
|
||||
[coherence-example]: https://github.com/rust-lang/rust/blob/HEAD/tests/ui/type-alias-impl-trait/coherence/coherence_different_hidden_ty.rs
|
||||
[placeholder-ck]: https://github.com/rust-lang/rust/blob/384d26fc7e3bdd7687cc17b2662b091f6017ec2a/compiler/rustc_trait_selection/src/solve/normalizes_to/opaque_types.rs#L33
|
||||
[check-storage]: https://github.com/rust-lang/rust/blob/384d26fc7e3bdd7687cc17b2662b091f6017ec2a/compiler/rustc_trait_selection/src/solve/normalizes_to/opaque_types.rs#L51-L52
|
||||
[eq-prev]: https://github.com/rust-lang/rust/blob/384d26fc7e3bdd7687cc17b2662b091f6017ec2a/compiler/rustc_trait_selection/src/solve/normalizes_to/opaque_types.rs#L51-L59
|
||||
|
|
|
|||
|
|
@ -60,7 +60,7 @@ As the new implementation has to be able to eagerly handle nested goals for
|
|||
candidate selection, always doing so reduces complexity. It may also enable
|
||||
us to merge more candidates in the future.
|
||||
|
||||
[eval-nested]: https://github.com/rust-lang/rust/blob/master/compiler/rustc_trait_selection/src/traits/select/mod.rs#L1271-L1277
|
||||
[eval-nested]: https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc_trait_selection/src/traits/select/mod.rs#L1271-L1277
|
||||
[fulfill-nested]: https://github.com/rust-lang/rust/blob/df8ac8f1d74cffb96a93ae702d16e224f5b9ee8c/compiler/rustc_trait_selection/src/traits/fulfill.rs#L708-L712
|
||||
|
||||
### Nested goals are evaluated until reaching a fixpoint
|
||||
|
|
|
|||
|
|
@ -104,17 +104,17 @@ if something { /* XXX */ }
|
|||
|
||||
[rust-lang/rust#32409]: https://github.com/rust-lang/rust/issues/32409
|
||||
[std-guide-stabilization]: https://std-dev-guide.rust-lang.org/feature-lifecycle/stabilization.html
|
||||
[src-version]: https://github.com/rust-lang/rust/blob/master/src/version
|
||||
[src-version]: https://github.com/rust-lang/rust/blob/HEAD/src/version
|
||||
[forge-versions]: https://forge.rust-lang.org/#current-release-versions
|
||||
[forge-release-process]: https://forge.rust-lang.org/release/process.html
|
||||
[`compiler/rustc_feature`]: https://doc.rust-lang.org/nightly/nightly-rustc/rustc_feature/index.html
|
||||
[`compiler/rustc_feature/src/accepted.rs`]: https://github.com/rust-lang/rust/tree/master/compiler/rustc_feature/src/accepted.rs
|
||||
[`compiler/rustc_feature/src/unstable.rs`]: https://github.com/rust-lang/rust/tree/master/compiler/rustc_feature/src/unstable.rs
|
||||
[`compiler/rustc_feature/src/accepted.rs`]: https://github.com/rust-lang/rust/tree/HEAD/compiler/rustc_feature/src/accepted.rs
|
||||
[`compiler/rustc_feature/src/unstable.rs`]: https://github.com/rust-lang/rust/tree/HEAD/compiler/rustc_feature/src/unstable.rs
|
||||
[The Reference]: https://github.com/rust-lang/reference
|
||||
[The Book]: https://github.com/rust-lang/book
|
||||
[Rust by Example]: https://github.com/rust-lang/rust-by-example
|
||||
[`Unstable Book`]: https://doc.rust-lang.org/unstable-book/index.html
|
||||
[`src/doc/unstable-book`]: https://github.com/rust-lang/rust/tree/master/src/doc/unstable-book
|
||||
[`src/doc/unstable-book`]: https://github.com/rust-lang/rust/tree/HEAD/src/doc/unstable-book
|
||||
|
||||
## Team nominations
|
||||
|
||||
|
|
|
|||
|
|
@ -157,7 +157,7 @@ $ rustc my_mod.rs -Z unpretty=hir
|
|||
[`TestDesc`]: https://doc.rust-lang.org/test/struct.TestDesc.html
|
||||
[ast]: ./ast-validation.md
|
||||
[Ident]: https://doc.rust-lang.org/nightly/nightly-rustc/rustc_span/symbol/struct.Ident.html
|
||||
[rustc_ast]: https://github.com/rust-lang/rust/tree/master/compiler/rustc_ast
|
||||
[rustc_ast]: https://github.com/rust-lang/rust/tree/HEAD/compiler/rustc_ast
|
||||
[Symbol]: https://doc.rust-lang.org/nightly/nightly-rustc/rustc_span/symbol/struct.Symbol.html
|
||||
[test]: https://doc.rust-lang.org/test/index.html
|
||||
[tdaf]: https://doc.rust-lang.org/test/struct.TestDescAndFn.html
|
||||
|
|
|
|||
|
|
@ -39,7 +39,7 @@ to work with that stand the test of time (i.e. if a test fails or need to be
|
|||
modified several years later, how can we make it easier for them?).
|
||||
|
||||
[compiletest]: compiletest.md
|
||||
[`tests/ui`]: https://github.com/rust-lang/rust/tree/master/tests/ui/
|
||||
[`tests/ui`]: https://github.com/rust-lang/rust/tree/HEAD/tests/ui/
|
||||
|
||||
## UI test walkthrough
|
||||
|
||||
|
|
|
|||
|
|
@ -333,7 +333,7 @@ platform.
|
|||
These builders are running on a special pool of builders set up and maintained
|
||||
for us by GitHub.
|
||||
|
||||
[Docker container]: https://github.com/rust-lang/rust/tree/master/src/ci/docker
|
||||
[Docker container]: https://github.com/rust-lang/rust/tree/HEAD/src/ci/docker
|
||||
|
||||
## Caching
|
||||
|
||||
|
|
@ -460,11 +460,11 @@ this:
|
|||
5. All of the build settings are listed on the line with the text, `build.configure-args`
|
||||
|
||||
[GitHub Actions]: https://github.com/rust-lang/rust/actions
|
||||
[`jobs.yml`]: https://github.com/rust-lang/rust/blob/master/src/ci/github-actions/jobs.yml
|
||||
[`.github/workflows/ci.yml`]: https://github.com/rust-lang/rust/blob/master/.github/workflows/ci.yml
|
||||
[`src/ci/citool`]: https://github.com/rust-lang/rust/blob/master/src/ci/citool
|
||||
[`jobs.yml`]: https://github.com/rust-lang/rust/blob/HEAD/src/ci/github-actions/jobs.yml
|
||||
[`.github/workflows/ci.yml`]: https://github.com/rust-lang/rust/blob/HEAD/.github/workflows/ci.yml
|
||||
[`src/ci/citool`]: https://github.com/rust-lang/rust/blob/HEAD/src/ci/citool
|
||||
[bors]: https://github.com/bors
|
||||
[homu]: https://github.com/rust-lang/homu
|
||||
[merge queue]: https://bors.rust-lang.org/queue/rust
|
||||
[dist-x86_64-linux]: https://github.com/rust-lang/rust/blob/master/src/ci/docker/host-x86_64/dist-x86_64-linux/Dockerfile
|
||||
[dist-x86_64-linux]: https://github.com/rust-lang/rust/blob/HEAD/src/ci/docker/host-x86_64/dist-x86_64-linux/Dockerfile
|
||||
[the GitHub Actions workflows page]: https://github.com/rust-lang/rust/actions
|
||||
|
|
|
|||
|
|
@ -54,8 +54,8 @@ incremental compilation. The various suites are defined in
|
|||
|
||||
The following test suites are available, with links for more information:
|
||||
|
||||
[`tests`]: https://github.com/rust-lang/rust/blob/master/tests
|
||||
[`src/tools/compiletest/src/common.rs`]: https://github.com/rust-lang/rust/tree/master/src/tools/compiletest/src/common.rs
|
||||
[`tests`]: https://github.com/rust-lang/rust/blob/HEAD/tests
|
||||
[`src/tools/compiletest/src/common.rs`]: https://github.com/rust-lang/rust/tree/HEAD/src/tools/compiletest/src/common.rs
|
||||
|
||||
### Compiler-specific test suites
|
||||
|
||||
|
|
@ -135,7 +135,7 @@ The directives for pretty-printing tests are:
|
|||
of the two pretty-printing rounds will be compared to ensure that the
|
||||
pretty-printed output converges to a steady state.
|
||||
|
||||
[`tests/pretty`]: https://github.com/rust-lang/rust/tree/master/tests/pretty
|
||||
[`tests/pretty`]: https://github.com/rust-lang/rust/tree/HEAD/tests/pretty
|
||||
|
||||
### Incremental tests
|
||||
|
||||
|
|
@ -187,7 +187,7 @@ still pass.
|
|||
cause an Internal Compiler Error (ICE). This is a highly specialized directive
|
||||
to check that the incremental cache continues to work after an ICE.
|
||||
|
||||
[`tests/incremental`]: https://github.com/rust-lang/rust/tree/master/tests/incremental
|
||||
[`tests/incremental`]: https://github.com/rust-lang/rust/tree/HEAD/tests/incremental
|
||||
|
||||
|
||||
### Debuginfo tests
|
||||
|
|
@ -272,7 +272,7 @@ For example, `./x test tests/debuginfo -- --debugger gdb` will only test GDB com
|
|||
>
|
||||
> Otherwise the lldb debuginfo tests can produce crashes in mysterious ways.
|
||||
|
||||
[`tests/debuginfo`]: https://github.com/rust-lang/rust/tree/master/tests/debuginfo
|
||||
[`tests/debuginfo`]: https://github.com/rust-lang/rust/tree/HEAD/tests/debuginfo
|
||||
|
||||
> **Note on acquiring `cdb.exe` on Windows 11**
|
||||
>
|
||||
|
|
@ -299,7 +299,7 @@ See also the [assembly tests](#assembly-tests) for a similar set of tests.
|
|||
If you need to work with `#![no_std]` cross-compiling tests, consult the
|
||||
[`minicore` test auxiliary](./minicore.md) chapter.
|
||||
|
||||
[`tests/codegen-llvm`]: https://github.com/rust-lang/rust/tree/master/tests/codegen-llvm
|
||||
[`tests/codegen-llvm`]: https://github.com/rust-lang/rust/tree/HEAD/tests/codegen-llvm
|
||||
[FileCheck]: https://llvm.org/docs/CommandGuide/FileCheck.html
|
||||
|
||||
|
||||
|
|
@ -322,7 +322,7 @@ See also the [codegen tests](#codegen-tests) for a similar set of tests.
|
|||
If you need to work with `#![no_std]` cross-compiling tests, consult the
|
||||
[`minicore` test auxiliary](./minicore.md) chapter.
|
||||
|
||||
[`tests/assembly-llvm`]: https://github.com/rust-lang/rust/tree/master/tests/assembly-llvm
|
||||
[`tests/assembly-llvm`]: https://github.com/rust-lang/rust/tree/HEAD/tests/assembly-llvm
|
||||
|
||||
|
||||
### Codegen-units tests
|
||||
|
|
@ -343,7 +343,7 @@ where `cgu` is a space separated list of the CGU names and the linkage
|
|||
information in brackets. For example: `//~ MONO_ITEM static function::FOO @@
|
||||
statics[Internal]`
|
||||
|
||||
[`tests/codegen-units`]: https://github.com/rust-lang/rust/tree/master/tests/codegen-units
|
||||
[`tests/codegen-units`]: https://github.com/rust-lang/rust/tree/HEAD/tests/codegen-units
|
||||
|
||||
|
||||
### Mir-opt tests
|
||||
|
|
@ -392,7 +392,7 @@ problematic in the presence of pointers in constants or other bit width
|
|||
dependent things. In that case you can add `// EMIT_MIR_FOR_EACH_BIT_WIDTH` to
|
||||
your test, causing separate files to be generated for 32bit and 64bit systems.
|
||||
|
||||
[`tests/mir-opt`]: https://github.com/rust-lang/rust/tree/master/tests/mir-opt
|
||||
[`tests/mir-opt`]: https://github.com/rust-lang/rust/tree/HEAD/tests/mir-opt
|
||||
|
||||
|
||||
### `run-make` tests
|
||||
|
|
@ -481,9 +481,9 @@ Then add a corresponding entry to `"rust-analyzer.linkedProjects"`
|
|||
],
|
||||
```
|
||||
|
||||
[`tests/run-make`]: https://github.com/rust-lang/rust/tree/master/tests/run-make
|
||||
[`tests/run-make-cargo`]: https://github.com/rust-lang/rust/tree/master/tests/run-make-cargo
|
||||
[`run_make_support`]: https://github.com/rust-lang/rust/tree/master/src/tools/run-make-support
|
||||
[`tests/run-make`]: https://github.com/rust-lang/rust/tree/HEAD/tests/run-make
|
||||
[`tests/run-make-cargo`]: https://github.com/rust-lang/rust/tree/HEAD/tests/run-make-cargo
|
||||
[`run_make_support`]: https://github.com/rust-lang/rust/tree/HEAD/src/tools/run-make-support
|
||||
|
||||
### Coverage tests
|
||||
|
||||
|
|
@ -553,9 +553,9 @@ The tests in [`tests/coverage-run-rustdoc`] also run instrumented doctests and
|
|||
include them in the coverage report. This avoids having to build rustdoc when
|
||||
only running the main `coverage` suite.
|
||||
|
||||
[`tests/coverage`]: https://github.com/rust-lang/rust/tree/master/tests/coverage
|
||||
[`src/tools/coverage-dump`]: https://github.com/rust-lang/rust/tree/master/src/tools/coverage-dump
|
||||
[`tests/coverage-run-rustdoc`]: https://github.com/rust-lang/rust/tree/master/tests/coverage-run-rustdoc
|
||||
[`tests/coverage`]: https://github.com/rust-lang/rust/tree/HEAD/tests/coverage
|
||||
[`src/tools/coverage-dump`]: https://github.com/rust-lang/rust/tree/HEAD/src/tools/coverage-dump
|
||||
[`tests/coverage-run-rustdoc`]: https://github.com/rust-lang/rust/tree/HEAD/tests/coverage-run-rustdoc
|
||||
|
||||
### Crash tests
|
||||
|
||||
|
|
@ -602,7 +602,7 @@ Make sure that your fix actually fixes the root cause of the issue and not just
|
|||
a subset first. The issue numbers can be found in the file name or the `//@
|
||||
known-bug` directive inside the test file.
|
||||
|
||||
[`tests/crashes`]: https://github.com/rust-lang/rust/tree/master/tests/crashes
|
||||
[`tests/crashes`]: https://github.com/rust-lang/rust/tree/HEAD/tests/crashes
|
||||
["untracked" crashes]: https://github.com/rust-lang/rust/issues?q=is%3Aissue+state%3Aopen+label%3AI-ICE%2CI-crash+label%3AT-compiler+label%3AS-has-mcve+-label%3AS-bug-has-test
|
||||
[labeling]: https://forge.rust-lang.org/release/issue-triaging.html#applying-and-removing-labels
|
||||
|
||||
|
|
|
|||
|
|
@ -38,7 +38,7 @@ sections that describe the command in more detail if available. This list may
|
|||
not be exhaustive. Directives can generally be found by browsing the
|
||||
`TestProps` structure found in [`directives.rs`] from the compiletest source.
|
||||
|
||||
[`directives.rs`]: https://github.com/rust-lang/rust/tree/master/src/tools/compiletest/src/directives.rs
|
||||
[`directives.rs`]: https://github.com/rust-lang/rust/tree/HEAD/src/tools/compiletest/src/directives.rs
|
||||
|
||||
### Assembly
|
||||
|
||||
|
|
@ -385,7 +385,7 @@ described below:
|
|||
- Example: `x86_64-unknown-linux-gnu`
|
||||
|
||||
See
|
||||
[`tests/ui/argfile/commandline-argfile.rs`](https://github.com/rust-lang/rust/blob/master/tests/ui/argfile/commandline-argfile.rs)
|
||||
[`tests/ui/argfile/commandline-argfile.rs`](https://github.com/rust-lang/rust/blob/HEAD/tests/ui/argfile/commandline-argfile.rs)
|
||||
for an example of a test that uses this substitution.
|
||||
|
||||
[output normalization]: ui.md#normalization
|
||||
|
|
@ -534,6 +534,6 @@ example, `//@ failure-status: 1`, `self.props.failure_status` will evaluate to
|
|||
1, as `parse_failure_status()` will have overridden the `TestProps` default
|
||||
value, for that test specifically.
|
||||
|
||||
[`src/tools/compiletest/src/directives.rs`]: https://github.com/rust-lang/rust/tree/master/src/tools/compiletest/src/directives.rs
|
||||
[`src/tools/compiletest/src/common.rs`]: https://github.com/rust-lang/rust/tree/master/src/tools/compiletest/src/common.rs
|
||||
[`src/tools/compiletest/src/runtest.rs`]: https://github.com/rust-lang/rust/tree/master/src/tools/compiletest/src/runtest.rs
|
||||
[`src/tools/compiletest/src/directives.rs`]: https://github.com/rust-lang/rust/tree/HEAD/src/tools/compiletest/src/directives.rs
|
||||
[`src/tools/compiletest/src/common.rs`]: https://github.com/rust-lang/rust/tree/HEAD/src/tools/compiletest/src/common.rs
|
||||
[`src/tools/compiletest/src/runtest.rs`]: https://github.com/rust-lang/rust/tree/HEAD/src/tools/compiletest/src/runtest.rs
|
||||
|
|
|
|||
|
|
@ -54,7 +54,7 @@ Some additional notes about using the interactive mode:
|
|||
/bin/bash` where `<CONTAINER>` is the container name like `4ba195e95cef`.
|
||||
|
||||
[Docker]: https://www.docker.com/
|
||||
[`src/ci/docker`]: https://github.com/rust-lang/rust/tree/master/src/ci/docker
|
||||
[`src/ci/docker/run.sh`]: https://github.com/rust-lang/rust/blob/master/src/ci/docker/run.sh
|
||||
[`src/ci/run.sh`]: https://github.com/rust-lang/rust/blob/master/src/ci/run.sh
|
||||
[`enable-docker-ipv6.sh`]: https://github.com/rust-lang/rust/blob/master/src/ci/scripts/enable-docker-ipv6.sh
|
||||
[`src/ci/docker`]: https://github.com/rust-lang/rust/tree/HEAD/src/ci/docker
|
||||
[`src/ci/docker/run.sh`]: https://github.com/rust-lang/rust/blob/HEAD/src/ci/docker/run.sh
|
||||
[`src/ci/run.sh`]: https://github.com/rust-lang/rust/blob/HEAD/src/ci/run.sh
|
||||
[`enable-docker-ipv6.sh`]: https://github.com/rust-lang/rust/blob/HEAD/src/ci/scripts/enable-docker-ipv6.sh
|
||||
|
|
|
|||
|
|
@ -24,7 +24,7 @@ The [Compiletest chapter][compiletest] goes into detail on how to use this tool.
|
|||
> Example: `./x test tests/ui`
|
||||
|
||||
[compiletest]: compiletest.md
|
||||
[`tests`]: https://github.com/rust-lang/rust/tree/master/tests
|
||||
[`tests`]: https://github.com/rust-lang/rust/tree/HEAD/tests
|
||||
|
||||
### Package tests
|
||||
|
||||
|
|
@ -64,7 +64,7 @@ package tests:
|
|||
* `--doc` — Only runs documentation tests in the package.
|
||||
* `--no-doc` — Run all tests *except* documentation tests.
|
||||
|
||||
[tidy-unit-tests]: https://github.com/rust-lang/rust/blob/master/src/tools/tidy/src/unit_tests.rs
|
||||
[tidy-unit-tests]: https://github.com/rust-lang/rust/blob/HEAD/src/tools/tidy/src/unit_tests.rs
|
||||
|
||||
### Tidy
|
||||
|
||||
|
|
@ -74,7 +74,7 @@ conventions, such as rejecting long lines. There is more information in the
|
|||
|
||||
> Examples: `./x test tidy`
|
||||
|
||||
[Tidy Readme]: https://github.com/rust-lang/rust/blob/master/src/tools/tidy/Readme.md
|
||||
[Tidy Readme]: https://github.com/rust-lang/rust/blob/HEAD/src/tools/tidy/Readme.md
|
||||
|
||||
|
||||
### Formatting
|
||||
|
|
@ -142,7 +142,7 @@ In CI, some tools are allowed to fail. Failures send notifications to the
|
|||
corresponding teams, and is tracked on the [toolstate website]. More information
|
||||
can be found in the [toolstate documentation].
|
||||
|
||||
[`src/tools`]: https://github.com/rust-lang/rust/tree/master/src/tools/
|
||||
[`src/tools`]: https://github.com/rust-lang/rust/tree/HEAD/src/tools/
|
||||
[toolstate documentation]: https://forge.rust-lang.org/infra/toolstate.html
|
||||
[toolstate website]: https://rust-lang-nursery.github.io/rust-toolstate/
|
||||
|
||||
|
|
|
|||
|
|
@ -71,4 +71,4 @@ impl Copy for Meow {} // `Copy` here is provided by `minicore`
|
|||
fn meow() {}
|
||||
```
|
||||
|
||||
[`minicore`]: https://github.com/rust-lang/rust/tree/master/tests/auxiliary/minicore.rs
|
||||
[`minicore`]: https://github.com/rust-lang/rust/tree/HEAD/tests/auxiliary/minicore.rs
|
||||
|
|
|
|||
|
|
@ -368,11 +368,11 @@ export TEST_DEVICE_ADDR="127.0.0.1:12345"
|
|||
# FIXME(madsmtm): Allow debuginfo tests to work (maybe needs `.dSYM` folder to be copied to the target?).
|
||||
```
|
||||
|
||||
[armhf-gnu]: https://github.com/rust-lang/rust/tree/master/src/ci/docker/host-x86_64/armhf-gnu/Dockerfile
|
||||
[armhf-gnu]: https://github.com/rust-lang/rust/tree/HEAD/src/ci/docker/host-x86_64/armhf-gnu/Dockerfile
|
||||
[QEMU]: https://www.qemu.org/
|
||||
[remote-test-client]: https://github.com/rust-lang/rust/tree/master/src/tools/remote-test-client
|
||||
[remote-test-server]: https://github.com/rust-lang/rust/tree/master/src/tools/remote-test-server
|
||||
[src/bootstrap/src/core/build_steps/test.rs]: https://github.com/rust-lang/rust/blob/master/src/bootstrap/src/core/build_steps/test.rs
|
||||
[remote-test-client]: https://github.com/rust-lang/rust/tree/HEAD/src/tools/remote-test-client
|
||||
[remote-test-server]: https://github.com/rust-lang/rust/tree/HEAD/src/tools/remote-test-server
|
||||
[src/bootstrap/src/core/build_steps/test.rs]: https://github.com/rust-lang/rust/blob/HEAD/src/bootstrap/src/core/build_steps/test.rs
|
||||
|
||||
## Testing tests on wasi (wasm32-wasip1)
|
||||
|
||||
|
|
@ -393,7 +393,7 @@ In my case I git-cloned it next to my rust folder, so it was `../wasi-sdk/build/
|
|||
Now, tests should just run, you don't have to set up anything else.
|
||||
|
||||
[wasi sdk repository]: https://github.com/WebAssembly/wasi-sdk
|
||||
[wasm32-wasip1 target support page]: https://github.com/rust-lang/rust/blob/master/src/doc/rustc/src/platform-support/wasm32-wasip1.md#building-the-target.
|
||||
[wasm32-wasip1 target support page]: https://github.com/rust-lang/rust/blob/HEAD/src/doc/rustc/src/platform-support/wasm32-wasip1.md#building-the-target.
|
||||
|
||||
|
||||
[`tests/ui`]: https://github.com/rust-lang/rust/tree/master/tests/ui
|
||||
[`tests/ui`]: https://github.com/rust-lang/rust/tree/HEAD/tests/ui
|
||||
|
|
|
|||
|
|
@ -12,14 +12,14 @@ the resulting program](#controlling-passfail-expectations) to verify its
|
|||
behavior.
|
||||
|
||||
For a survey of each subdirectory's purpose under `tests/ui`, consult the
|
||||
[SUMMARY.md](https://github.com/rust-lang/rust/tree/master/tests/ui/SUMMARY.md).
|
||||
[SUMMARY.md](https://github.com/rust-lang/rust/tree/HEAD/tests/ui/SUMMARY.md).
|
||||
This is useful if you write a new test, and are looking for a category to
|
||||
place it in.
|
||||
|
||||
If you need to work with `#![no_std]` cross-compiling tests, consult the
|
||||
[`minicore` test auxiliary](./minicore.md) chapter.
|
||||
|
||||
[`tests/ui`]: https://github.com/rust-lang/rust/blob/master/tests/ui
|
||||
[`tests/ui`]: https://github.com/rust-lang/rust/blob/HEAD/tests/ui
|
||||
|
||||
## General structure of a test
|
||||
|
||||
|
|
@ -174,8 +174,8 @@ The corresponding reference file will use the normalized output to test both
|
|||
Please see [`ui/transmute/main.rs`][mrs] and [`main.stderr`] for a concrete
|
||||
usage example.
|
||||
|
||||
[mrs]: https://github.com/rust-lang/rust/blob/master/tests/ui/transmute/main.rs
|
||||
[`main.stderr`]: https://github.com/rust-lang/rust/blob/master/tests/ui/transmute/main.stderr
|
||||
[mrs]: https://github.com/rust-lang/rust/blob/HEAD/tests/ui/transmute/main.rs
|
||||
[`main.stderr`]: https://github.com/rust-lang/rust/blob/HEAD/tests/ui/transmute/main.stderr
|
||||
|
||||
## Error annotations
|
||||
|
||||
|
|
@ -548,7 +548,7 @@ For example, if your test is related to closures, you should put it in
|
|||
`tests/ui/closures`. When you reach the limit, you could increase it by tweaking
|
||||
[here][ui test tidy].
|
||||
|
||||
[ui test tidy]: https://github.com/rust-lang/rust/blob/master/src/tools/tidy/src/ui_tests.rs
|
||||
[ui test tidy]: https://github.com/rust-lang/rust/blob/HEAD/src/tools/tidy/src/ui_tests.rs
|
||||
|
||||
## Rustfix tests
|
||||
|
||||
|
|
|
|||
|
|
@ -80,7 +80,7 @@ RUSTC_LOG=[typeck{key=.*name_of_item.*}]
|
|||
|
||||
Different queries have different arguments. You can find a list of queries and
|
||||
their arguments in
|
||||
[`rustc_middle/src/query/mod.rs`](https://github.com/rust-lang/rust/blob/master/compiler/rustc_middle/src/query/mod.rs#L18).
|
||||
[`rustc_middle/src/query/mod.rs`](https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc_middle/src/query/mod.rs#L18).
|
||||
|
||||
## Broad module level filters
|
||||
|
||||
|
|
|
|||
|
|
@ -38,4 +38,4 @@ implementing them in rustc. We map our struct, trait, and impl declarations
|
|||
into logical inference rules in the lowering module in rustc.
|
||||
|
||||
[chalk]: https://github.com/rust-lang/chalk
|
||||
[rustc_traits]: https://github.com/rust-lang/rust/tree/master/compiler/rustc_traits
|
||||
[rustc_traits]: https://github.com/rust-lang/rust/tree/HEAD/compiler/rustc_traits
|
||||
|
|
|
|||
|
|
@ -42,7 +42,7 @@ In terms of code, these types are defined in
|
|||
[`chalk-ir/src/lib.rs`][chalk_ir] in chalk.
|
||||
|
||||
[pphhf]: https://rust-lang.github.io/chalk/book/bibliography.html#pphhf
|
||||
[traits_mod]: https://github.com/rust-lang/rust/blob/master/compiler/rustc_middle/src/traits/mod.rs
|
||||
[traits_mod]: https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc_middle/src/traits/mod.rs
|
||||
[chalk_ir]: https://github.com/rust-lang/chalk/blob/master/chalk-ir/src/lib.rs
|
||||
|
||||
<a id="domain-goals"></a>
|
||||
|
|
|
|||
|
|
@ -104,7 +104,7 @@ and all that does is index into the list of substitutions with the index of the
|
|||
[`TypeFolder`]: https://doc.rust-lang.org/nightly/nightly-rustc/rustc_middle/ty/trait.TypeFolder.html
|
||||
[`fold_ty`]: https://doc.rust-lang.org/nightly/nightly-rustc/rustc_middle/ty/trait.TypeFolder.html#method.fold_ty
|
||||
[`ArgFolder`]: https://doc.rust-lang.org/nightly/nightly-rustc/rustc_type_ir/binder/struct.ArgFolder.html
|
||||
[here]: https://github.com/rust-lang/rust/blob/master/compiler/rustc_macros/src/type_foldable.rs
|
||||
[here]: https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc_macros/src/type_foldable.rs
|
||||
[actual folder]: https://github.com/rust-lang/rust/blob/75ff3110ac6d8a0259023b83fd20d7ab295f8dd6/src/librustc_middle/ty/subst.rs#L440-L451
|
||||
[fold_ty]: https://github.com/rust-lang/rust/blob/75ff3110ac6d8a0259023b83fd20d7ab295f8dd6/src/librustc_middle/ty/subst.rs#L512-L536
|
||||
[ty_for_param]: https://github.com/rust-lang/rust/blob/75ff3110ac6d8a0259023b83fd20d7ab295f8dd6/src/librustc_middle/ty/subst.rs#L552-L587
|
||||
|
|
|
|||
|
|
@ -75,4 +75,4 @@ the ast that searches for unsafe blocks, functions and implementations, as well
|
|||
as certain unsafe attributes.
|
||||
|
||||
[Unsafe traits]: https://doc.rust-lang.org/reference/items/traits.html#unsafe-traits
|
||||
[coherence]: https://github.com/rust-lang/rust/blob/master/compiler/rustc_hir_analysis/src/coherence/unsafety.rs
|
||||
[coherence]: https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc_hir_analysis/src/coherence/unsafety.rs
|
||||
|
|
|
|||
|
|
@ -271,4 +271,4 @@ about the feature.
|
|||
|
||||
Steps to stabilize the feature can be found at [Stabilizing Features](./stabilization_guide.md).
|
||||
|
||||
[relnotes]: https://github.com/rust-lang/rust/blob/master/RELEASES.md
|
||||
[relnotes]: https://github.com/rust-lang/rust/blob/HEAD/RELEASES.md
|
||||
|
|
|
|||
|
|
@ -4,8 +4,8 @@ src = "src"
|
|||
title = "The rustc book"
|
||||
|
||||
[output.html]
|
||||
git-repository-url = "https://github.com/rust-lang/rust/tree/master/src/doc/rustc"
|
||||
edit-url-template = "https://github.com/rust-lang/rust/edit/master/src/doc/rustc/{path}"
|
||||
git-repository-url = "https://github.com/rust-lang/rust/tree/HEAD/src/doc/rustc"
|
||||
edit-url-template = "https://github.com/rust-lang/rust/edit/HEAD/src/doc/rustc/{path}"
|
||||
additional-css = ["theme/pagetoc.css"]
|
||||
additional-js = ["theme/pagetoc.js"]
|
||||
|
||||
|
|
|
|||
|
|
@ -501,7 +501,7 @@ By default, `rustc` prefers to statically link dependencies. This option will
|
|||
indicate that dynamic linking should be used if possible if both a static and
|
||||
dynamic versions of a library are available.
|
||||
|
||||
There is [an internal algorithm](https://github.com/rust-lang/rust/blob/master/compiler/rustc_metadata/src/dependency_format.rs)
|
||||
There is [an internal algorithm](https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc_metadata/src/dependency_format.rs)
|
||||
for determining whether or not it is possible to statically or dynamically link
|
||||
with a dependency.
|
||||
|
||||
|
|
|
|||
|
|
@ -9,4 +9,4 @@ If you would like to contribute to _this_ book, you can find its source in the
|
|||
rustc source at [src/doc/rustc][rustc_book].
|
||||
|
||||
[rustc_dev_guide]: https://rustc-dev-guide.rust-lang.org/
|
||||
[rustc_book]: https://github.com/rust-lang/rust/tree/master/src/doc/rustc
|
||||
[rustc_book]: https://github.com/rust-lang/rust/tree/HEAD/src/doc/rustc
|
||||
|
|
|
|||
|
|
@ -66,7 +66,7 @@ equivalent.
|
|||
| Forward-edge control flow protection | Yes | No, `-Z sanitizer=cfi` | Nightly |
|
||||
| Backward-edge control flow protection (e.g., shadow and safe stack) | Yes | No, `-Z sanitizer=shadow-call-stack,safestack` | Nightly |
|
||||
|
||||
[^all-targets]: See <https://github.com/rust-lang/rust/tree/master/compiler/rustc_target/src/spec>
|
||||
[^all-targets]: See <https://github.com/rust-lang/rust/tree/HEAD/compiler/rustc_target/src/spec>
|
||||
for a list of targets and their default options.
|
||||
|
||||
### Position-independent executable
|
||||
|
|
|
|||
|
|
@ -20,7 +20,7 @@ BE8 architecture is the default big-endian architecture for Arm since [Armv6](ht
|
|||
The target is cross-compiled. This target supports `std` in the normal way (indeed only nominal changes are required from the standard Arm configuration).
|
||||
|
||||
## Target definition
|
||||
The target definition can be seen [here](https://github.com/rust-lang/rust/blob/master/compiler/rustc_target/src/spec/targets/armeb_unknown_linux_gnueabi.rs). In particular, it should be noted that the `features` specify that this target is built for the Armv8 core. Though this can likely be modified as required.
|
||||
The target definition can be seen [here](https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc_target/src/spec/targets/armeb_unknown_linux_gnueabi.rs). In particular, it should be noted that the `features` specify that this target is built for the Armv8 core. Though this can likely be modified as required.
|
||||
|
||||
## Building the target
|
||||
Because it is Tier 3, rust does not yet ship pre-compiled artifacts for this target.
|
||||
|
|
|
|||
|
|
@ -133,9 +133,9 @@ target's existence, and add `std` support as a follow-up once you've added
|
|||
support for the target in `cc` and `libc`.
|
||||
|
||||
[tier3example]: https://github.com/rust-lang/rust/pull/94872
|
||||
[platform_template]: https://github.com/rust-lang/rust/blob/master/src/doc/rustc/src/platform-support/TEMPLATE.md
|
||||
[summary]: https://github.com/rust-lang/rust/blob/master/src/doc/rustc/src/SUMMARY.md
|
||||
[platformsupport]: https://github.com/rust-lang/rust/blob/master/src/doc/rustc/src/platform-support.md
|
||||
[platform_template]: https://github.com/rust-lang/rust/blob/HEAD/src/doc/rustc/src/platform-support/TEMPLATE.md
|
||||
[summary]: https://github.com/rust-lang/rust/blob/HEAD/src/doc/rustc/src/SUMMARY.md
|
||||
[platformsupport]: https://github.com/rust-lang/rust/blob/HEAD/src/doc/rustc/src/platform-support.md
|
||||
[rust_compiler_team]: https://www.rust-lang.org/governance/teams/compiler
|
||||
[`rust-lang/rust`]: https://github.com/rust-lang/rust
|
||||
[rustc_dev_guide_add_target]: https://rustc-dev-guide.rust-lang.org/building/new-target.html
|
||||
|
|
|
|||
|
|
@ -3,7 +3,7 @@ src = "src"
|
|||
title = "The rustdoc book"
|
||||
|
||||
[output.html]
|
||||
git-repository-url = "https://github.com/rust-lang/rust/tree/master/src/doc/rustdoc"
|
||||
git-repository-url = "https://github.com/rust-lang/rust/tree/HEAD/src/doc/rustdoc"
|
||||
|
||||
[output.html.redirect]
|
||||
"/what-to-include.html" = "write-documentation/what-to-include.html"
|
||||
|
|
|
|||
|
|
@ -117,7 +117,7 @@ rustdoc --theme awesome.css src/lib.rs
|
|||
|
||||
Here is an example of a new theme, [Ayu].
|
||||
|
||||
[Ayu]: https://github.com/rust-lang/rust/blob/master/src/librustdoc/html/static/css/rustdoc.css#L2384-L2574
|
||||
[Ayu]: https://github.com/rust-lang/rust/blob/HEAD/src/librustdoc/html/static/css/rustdoc.css#L2384-L2574
|
||||
[API Guidelines]: https://rust-lang.github.io/api-guidelines/documentation.html#rustdoc-does-not-show-unhelpful-implementation-details-c-hidden
|
||||
[Documentation tests]: documentation-tests.md
|
||||
[on this blog]: https://blog.guillaume-gomez.fr/articles/2016-09-16+Generating+doc+with+rustdoc+and+a+custom+theme
|
||||
|
|
|
|||
|
|
@ -3,5 +3,5 @@ title = "The Rust Unstable Book"
|
|||
author = "The Rust Community"
|
||||
|
||||
[output.html]
|
||||
git-repository-url = "https://github.com/rust-lang/rust/tree/master/src/doc/unstable-book"
|
||||
edit-url-template = "https://github.com/rust-lang/rust/edit/master/src/doc/unstable-book/{path}"
|
||||
git-repository-url = "https://github.com/rust-lang/rust/tree/HEAD/src/doc/unstable-book"
|
||||
edit-url-template = "https://github.com/rust-lang/rust/edit/HEAD/src/doc/unstable-book/{path}"
|
||||
|
|
|
|||
|
|
@ -14,7 +14,7 @@ named `__rustc_codegen_backend` with a signature of `fn() -> Box<dyn rustc_codeg
|
|||
## Example
|
||||
See also the [`codegen-backend/hotplug`] test for a working example.
|
||||
|
||||
[`codegen-backend/hotplug`]: https://github.com/rust-lang/rust/tree/master/tests/ui-fulldeps/codegen-backend/hotplug.rs
|
||||
[`codegen-backend/hotplug`]: https://github.com/rust-lang/rust/tree/HEAD/tests/ui-fulldeps/codegen-backend/hotplug.rs
|
||||
|
||||
```rust,ignore (partial-example)
|
||||
use rustc_codegen_ssa::traits::CodegenBackend;
|
||||
|
|
|
|||
|
|
@ -37,7 +37,7 @@ Most lang items are defined by `core`, but if you're trying to build
|
|||
an executable without the `std` crate, you might run into the need
|
||||
for lang item definitions.
|
||||
|
||||
[personality]: https://github.com/rust-lang/rust/blob/master/library/std/src/sys/personality/gcc.rs
|
||||
[personality]: https://github.com/rust-lang/rust/blob/HEAD/library/std/src/sys/personality/gcc.rs
|
||||
|
||||
## Example: Implementing a `Box`
|
||||
|
||||
|
|
@ -113,4 +113,4 @@ return a valid pointer, and so needs to do the check internally.
|
|||
|
||||
An up-to-date list of all language items can be found [here] in the compiler code.
|
||||
|
||||
[here]: https://github.com/rust-lang/rust/blob/master/compiler/rustc_hir/src/lang_items.rs
|
||||
[here]: https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc_hir/src/lang_items.rs
|
||||
|
|
|
|||
|
|
@ -476,7 +476,7 @@ class MSVCEnumSyntheticProvider:
|
|||
Synthetic provider for sum-type enums on MSVC. For a detailed explanation of the internals,
|
||||
see:
|
||||
|
||||
https://github.com/rust-lang/rust/blob/master/compiler/rustc_codegen_llvm/src/debuginfo/metadata/enums/cpp_like.rs
|
||||
https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc_codegen_llvm/src/debuginfo/metadata/enums/cpp_like.rs
|
||||
"""
|
||||
|
||||
__slots__ = ["valobj", "variant", "value"]
|
||||
|
|
|
|||
|
|
@ -18,8 +18,8 @@
|
|||
look/feel at the std type level *anyways*...
|
||||
|
||||
References:
|
||||
https://github.com/rust-lang/rust/blob/master/src/libstd/collections/hash/map.rs
|
||||
https://github.com/rust-lang/rust/blob/master/src/libstd/collections/hash/set.rs
|
||||
https://github.com/rust-lang/rust/blob/HEAD/src/libstd/collections/hash/map.rs
|
||||
https://github.com/rust-lang/rust/blob/HEAD/src/libstd/collections/hash/set.rs
|
||||
https://github.com/rust-lang/hashbrown/blob/master/src/map.rs
|
||||
https://github.com/rust-lang/hashbrown/blob/master/src/set.rs
|
||||
https://github.com/rust-lang/hashbrown/blob/master/src/raw/mod.rs
|
||||
|
|
|
|||
|
|
@ -60,7 +60,7 @@ extern crate rustc_target;
|
|||
extern crate rustc_trait_selection;
|
||||
extern crate test;
|
||||
|
||||
// See docs in https://github.com/rust-lang/rust/blob/master/compiler/rustc/src/main.rs
|
||||
// See docs in https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc/src/main.rs
|
||||
// about jemalloc.
|
||||
#[cfg(feature = "jemalloc")]
|
||||
extern crate tikv_jemalloc_sys as jemalloc_sys;
|
||||
|
|
@ -123,7 +123,7 @@ mod visit_ast;
|
|||
mod visit_lib;
|
||||
|
||||
pub fn main() {
|
||||
// See docs in https://github.com/rust-lang/rust/blob/master/compiler/rustc/src/main.rs
|
||||
// See docs in https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc/src/main.rs
|
||||
// about jemalloc.
|
||||
#[cfg(feature = "jemalloc")]
|
||||
{
|
||||
|
|
|
|||
|
|
@ -8,4 +8,4 @@ description = """
|
|||
crate for integration of crates.io crates into rust-lang/rust standard library workspace
|
||||
"""
|
||||
|
||||
repository = "https://github.com/rust-lang/rust/tree/master/src/rustc-std-workspace"
|
||||
repository = "https://github.com/rust-lang/rust/tree/HEAD/src/rustc-std-workspace"
|
||||
|
|
|
|||
|
|
@ -8,4 +8,4 @@ description = """
|
|||
crate for integration of crates.io crates into rust-lang/rust standard library workspace
|
||||
"""
|
||||
|
||||
repository = "https://github.com/rust-lang/rust/tree/master/src/rustc-std-workspace"
|
||||
repository = "https://github.com/rust-lang/rust/tree/HEAD/src/rustc-std-workspace"
|
||||
|
|
|
|||
|
|
@ -8,4 +8,4 @@ description = """
|
|||
crate for integration of crates.io crates into rust-lang/rust standard library workspace
|
||||
"""
|
||||
|
||||
repository = "https://github.com/rust-lang/rust/tree/master/src/rustc-std-workspace"
|
||||
repository = "https://github.com/rust-lang/rust/tree/HEAD/src/rustc-std-workspace"
|
||||
|
|
|
|||
|
|
@ -112,7 +112,7 @@ written for. If not, update the version to the changelog version.
|
|||
|
||||
[changelog]: https://github.com/rust-lang/rust-clippy/blob/master/CHANGELOG.md
|
||||
[forge]: https://forge.rust-lang.org/
|
||||
[rust_master_tools]: https://github.com/rust-lang/rust/tree/master/src/tools/clippy
|
||||
[rust_master_tools]: https://github.com/rust-lang/rust/tree/HEAD/src/tools/clippy
|
||||
[rust_beta_tools]: https://github.com/rust-lang/rust/tree/beta/src/tools/clippy
|
||||
[rust_stable_tools]: https://github.com/rust-lang/rust/releases
|
||||
[`beta-accepted`]: https://github.com/rust-lang/rust-clippy/issues?q=label%3Abeta-accepted+
|
||||
|
|
|
|||
|
|
@ -67,7 +67,7 @@ impl_lint_pass!(DisallowedScriptIdents => [DISALLOWED_SCRIPT_IDENTS]);
|
|||
impl EarlyLintPass for DisallowedScriptIdents {
|
||||
fn check_crate(&mut self, cx: &EarlyContext<'_>, _: &ast::Crate) {
|
||||
// Implementation is heavily inspired by the implementation of [`non_ascii_idents`] lint:
|
||||
// https://github.com/rust-lang/rust/blob/master/compiler/rustc_lint/src/non_ascii_idents.rs
|
||||
// https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc_lint/src/non_ascii_idents.rs
|
||||
|
||||
let check_disallowed_script_idents = cx.builder.lint_level(DISALLOWED_SCRIPT_IDENTS).level != Level::Allow;
|
||||
if !check_disallowed_script_idents {
|
||||
|
|
|
|||
|
|
@ -13,7 +13,7 @@ extern crate rustc_interface;
|
|||
extern crate rustc_session;
|
||||
extern crate rustc_span;
|
||||
|
||||
// See docs in https://github.com/rust-lang/rust/blob/master/compiler/rustc/src/main.rs
|
||||
// See docs in https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc/src/main.rs
|
||||
// about jemalloc.
|
||||
#[cfg(feature = "jemalloc")]
|
||||
extern crate tikv_jemalloc_sys as jemalloc_sys;
|
||||
|
|
@ -189,7 +189,7 @@ const BUG_REPORT_URL: &str = "https://github.com/rust-lang/rust-clippy/issues/ne
|
|||
|
||||
#[expect(clippy::too_many_lines)]
|
||||
pub fn main() {
|
||||
// See docs in https://github.com/rust-lang/rust/blob/master/compiler/rustc/src/main.rs
|
||||
// See docs in https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc/src/main.rs
|
||||
// about jemalloc.
|
||||
#[cfg(feature = "jemalloc")]
|
||||
{
|
||||
|
|
|
|||
|
|
@ -56,7 +56,7 @@ impl From<Scalar> for IoError {
|
|||
}
|
||||
|
||||
// This mapping should match `decode_error_kind` in
|
||||
// <https://github.com/rust-lang/rust/blob/master/library/std/src/sys/pal/unix/mod.rs>.
|
||||
// <https://github.com/rust-lang/rust/blob/HEAD/library/std/src/sys/pal/unix/mod.rs>.
|
||||
const UNIX_IO_ERROR_TABLE: &[(&str, std::io::ErrorKind)] = {
|
||||
use std::io::ErrorKind::*;
|
||||
&[
|
||||
|
|
@ -103,7 +103,7 @@ const UNIX_IO_ERROR_TABLE: &[(&str, std::io::ErrorKind)] = {
|
|||
]
|
||||
};
|
||||
// This mapping should match `decode_error_kind` in
|
||||
// <https://github.com/rust-lang/rust/blob/master/library/std/src/sys/pal/windows/mod.rs>.
|
||||
// <https://github.com/rust-lang/rust/blob/HEAD/library/std/src/sys/pal/windows/mod.rs>.
|
||||
const WINDOWS_IO_ERROR_TABLE: &[(&str, std::io::ErrorKind)] = {
|
||||
use std::io::ErrorKind::*;
|
||||
// It's common for multiple error codes to map to the same io::ErrorKind. We have all for the
|
||||
|
|
|
|||
|
|
@ -76,7 +76,7 @@ stdenv.mkDerivation (self: {
|
|||
|
||||
meta = {
|
||||
description = "Helper for rust-lang/rust x.py";
|
||||
homepage = "https://github.com/rust-lang/rust/blob/master/src/tools/x";
|
||||
homepage = "https://github.com/rust-lang/rust/blob/HEAD/src/tools/x";
|
||||
license = lib.licenses.mit;
|
||||
mainProgram = "x";
|
||||
};
|
||||
|
|
|
|||
|
|
@ -98,7 +98,7 @@ macro_rules! m2 { () => ( ${invalid()} ) }
|
|||
|
||||
#[test]
|
||||
fn test_rustc_issue_57597() {
|
||||
// <https://github.com/rust-lang/rust/blob/master/tests/ui/issues/issue-57597.rs>
|
||||
// <https://github.com/rust-lang/rust/blob/HEAD/tests/ui/issues/issue-57597.rs>
|
||||
check(
|
||||
r#"
|
||||
macro_rules! m0 { ($($($i:ident)?)+) => {}; }
|
||||
|
|
|
|||
|
|
@ -7511,7 +7511,7 @@ Most lang items are defined by `core`, but if you're trying to build
|
|||
an executable without the `std` crate, you might run into the need
|
||||
for lang item definitions.
|
||||
|
||||
[personality]: https://github.com/rust-lang/rust/blob/master/library/std/src/sys/personality/gcc.rs
|
||||
[personality]: https://github.com/rust-lang/rust/blob/HEAD/library/std/src/sys/personality/gcc.rs
|
||||
|
||||
## Example: Implementing a `Box`
|
||||
|
||||
|
|
@ -7586,7 +7586,7 @@ return a valid pointer, and so needs to do the check internally.
|
|||
|
||||
An up-to-date list of all language items can be found [here] in the compiler code.
|
||||
|
||||
[here]: https://github.com/rust-lang/rust/blob/master/compiler/rustc_hir/src/lang_items.rs
|
||||
[here]: https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc_hir/src/lang_items.rs
|
||||
"##,
|
||||
default_severity: Severity::Allow,
|
||||
warn_since: None,
|
||||
|
|
|
|||
|
|
@ -31,7 +31,7 @@ interface ProjectJson {
|
|||
/// It should point to the directory where std,
|
||||
/// core, and friends can be found:
|
||||
///
|
||||
/// https://github.com/rust-lang/rust/tree/master/library.
|
||||
/// https://github.com/rust-lang/rust/tree/HEAD/library.
|
||||
///
|
||||
/// If provided, rust-analyzer automatically adds
|
||||
/// dependencies on sysroot crates. Conversely,
|
||||
|
|
|
|||
|
|
@ -2422,7 +2422,7 @@ See also [`max_width`](#max_width) and [`use_small_heuristics`](#use_small_heuri
|
|||
## `single_line_let_else_max_width`
|
||||
|
||||
Maximum line length for single line let-else statements.
|
||||
See the [let-else statement section of the Rust Style Guide](https://github.com/rust-lang/rust/blob/master/src/doc/style-guide/src/statements.md#else-blocks-let-else-statements) for more details on when a let-else statement may be written on a single line.
|
||||
See the [let-else statement section of the Rust Style Guide](https://github.com/rust-lang/rust/blob/HEAD/src/doc/style-guide/src/statements.md#else-blocks-let-else-statements) for more details on when a let-else statement may be written on a single line.
|
||||
A value of `0` (zero) means the divergent `else` block will always be formatted over multiple lines.
|
||||
Note this occurs when `use_small_heuristics` is set to `Off`.
|
||||
|
||||
|
|
|
|||
|
|
@ -157,7 +157,7 @@ format.
|
|||
|
||||
There are different nodes for every kind of item and expression in Rust. For
|
||||
more details see the source code in the compiler -
|
||||
[ast.rs](https://github.com/rust-lang/rust/blob/master/compiler/rustc_ast/src/ast.rs) - and/or the
|
||||
[ast.rs](https://github.com/rust-lang/rust/blob/HEAD/compiler/rustc_ast/src/ast.rs) - and/or the
|
||||
[docs](https://doc.rust-lang.org/nightly/nightly-rustc/rustc_ast/ast/index.html).
|
||||
|
||||
Many nodes in the AST (but not all, annoyingly) have a `Span`. A `Span` is a
|
||||
|
|
|
|||
|
|
@ -480,7 +480,7 @@ fn is_block_closure_forced_inner(expr: &ast::Expr, style_edition: StyleEdition)
|
|||
/// if true {...} else {...}
|
||||
/// |x| 5
|
||||
/// isn't parsed as (if true {...} else {...} | x) | 5
|
||||
// From https://github.com/rust-lang/rust/blob/master/src/libsyntax/parse/classify.rs.
|
||||
// From https://github.com/rust-lang/rust/blob/HEAD/src/libsyntax/parse/classify.rs.
|
||||
fn expr_requires_semi_to_be_stmt(e: &ast::Expr) -> bool {
|
||||
match e.kind {
|
||||
ast::ExprKind::If(..)
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue