diff options
| author | bors <bors@rust-lang.org> | 2021-02-18 07:22:30 +0000 |
|---|---|---|
| committer | bors <bors@rust-lang.org> | 2021-02-18 07:22:30 +0000 |
| commit | 25a2c13e9d19c18d5f3c2656e3d2dda086cb023b (patch) | |
| tree | a92a714e69cbe95c8238b7cabe602a30d7ba2f91 | |
| parent | d1462d8558cf4551608457f63d9b999185ebf3bf (diff) | |
| parent | 21283dae9e239792a58ec375c80743f4f0cf3002 (diff) | |
| download | rust-25a2c13e9d19c18d5f3c2656e3d2dda086cb023b.tar.gz rust-25a2c13e9d19c18d5f3c2656e3d2dda086cb023b.zip | |
Auto merge of #82249 - JohnTitor:rollup-3jbqija, r=JohnTitor
Rollup of 8 pull requests Successful merges: - #82055 (Add diagnostics for specific cases for const/type mismatch err) - #82155 (Use !Sync std::lazy::OnceCell in usefulness checking) - #82202 (add specs for riscv32/riscv64 musl targets) - #82203 (Move some tests to more reasonable directories - 4) - #82211 (make `suggest_setup` help messages better) - #82212 (Remove redundant rustc_data_structures path component) - #82240 (remove useless ?s (clippy::needless_question_marks)) - #82243 (Add more intra-doc links to std::io) Failed merges: r? `@ghost` `@rustbot` modify labels: rollup
| -rw-r--r-- | compiler/rustc_infer/src/infer/canonical/query_response.rs | 7 | ||||
| -rw-r--r-- | compiler/rustc_middle/src/ty/codec.rs | 8 | ||||
| -rw-r--r-- | compiler/rustc_middle/src/ty/print/pretty.rs | 4 | ||||
| -rw-r--r-- | compiler/rustc_middle/src/ty/relate.rs | 4 | ||||
| -rw-r--r-- | compiler/rustc_mir/src/interpret/traits.rs | 2 | ||||
| -rw-r--r-- | compiler/rustc_mir/src/util/generic_graphviz.rs | 8 | ||||
| -rw-r--r-- | compiler/rustc_mir_build/src/thir/pattern/usefulness.rs | 2 | ||||
| -rw-r--r-- | compiler/rustc_target/src/spec/mod.rs | 2 | ||||
| -rw-r--r-- | compiler/rustc_target/src/spec/riscv32gc_unknown_linux_musl.rs | 19 | ||||
| -rw-r--r-- | compiler/rustc_target/src/spec/riscv64gc_unknown_linux_musl.rs | 19 | ||||
| -rw-r--r-- | compiler/rustc_trait_selection/src/traits/query/type_op/custom.rs | 2 | ||||
| -rw-r--r-- | compiler/rustc_typeck/src/astconv/generics.rs | 65 | ||||
| -rw-r--r-- | compiler/rustc_typeck/src/check/method/suggest.rs | 2 | ||||
| -rw-r--r-- | library/std/src/io/stdio.rs | 8 | ||||
| -rw-r--r-- | src/bootstrap/bin/main.rs | 10 | ||||
| -rw-r--r-- | src/doc/rustc/src/platform-support.md | 2 | ||||
| -rw-r--r-- | src/test/ui/associated-types/issue-21726.rs (renamed from src/test/ui/issues/issue-21726.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/associated-types/issue-22560.rs (renamed from src/test/ui/issues/issue-22560.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/associated-types/issue-22560.stderr (renamed from src/test/ui/issues/issue-22560.stderr) | 0 | ||||
| -rw-r--r-- | src/test/ui/associated-types/issue-23595-2.rs (renamed from src/test/ui/issues/issue-23595-2.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/associated-types/issue-23595-2.stderr (renamed from src/test/ui/issues/issue-23595-2.stderr) | 0 | ||||
| -rw-r--r-- | src/test/ui/associated-types/issue-24204.rs (renamed from src/test/ui/issues/issue-24204.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/associated-types/issue-43784-associated-type.rs (renamed from src/test/ui/issues/issue-43784-associated-type.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/associated-types/issue-43784-associated-type.stderr (renamed from src/test/ui/issues/issue-43784-associated-type.stderr) | 0 | ||||
| -rw-r--r-- | src/test/ui/associated-types/project-defer-unification.rs (renamed from src/test/ui/project-defer-unification.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/async-await/issue-77993-2.rs (renamed from src/test/ui/issues/issue-77993-2.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/async-await/issue-77993-2.stderr (renamed from src/test/ui/issues/issue-77993-2.stderr) | 0 | ||||
| -rw-r--r-- | src/test/ui/async-await/repeat_count_const_in_async_fn.rs (renamed from src/test/ui/repeat_count_const_in_async_fn.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/const-generics/const-param-shadowing.stderr | 2 | ||||
| -rw-r--r-- | src/test/ui/const-generics/diagnostics.rs | 18 | ||||
| -rw-r--r-- | src/test/ui/const-generics/diagnostics.stderr | 52 | ||||
| -rw-r--r-- | src/test/ui/const-generics/invalid-enum.rs | 12 | ||||
| -rw-r--r-- | src/test/ui/const-generics/invalid-enum.stderr | 14 | ||||
| -rw-r--r-- | src/test/ui/consts/issue-13837.rs (renamed from src/test/ui/issues/issue-13837.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/consts/issue-17718-references.rs (renamed from src/test/ui/issues/issue-17718-references.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/consts/issue-17718-references.stderr (renamed from src/test/ui/issues/issue-17718-references.stderr) | 0 | ||||
| -rw-r--r-- | src/test/ui/consts/issue-32829.rs (renamed from src/test/ui/issues/issue-32829.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/consts/issue-32829.stderr (renamed from src/test/ui/issues/issue-32829.stderr) | 0 | ||||
| -rw-r--r-- | src/test/ui/consts/issue-33537.rs (renamed from src/test/ui/issues/issue-33537.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/consts/rvalue-static-promotion.rs (renamed from src/test/ui/rvalue-static-promotion.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/consts/write-to-static-mut-in-static.rs (renamed from src/test/ui/write-to-static-mut-in-static.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/consts/write-to-static-mut-in-static.stderr (renamed from src/test/ui/write-to-static-mut-in-static.stderr) | 0 | ||||
| -rw-r--r-- | src/test/ui/emit-artifact-notifications.nll.stderr | 1 | ||||
| -rw-r--r-- | src/test/ui/emit-artifact-notifications.polonius.stderr | 1 | ||||
| -rw-r--r-- | src/test/ui/emit-artifact-notifications.stderr | 1 | ||||
| -rw-r--r-- | src/test/ui/expr/if/expr-if-panic-pass.rs (renamed from src/test/ui/expr-if-panic.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/expr/if/issue-4201.rs (renamed from src/test/ui/issues/issue-4201.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/expr/if/issue-4201.stderr (renamed from src/test/ui/issues/issue-4201.stderr) | 0 | ||||
| -rw-r--r-- | src/test/ui/for-loop-while/cleanup-rvalue-during-if-and-while.rs (renamed from src/test/ui/cleanup-rvalue-during-if-and-while.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/hygiene/issue-40847.rs (renamed from src/test/ui/issues/issue-40847.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/issue-6157.rs (renamed from src/test/ui/issues/issue-6157.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/lint/issue-31924-non-snake-ffi.rs (renamed from src/test/ui/issues/issue-31924-non-snake-ffi.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/macros/html-literals.rs (renamed from src/test/ui/html-literals.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/parser/dotdotdot-expr.rs (renamed from src/test/ui/dotdotdot-expr.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/parser/dotdotdot-expr.stderr (renamed from src/test/ui/dotdotdot-expr.stderr) | 0 | ||||
| -rw-r--r-- | src/test/ui/parser/issue-20616-3.rs (renamed from src/test/ui/issues/issue-20616-3.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/parser/issue-20616-3.stderr (renamed from src/test/ui/issues/issue-20616-3.stderr) | 0 | ||||
| -rw-r--r-- | src/test/ui/parser/issue-44406.rs (renamed from src/test/ui/issues/issue-44406.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/parser/issue-44406.stderr (renamed from src/test/ui/issues/issue-44406.stderr) | 0 | ||||
| -rw-r--r-- | src/test/ui/parser/old-suffixes-are-really-forbidden.rs (renamed from src/test/ui/old-suffixes-are-really-forbidden.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/parser/old-suffixes-are-really-forbidden.stderr (renamed from src/test/ui/old-suffixes-are-really-forbidden.stderr) | 0 | ||||
| -rw-r--r-- | src/test/ui/parser/struct-literal-variant-in-if.rs (renamed from src/test/ui/struct-literal-variant-in-if.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/parser/struct-literal-variant-in-if.stderr (renamed from src/test/ui/struct-literal-variant-in-if.stderr) | 0 | ||||
| -rw-r--r-- | src/test/ui/range_inclusive_gate.rs | 14 | ||||
| -rw-r--r-- | src/test/ui/regions/regions-fn-subtyping-return-static-fail.nll.stderr (renamed from src/test/ui/regions-fn-subtyping-return-static-fail.nll.stderr) | 0 | ||||
| -rw-r--r-- | src/test/ui/regions/regions-fn-subtyping-return-static-fail.rs (renamed from src/test/ui/regions-fn-subtyping-return-static-fail.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/regions/regions-fn-subtyping-return-static-fail.stderr (renamed from src/test/ui/regions-fn-subtyping-return-static-fail.stderr) | 0 | ||||
| -rw-r--r-- | src/test/ui/rmeta/emit-artifact-notifications.nll.stderr | 1 | ||||
| -rw-r--r-- | src/test/ui/rmeta/emit-artifact-notifications.polonius.stderr | 1 | ||||
| -rw-r--r-- | src/test/ui/rmeta/emit-artifact-notifications.rs (renamed from src/test/ui/emit-artifact-notifications.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/rmeta/emit-artifact-notifications.stderr | 1 | ||||
| -rw-r--r-- | src/test/ui/rmeta/emit-metadata-obj.rs (renamed from src/test/ui/emit-metadata-obj.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/structs-enums/type-sizes.rs (renamed from src/test/ui/type-sizes.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/tuple/one-tuple.rs (renamed from src/test/ui/one-tuple.rs) | 0 | ||||
| -rw-r--r-- | src/test/ui/unboxed-closures/type-id-higher-rank.rs (renamed from src/test/ui/type-id-higher-rank.rs) | 0 | ||||
| -rw-r--r-- | src/tools/tidy/src/ui_tests.rs | 4 |
76 files changed, 209 insertions, 77 deletions
diff --git a/compiler/rustc_infer/src/infer/canonical/query_response.rs b/compiler/rustc_infer/src/infer/canonical/query_response.rs index 074c9252481..2ec9b9e0be4 100644 --- a/compiler/rustc_infer/src/infer/canonical/query_response.rs +++ b/compiler/rustc_infer/src/infer/canonical/query_response.rs @@ -507,12 +507,7 @@ impl<'cx, 'tcx> InferCtxt<'cx, 'tcx> { // Unify the original value for each variable with the value // taken from `query_response` (after applying `result_subst`). - Ok(self.unify_canonical_vars( - cause, - param_env, - original_values, - substituted_query_response, - )?) + self.unify_canonical_vars(cause, param_env, original_values, substituted_query_response) } /// Converts the region constraints resulting from a query into an diff --git a/compiler/rustc_middle/src/ty/codec.rs b/compiler/rustc_middle/src/ty/codec.rs index 0dad5df4855..73ad87a9ef2 100644 --- a/compiler/rustc_middle/src/ty/codec.rs +++ b/compiler/rustc_middle/src/ty/codec.rs @@ -253,7 +253,7 @@ impl<'tcx, D: TyDecoder<'tcx>> Decodable<D> for SubstsRef<'tcx> { fn decode(decoder: &mut D) -> Result<Self, D::Error> { let len = decoder.read_usize()?; let tcx = decoder.tcx(); - Ok(tcx.mk_substs((0..len).map(|_| Decodable::decode(decoder)))?) + tcx.mk_substs((0..len).map(|_| Decodable::decode(decoder))) } } @@ -314,7 +314,7 @@ impl<'tcx, D: TyDecoder<'tcx>> RefDecodable<'tcx, D> for ty::AdtDef { impl<'tcx, D: TyDecoder<'tcx>> RefDecodable<'tcx, D> for ty::List<Ty<'tcx>> { fn decode(decoder: &mut D) -> Result<&'tcx Self, D::Error> { let len = decoder.read_usize()?; - Ok(decoder.tcx().mk_type_list((0..len).map(|_| Decodable::decode(decoder)))?) + decoder.tcx().mk_type_list((0..len).map(|_| Decodable::decode(decoder))) } } @@ -323,9 +323,7 @@ impl<'tcx, D: TyDecoder<'tcx>> RefDecodable<'tcx, D> { fn decode(decoder: &mut D) -> Result<&'tcx Self, D::Error> { let len = decoder.read_usize()?; - Ok(decoder - .tcx() - .mk_poly_existential_predicates((0..len).map(|_| Decodable::decode(decoder)))?) + decoder.tcx().mk_poly_existential_predicates((0..len).map(|_| Decodable::decode(decoder))) } } diff --git a/compiler/rustc_middle/src/ty/print/pretty.rs b/compiler/rustc_middle/src/ty/print/pretty.rs index 286041a7c54..64604b6459f 100644 --- a/compiler/rustc_middle/src/ty/print/pretty.rs +++ b/compiler/rustc_middle/src/ty/print/pretty.rs @@ -607,7 +607,7 @@ pub trait PrettyPrinter<'tcx>: return Ok(self); } - return Ok(with_no_queries(|| { + return with_no_queries(|| { let def_key = self.tcx().def_key(def_id); if let Some(name) = def_key.disambiguated_data.data.get_opt_name() { p!(write("{}", name)); @@ -649,7 +649,7 @@ pub trait PrettyPrinter<'tcx>: p!(" Sized"); } Ok(self) - })?); + }); } ty::Str => p!("str"), ty::Generator(did, substs, movability) => { diff --git a/compiler/rustc_middle/src/ty/relate.rs b/compiler/rustc_middle/src/ty/relate.rs index 293b3c6b047..315e5d63d2b 100644 --- a/compiler/rustc_middle/src/ty/relate.rs +++ b/compiler/rustc_middle/src/ty/relate.rs @@ -154,7 +154,7 @@ pub fn relate_substs<R: TypeRelation<'tcx>>( relation.relate_with_variance(variance, a, b) }); - Ok(tcx.mk_substs(params)?) + tcx.mk_substs(params) } impl<'tcx> Relate<'tcx> for ty::FnSig<'tcx> { @@ -647,7 +647,7 @@ impl<'tcx> Relate<'tcx> for &'tcx ty::List<ty::Binder<ty::ExistentialPredicate<' _ => Err(TypeError::ExistentialMismatch(expected_found(relation, a, b))), } }); - Ok(tcx.mk_poly_existential_predicates(v)?) + tcx.mk_poly_existential_predicates(v) } } diff --git a/compiler/rustc_mir/src/interpret/traits.rs b/compiler/rustc_mir/src/interpret/traits.rs index 09ce6bc0fb7..50603bdd45b 100644 --- a/compiler/rustc_mir/src/interpret/traits.rs +++ b/compiler/rustc_mir/src/interpret/traits.rs @@ -118,7 +118,7 @@ impl<'mir, 'tcx: 'mir, M: Machine<'mir, 'tcx>> InterpCx<'mir, 'tcx, M> { .get_raw(vtable_slot.alloc_id)? .read_ptr_sized(self, vtable_slot)? .check_init()?; - Ok(self.memory.get_fn(fn_ptr)?) + self.memory.get_fn(fn_ptr) } /// Returns the drop fn instance as well as the actual dynamic type. diff --git a/compiler/rustc_mir/src/util/generic_graphviz.rs b/compiler/rustc_mir/src/util/generic_graphviz.rs index fd55a4dfc4c..fd41e282266 100644 --- a/compiler/rustc_mir/src/util/generic_graphviz.rs +++ b/compiler/rustc_mir/src/util/generic_graphviz.rs @@ -6,8 +6,8 @@ use std::io::{self, Write}; pub struct GraphvizWriter< 'a, G: graph::DirectedGraph + graph::WithSuccessors + graph::WithStartNode + graph::WithNumNodes, - NodeContentFn: Fn(<G as rustc_data_structures::graph::DirectedGraph>::Node) -> Vec<String>, - EdgeLabelsFn: Fn(<G as rustc_data_structures::graph::DirectedGraph>::Node) -> Vec<String>, + NodeContentFn: Fn(<G as graph::DirectedGraph>::Node) -> Vec<String>, + EdgeLabelsFn: Fn(<G as graph::DirectedGraph>::Node) -> Vec<String>, > { graph: &'a G, is_subgraph: bool, @@ -20,8 +20,8 @@ pub struct GraphvizWriter< impl< 'a, G: graph::DirectedGraph + graph::WithSuccessors + graph::WithStartNode + graph::WithNumNodes, - NodeContentFn: Fn(<G as rustc_data_structures::graph::DirectedGraph>::Node) -> Vec<String>, - EdgeLabelsFn: Fn(<G as rustc_data_structures::graph::DirectedGraph>::Node) -> Vec<String>, + NodeContentFn: Fn(<G as graph::DirectedGraph>::Node) -> Vec<String>, + EdgeLabelsFn: Fn(<G as graph::DirectedGraph>::Node) -> Vec<String>, > GraphvizWriter<'a, G, NodeContentFn, EdgeLabelsFn> { pub fn new( diff --git a/compiler/rustc_mir_build/src/thir/pattern/usefulness.rs b/compiler/rustc_mir_build/src/thir/pattern/usefulness.rs index 010fe4fd524..38b7e50d786 100644 --- a/compiler/rustc_mir_build/src/thir/pattern/usefulness.rs +++ b/compiler/rustc_mir_build/src/thir/pattern/usefulness.rs @@ -289,7 +289,6 @@ use super::{PatternFoldable, PatternFolder}; use rustc_data_structures::captures::Captures; use rustc_data_structures::fx::FxHashMap; -use rustc_data_structures::sync::OnceCell; use rustc_arena::TypedArena; use rustc_hir::def_id::DefId; @@ -300,6 +299,7 @@ use rustc_span::Span; use smallvec::{smallvec, SmallVec}; use std::fmt; use std::iter::{FromIterator, IntoIterator}; +use std::lazy::OnceCell; crate struct MatchCheckCtxt<'a, 'tcx> { crate tcx: TyCtxt<'tcx>, diff --git a/compiler/rustc_target/src/spec/mod.rs b/compiler/rustc_target/src/spec/mod.rs index c5dbd3ed089..5b14795f545 100644 --- a/compiler/rustc_target/src/spec/mod.rs +++ b/compiler/rustc_target/src/spec/mod.rs @@ -783,9 +783,11 @@ supported_targets! { ("riscv32imc-unknown-none-elf", riscv32imc_unknown_none_elf), ("riscv32imac-unknown-none-elf", riscv32imac_unknown_none_elf), ("riscv32gc-unknown-linux-gnu", riscv32gc_unknown_linux_gnu), + ("riscv32gc-unknown-linux-musl", riscv32gc_unknown_linux_musl), ("riscv64imac-unknown-none-elf", riscv64imac_unknown_none_elf), ("riscv64gc-unknown-none-elf", riscv64gc_unknown_none_elf), ("riscv64gc-unknown-linux-gnu", riscv64gc_unknown_linux_gnu), + ("riscv64gc-unknown-linux-musl", riscv64gc_unknown_linux_musl), ("aarch64-unknown-none", aarch64_unknown_none), ("aarch64-unknown-none-softfloat", aarch64_unknown_none_softfloat), diff --git a/compiler/rustc_target/src/spec/riscv32gc_unknown_linux_musl.rs b/compiler/rustc_target/src/spec/riscv32gc_unknown_linux_musl.rs new file mode 100644 index 00000000000..e5fbd09297f --- /dev/null +++ b/compiler/rustc_target/src/spec/riscv32gc_unknown_linux_musl.rs @@ -0,0 +1,19 @@ +use crate::spec::{CodeModel, Target, TargetOptions}; + +pub fn target() -> Target { + Target { + llvm_target: "riscv32-unknown-linux-musl".to_string(), + pointer_width: 32, + data_layout: "e-m:e-p:32:32-i64:64-n32-S128".to_string(), + arch: "riscv32".to_string(), + options: TargetOptions { + unsupported_abis: super::riscv_base::unsupported_abis(), + code_model: Some(CodeModel::Medium), + cpu: "generic-rv32".to_string(), + features: "+m,+a,+f,+d,+c".to_string(), + llvm_abiname: "ilp32d".to_string(), + max_atomic_width: Some(32), + ..super::linux_musl_base::opts() + }, + } +} diff --git a/compiler/rustc_target/src/spec/riscv64gc_unknown_linux_musl.rs b/compiler/rustc_target/src/spec/riscv64gc_unknown_linux_musl.rs new file mode 100644 index 00000000000..0232b15e8c2 --- /dev/null +++ b/compiler/rustc_target/src/spec/riscv64gc_unknown_linux_musl.rs @@ -0,0 +1,19 @@ +use crate::spec::{CodeModel, Target, TargetOptions}; + +pub fn target() -> Target { + Target { + llvm_target: "riscv64-unknown-linux-musl".to_string(), + pointer_width: 64, + data_layout: "e-m:e-p:64:64-i64:64-i128:128-n64-S128".to_string(), + arch: "riscv64".to_string(), + options: TargetOptions { + unsupported_abis: super::riscv_base::unsupported_abis(), + code_model: Some(CodeModel::Medium), + cpu: "generic-rv64".to_string(), + features: "+m,+a,+f,+d,+c".to_string(), + llvm_abiname: "lp64d".to_string(), + max_atomic_width: Some(64), + ..super::linux_musl_base::opts() + }, + } +} diff --git a/compiler/rustc_trait_selection/src/traits/query/type_op/custom.rs b/compiler/rustc_trait_selection/src/traits/query/type_op/custom.rs index 1688539165a..68356ce73aa 100644 --- a/compiler/rustc_trait_selection/src/traits/query/type_op/custom.rs +++ b/compiler/rustc_trait_selection/src/traits/query/type_op/custom.rs @@ -43,7 +43,7 @@ where info!("fully_perform({:?})", self); } - scrape_region_constraints(infcx, || Ok((self.closure)(infcx)?)) + scrape_region_constraints(infcx, || (self.closure)(infcx)) } } diff --git a/compiler/rustc_typeck/src/astconv/generics.rs b/compiler/rustc_typeck/src/astconv/generics.rs index 67e37ca8d8e..0ea0ccaceab 100644 --- a/compiler/rustc_typeck/src/astconv/generics.rs +++ b/compiler/rustc_typeck/src/astconv/generics.rs @@ -6,8 +6,9 @@ use crate::astconv::{ use crate::errors::AssocTypeBindingNotAllowed; use crate::structured_errors::{StructuredDiagnostic, WrongNumberOfGenericArgs}; use rustc_ast::ast::ParamKindOrd; -use rustc_errors::{struct_span_err, Applicability, ErrorReported}; +use rustc_errors::{struct_span_err, Applicability, DiagnosticBuilder, ErrorReported}; use rustc_hir as hir; +use rustc_hir::def::{DefKind, Res}; use rustc_hir::def_id::DefId; use rustc_hir::GenericArg; use rustc_middle::ty::{ @@ -43,23 +44,57 @@ impl<'o, 'tcx> dyn AstConv<'tcx> + 'o { } } + let add_braces_suggestion = |arg: &GenericArg<'_>, err: &mut DiagnosticBuilder<'_>| { + let suggestions = vec![ + (arg.span().shrink_to_lo(), String::from("{ ")), + (arg.span().shrink_to_hi(), String::from(" }")), + ]; + err.multipart_suggestion( + "if this generic argument was intended as a const parameter, \ + surround it with braces", + suggestions, + Applicability::MaybeIncorrect, + ); + }; + // Specific suggestion set for diagnostics match (arg, ¶m.kind) { ( - GenericArg::Type(hir::Ty { kind: hir::TyKind::Path { .. }, .. }), - GenericParamDefKind::Const { .. }, - ) => { - let suggestions = vec![ - (arg.span().shrink_to_lo(), String::from("{ ")), - (arg.span().shrink_to_hi(), String::from(" }")), - ]; - err.multipart_suggestion( - "if this generic argument was intended as a const parameter, \ - try surrounding it with braces:", - suggestions, - Applicability::MaybeIncorrect, - ); - } + GenericArg::Type(hir::Ty { + kind: hir::TyKind::Path(rustc_hir::QPath::Resolved(_, path)), + .. + }), + GenericParamDefKind::Const, + ) => match path.res { + Res::Err => { + add_braces_suggestion(arg, &mut err); + err.set_primary_message( + "unresolved item provided when a constant was expected", + ) + .emit(); + return; + } + Res::Def(DefKind::TyParam, src_def_id) => { + if let Some(param_local_id) = param.def_id.as_local() { + let param_hir_id = tcx.hir().local_def_id_to_hir_id(param_local_id); + let param_name = tcx.hir().ty_param_name(param_hir_id); + let param_type = tcx.type_of(param.def_id); + if param_type.is_suggestable() { + err.span_suggestion( + tcx.def_span(src_def_id), + "consider changing this type paramater to a `const`-generic", + format!("const {}: {}", param_name, param_type), + Applicability::MaybeIncorrect, + ); + }; + } + } + _ => add_braces_suggestion(arg, &mut err), + }, + ( + GenericArg::Type(hir::Ty { kind: hir::TyKind::Path(_), .. }), + GenericParamDefKind::Const, + ) => add_braces_suggestion(arg, &mut err), ( GenericArg::Type(hir::Ty { kind: hir::TyKind::Array(_, len), .. }), GenericParamDefKind::Const { .. }, diff --git a/compiler/rustc_typeck/src/check/method/suggest.rs b/compiler/rustc_typeck/src/check/method/suggest.rs index faa47230d3a..16c3dd696ab 100644 --- a/compiler/rustc_typeck/src/check/method/suggest.rs +++ b/compiler/rustc_typeck/src/check/method/suggest.rs @@ -1141,7 +1141,7 @@ impl<'a, 'tcx> FnCtxt<'a, 'tcx> { let trait_def_ids: FxHashSet<DefId> = param .bounds .iter() - .filter_map(|bound| Some(bound.trait_ref()?.trait_def_id()?)) + .filter_map(|bound| bound.trait_ref()?.trait_def_id()) .collect(); if !candidates.iter().any(|t| trait_def_ids.contains(&t.def_id)) { err.span_suggestions( diff --git a/library/std/src/io/stdio.rs b/library/std/src/io/stdio.rs index 1160011f352..e736bf19e8f 100644 --- a/library/std/src/io/stdio.rs +++ b/library/std/src/io/stdio.rs @@ -231,7 +231,7 @@ pub struct Stdin { inner: &'static Mutex<BufReader<StdinRaw>>, } -/// A locked reference to the `Stdin` handle. +/// A locked reference to the [`Stdin`] handle. /// /// This handle implements both the [`Read`] and [`BufRead`] traits, and /// is constructed via the [`Stdin::lock`] method. @@ -494,7 +494,7 @@ pub struct Stdout { inner: Pin<&'static ReentrantMutex<RefCell<LineWriter<StdoutRaw>>>>, } -/// A locked reference to the `Stdout` handle. +/// A locked reference to the [`Stdout`] handle. /// /// This handle implements the [`Write`] trait, and is constructed via /// the [`Stdout::lock`] method. @@ -708,9 +708,9 @@ pub struct Stderr { inner: Pin<&'static ReentrantMutex<RefCell<StderrRaw>>>, } -/// A locked reference to the `Stderr` handle. +/// A locked reference to the [`Stderr`] handle. /// -/// This handle implements the `Write` trait and is constructed via +/// This handle implements the [`Write`] trait and is constructed via /// the [`Stderr::lock`] method. /// /// ### Note: Windows Portability Consideration diff --git a/src/bootstrap/bin/main.rs b/src/bootstrap/bin/main.rs index a32a4a7fe56..e730a2557e0 100644 --- a/src/bootstrap/bin/main.rs +++ b/src/bootstrap/bin/main.rs @@ -22,7 +22,10 @@ fn main() { let suggest_setup = !config.config.exists() && !matches!(config.cmd, Subcommand::Setup { .. }); if suggest_setup { println!("warning: you have not made a `config.toml`"); - println!("help: consider running `x.py setup` or copying `config.toml.example`"); + println!( + "help: consider running `./x.py setup` or copying `config.toml.example` by running \ + `cp config.toml.example config.toml`" + ); } else if let Some(suggestion) = &changelog_suggestion { println!("{}", suggestion); } @@ -31,7 +34,10 @@ fn main() { if suggest_setup { println!("warning: you have not made a `config.toml`"); - println!("help: consider running `x.py setup` or copying `config.toml.example`"); + println!( + "help: consider running `./x.py setup` or copying `config.toml.example` by running \ + `cp config.toml.example config.toml`" + ); } else if let Some(suggestion) = &changelog_suggestion { println!("{}", suggestion); } diff --git a/src/doc/rustc/src/platform-support.md b/src/doc/rustc/src/platform-support.md index eb740419647..8198dbaa527 100644 --- a/src/doc/rustc/src/platform-support.md +++ b/src/doc/rustc/src/platform-support.md @@ -204,7 +204,9 @@ target | std | host | notes `powerpc64-unknown-linux-musl` | ? | | `powerpc64-wrs-vxworks` | ? | | `powerpc64le-unknown-linux-musl` | ? | | +`riscv64gc-unknown-linux-musl` | | | RISC-V Linux (kernel 4.20, musl 1.2.0) `riscv32gc-unknown-linux-gnu` | | | RISC-V Linux (kernel 5.4, glibc 2.33) +`riscv32gc-unknown-linux-musl` | | | RISC-V Linux (kernel 5.4, musl + RISCV32 support patches) `sparc-unknown-linux-gnu` | ✓ | | 32-bit SPARC Linux `sparc64-unknown-netbsd` | ✓ | ✓ | NetBSD/sparc64 `sparc64-unknown-openbsd` | ? | | diff --git a/src/test/ui/issues/issue-21726.rs b/src/test/ui/associated-types/issue-21726.rs index b98cf216695..b98cf216695 100644 --- a/src/test/ui/issues/issue-21726.rs +++ b/src/test/ui/associated-types/issue-21726.rs diff --git a/src/test/ui/issues/issue-22560.rs b/src/test/ui/associated-types/issue-22560.rs index 44be8817b08..44be8817b08 100644 --- a/src/test/ui/issues/issue-22560.rs +++ b/src/test/ui/associated-types/issue-22560.rs diff --git a/src/test/ui/issues/issue-22560.stderr b/src/test/ui/associated-types/issue-22560.stderr index 9dda99109fa..9dda99109fa 100644 --- a/src/test/ui/issues/issue-22560.stderr +++ b/src/test/ui/associated-types/issue-22560.stderr diff --git a/src/test/ui/issues/issue-23595-2.rs b/src/test/ui/associated-types/issue-23595-2.rs index 2bfee7a35fa..2bfee7a35fa 100644 --- a/src/test/ui/issues/issue-23595-2.rs +++ b/src/test/ui/associated-types/issue-23595-2.rs diff --git a/src/test/ui/issues/issue-23595-2.stderr b/src/test/ui/associated-types/issue-23595-2.stderr index dded673f6ee..dded673f6ee 100644 --- a/src/test/ui/issues/issue-23595-2.stderr +++ b/src/test/ui/associated-types/issue-23595-2.stderr diff --git a/src/test/ui/issues/issue-24204.rs b/src/test/ui/associated-types/issue-24204.rs index 5a7b3459589..5a7b3459589 100644 --- a/src/test/ui/issues/issue-24204.rs +++ b/src/test/ui/associated-types/issue-24204.rs diff --git a/src/test/ui/issues/issue-43784-associated-type.rs b/src/test/ui/associated-types/issue-43784-associated-type.rs index 78815d8d3fa..78815d8d3fa 100644 --- a/src/test/ui/issues/issue-43784-associated-type.rs +++ b/src/test/ui/associated-types/issue-43784-associated-type.rs diff --git a/src/test/ui/issues/issue-43784-associated-type.stderr b/src/test/ui/associated-types/issue-43784-associated-type.stderr index d5105ae3b58..d5105ae3b58 100644 --- a/src/test/ui/issues/issue-43784-associated-type.stderr +++ b/src/test/ui/associated-types/issue-43784-associated-type.stderr diff --git a/src/test/ui/project-defer-unification.rs b/src/test/ui/associated-types/project-defer-unification.rs index 547ff45c229..547ff45c229 100644 --- a/src/test/ui/project-defer-unification.rs +++ b/src/test/ui/associated-types/project-defer-unification.rs diff --git a/src/test/ui/issues/issue-77993-2.rs b/src/test/ui/async-await/issue-77993-2.rs index 4d554a0a1d0..4d554a0a1d0 100644 --- a/src/test/ui/issues/issue-77993-2.rs +++ b/src/test/ui/async-await/issue-77993-2.rs diff --git a/src/test/ui/issues/issue-77993-2.stderr b/src/test/ui/async-await/issue-77993-2.stderr index 64b378f83fc..64b378f83fc 100644 --- a/src/test/ui/issues/issue-77993-2.stderr +++ b/src/test/ui/async-await/issue-77993-2.stderr diff --git a/src/test/ui/repeat_count_const_in_async_fn.rs b/src/test/ui/async-await/repeat_count_const_in_async_fn.rs index ebabc3fbf10..ebabc3fbf10 100644 --- a/src/test/ui/repeat_count_const_in_async_fn.rs +++ b/src/test/ui/async-await/repeat_count_const_in_async_fn.rs diff --git a/src/test/ui/const-generics/const-param-shadowing.stderr b/src/test/ui/const-generics/const-param-shadowing.stderr index 7447ca3ff36..17ccd2f3527 100644 --- a/src/test/ui/const-generics/const-param-shadowing.stderr +++ b/src/test/ui/const-generics/const-param-shadowing.stderr @@ -4,7 +4,7 @@ error[E0747]: type provided when a constant was expected LL | fn test<const N: usize>() -> Foo<N> { | ^ | -help: if this generic argument was intended as a const parameter, try surrounding it with braces: +help: if this generic argument was intended as a const parameter, surround it with braces | LL | fn test<const N: usize>() -> Foo<{ N }> { | ^ ^ diff --git a/src/test/ui/const-generics/diagnostics.rs b/src/test/ui/const-generics/diagnostics.rs new file mode 100644 index 00000000000..1581af5ab27 --- /dev/null +++ b/src/test/ui/const-generics/diagnostics.rs @@ -0,0 +1,18 @@ +#![crate_type="lib"] +#![feature(min_const_generics)] +#![allow(incomplete_features)] + +struct A<const N: u8>; +trait Foo {} +impl Foo for A<N> {} +//~^ ERROR cannot find type +//~| unresolved item provided when a constant + +struct B<const N: u8>; +impl<N> Foo for B<N> {} +//~^ ERROR type provided when a constant + +struct C<const C: u8, const N: u8>; +impl<const N: u8> Foo for C<N, T> {} +//~^ ERROR cannot find type +//~| unresolved item provided when a constant diff --git a/src/test/ui/const-generics/diagnostics.stderr b/src/test/ui/const-generics/diagnostics.stderr new file mode 100644 index 00000000000..7d038ff955d --- /dev/null +++ b/src/test/ui/const-generics/diagnostics.stderr @@ -0,0 +1,52 @@ +error[E0412]: cannot find type `N` in this scope + --> $DIR/diagnostics.rs:7:16 + | +LL | struct A<const N: u8>; + | ---------------------- similarly named struct `A` defined here +LL | trait Foo {} +LL | impl Foo for A<N> {} + | ^ help: a struct with a similar name exists: `A` + +error[E0412]: cannot find type `T` in this scope + --> $DIR/diagnostics.rs:16:32 + | +LL | struct A<const N: u8>; + | ---------------------- similarly named struct `A` defined here +... +LL | impl<const N: u8> Foo for C<N, T> {} + | ^ help: a struct with a similar name exists: `A` + +error[E0747]: unresolved item provided when a constant was expected + --> $DIR/diagnostics.rs:7:16 + | +LL | impl Foo for A<N> {} + | ^ + | +help: if this generic argument was intended as a const parameter, surround it with braces + | +LL | impl Foo for A<{ N }> {} + | ^ ^ + +error[E0747]: type provided when a constant was expected + --> $DIR/diagnostics.rs:12:19 + | +LL | impl<N> Foo for B<N> {} + | - ^ + | | + | help: consider changing this type paramater to a `const`-generic: `const N: u8` + +error[E0747]: unresolved item provided when a constant was expected + --> $DIR/diagnostics.rs:16:32 + | +LL | impl<const N: u8> Foo for C<N, T> {} + | ^ + | +help: if this generic argument was intended as a const parameter, surround it with braces + | +LL | impl<const N: u8> Foo for C<N, { T }> {} + | ^ ^ + +error: aborting due to 5 previous errors + +Some errors have detailed explanations: E0412, E0747. +For more information about an error, try `rustc --explain E0412`. diff --git a/src/test/ui/const-generics/invalid-enum.rs b/src/test/ui/const-generics/invalid-enum.rs index 4ca10ed8b71..32939dcd286 100644 --- a/src/test/ui/const-generics/invalid-enum.rs +++ b/src/test/ui/const-generics/invalid-enum.rs @@ -3,14 +3,14 @@ #[derive(PartialEq, Eq)] enum CompileFlag { - A, - B, + A, + B, } pub fn test_1<const CF: CompileFlag>() {} pub fn test_2<T, const CF: CompileFlag>(x: T) {} pub struct Example<const CF: CompileFlag, T=u32>{ - x: T, + x: T, } impl<const CF: CompileFlag, T> Example<CF, T> { @@ -20,15 +20,15 @@ impl<const CF: CompileFlag, T> Example<CF, T> { pub fn main() { test_1::<CompileFlag::A>(); //~^ ERROR: expected type, found variant - //~| ERROR: type provided when a constant was expected + //~| ERROR: unresolved item provided when a constant was expected test_2::<_, CompileFlag::A>(0); //~^ ERROR: expected type, found variant - //~| ERROR: type provided when a constant was expected + //~| ERROR: unresolved item provided when a constant was expected let _: Example<CompileFlag::A, _> = Example { x: 0 }; //~^ ERROR: expected type, found variant - //~| ERROR: type provided when a constant was expected + //~| ERROR: unresolved item provided when a constant was expected let _: Example<Example::ASSOC_FLAG, _> = Example { x: 0 }; //~^ ERROR: type provided when a constant was expected diff --git a/src/test/ui/const-generics/invalid-enum.stderr b/src/test/ui/const-generics/invalid-enum.stderr index 7822fc072e3..cfbc61f0254 100644 --- a/src/test/ui/const-generics/invalid-enum.stderr +++ b/src/test/ui/const-generics/invalid-enum.stderr @@ -25,13 +25,13 @@ LL | let _: Example<CompileFlag::A, _> = Example { x: 0 }; | not a type | help: try using the variant's enum: `CompileFlag` -error[E0747]: type provided when a constant was expected +error[E0747]: unresolved item provided when a constant was expected --> $DIR/invalid-enum.rs:29:18 | LL | let _: Example<CompileFlag::A, _> = Example { x: 0 }; | ^^^^^^^^^^^^^^ | -help: if this generic argument was intended as a const parameter, try surrounding it with braces: +help: if this generic argument was intended as a const parameter, surround it with braces | LL | let _: Example<{ CompileFlag::A }, _> = Example { x: 0 }; | ^ ^ @@ -42,29 +42,29 @@ error[E0747]: type provided when a constant was expected LL | let _: Example<Example::ASSOC_FLAG, _> = Example { x: 0 }; | ^^^^^^^^^^^^^^^^^^^ | -help: if this generic argument was intended as a const parameter, try surrounding it with braces: +help: if this generic argument was intended as a const parameter, surround it with braces | LL | let _: Example<{ Example::ASSOC_FLAG }, _> = Example { x: 0 }; | ^ ^ -error[E0747]: type provided when a constant was expected +error[E0747]: unresolved item provided when a constant was expected --> $DIR/invalid-enum.rs:21:12 | LL | test_1::<CompileFlag::A>(); | ^^^^^^^^^^^^^^ | -help: if this generic argument was intended as a const parameter, try surrounding it with braces: +help: if this generic argument was intended as a const parameter, surround it with braces | LL | test_1::<{ CompileFlag::A }>(); | ^ ^ -error[E0747]: type provided when a constant was expected +error[E0747]: unresolved item provided when a constant was expected --> $DIR/invalid-enum.rs:25:15 | LL | test_2::<_, CompileFlag::A>(0); | ^^^^^^^^^^^^^^ | -help: if this generic argument was intended as a const parameter, try surrounding it with braces: +help: if this generic argument was intended as a const parameter, surround it with braces | LL | test_2::<_, { CompileFlag::A }>(0); | ^ ^ diff --git a/src/test/ui/issues/issue-13837.rs b/src/test/ui/consts/issue-13837.rs index 645b1c0eb87..645b1c0eb87 100644 --- a/src/test/ui/issues/issue-13837.rs +++ b/src/test/ui/consts/issue-13837.rs diff --git a/src/test/ui/issues/issue-17718-references.rs b/src/test/ui/consts/issue-17718-references.rs index 03d5f8bb3f1..03d5f8bb3f1 100644 --- a/src/test/ui/issues/issue-17718-references.rs +++ b/src/test/ui/consts/issue-17718-references.rs diff --git a/src/test/ui/issues/issue-17718-references.stderr b/src/test/ui/consts/issue-17718-references.stderr index e3c3b369ffb..e3c3b369ffb 100644 --- a/src/test/ui/issues/issue-17718-references.stderr +++ b/src/test/ui/consts/issue-17718-references.stderr diff --git a/src/test/ui/issues/issue-32829.rs b/src/test/ui/consts/issue-32829.rs index adfee7b925c..adfee7b925c 100644 --- a/src/test/ui/issues/issue-32829.rs +++ b/src/test/ui/consts/issue-32829.rs diff --git a/src/test/ui/issues/issue-32829.stderr b/src/test/ui/consts/issue-32829.stderr index 48e0880d5ed..48e0880d5ed 100644 --- a/src/test/ui/issues/issue-32829.stderr +++ b/src/test/ui/consts/issue-32829.stderr diff --git a/src/test/ui/issues/issue-33537.rs b/src/test/ui/consts/issue-33537.rs index 3539aa64776..3539aa64776 100644 --- a/src/test/ui/issues/issue-33537.rs +++ b/src/test/ui/consts/issue-33537.rs diff --git a/src/test/ui/rvalue-static-promotion.rs b/src/test/ui/consts/rvalue-static-promotion.rs index 2d7e4ab3989..2d7e4ab3989 100644 --- a/src/test/ui/rvalue-static-promotion.rs +++ b/src/test/ui/consts/rvalue-static-promotion.rs diff --git a/src/test/ui/write-to-static-mut-in-static.rs b/src/test/ui/consts/write-to-static-mut-in-static.rs index 43c63fed8ce..43c63fed8ce 100644 --- a/src/test/ui/write-to-static-mut-in-static.rs +++ b/src/test/ui/consts/write-to-static-mut-in-static.rs diff --git a/src/test/ui/write-to-static-mut-in-static.stderr b/src/test/ui/consts/write-to-static-mut-in-static.stderr index 789919bd166..789919bd166 100644 --- a/src/test/ui/write-to-static-mut-in-static.stderr +++ b/src/test/ui/consts/write-to-static-mut-in-static.stderr diff --git a/src/test/ui/emit-artifact-notifications.nll.stderr b/src/test/ui/emit-artifact-notifications.nll.stderr deleted file mode 100644 index 5547631a4b0..00000000000 --- a/src/test/ui/emit-artifact-notifications.nll.stderr +++ /dev/null @@ -1 +0,0 @@ -{"artifact":"$TEST_BUILD_DIR/emit-artifact-notifications.nll/libemit_artifact_notifications.rmeta","emit":"metadata"} diff --git a/src/test/ui/emit-artifact-notifications.polonius.stderr b/src/test/ui/emit-artifact-notifications.polonius.stderr deleted file mode 100644 index 47b48b399c2..00000000000 --- a/src/test/ui/emit-artifact-notifications.polonius.stderr +++ /dev/null @@ -1 +0,0 @@ -{"artifact":"$TEST_BUILD_DIR/emit-artifact-notifications.polonius/libemit_artifact_notifications.rmeta","emit":"metadata"} diff --git a/src/test/ui/emit-artifact-notifications.stderr b/src/test/ui/emit-artifact-notifications.stderr deleted file mode 100644 index 260d41b8f15..00000000000 --- a/src/test/ui/emit-artifact-notifications.stderr +++ /dev/null @@ -1 +0,0 @@ -{"artifact":"$TEST_BUILD_DIR/emit-artifact-notifications/libemit_artifact_notifications.rmeta","emit":"metadata"} diff --git a/src/test/ui/expr-if-panic.rs b/src/test/ui/expr/if/expr-if-panic-pass.rs index 6069cd835e1..6069cd835e1 100644 --- a/src/test/ui/expr-if-panic.rs +++ b/src/test/ui/expr/if/expr-if-panic-pass.rs diff --git a/src/test/ui/issues/issue-4201.rs b/src/test/ui/expr/if/issue-4201.rs index 1f292229fd6..1f292229fd6 100644 --- a/src/test/ui/issues/issue-4201.rs +++ b/src/test/ui/expr/if/issue-4201.rs diff --git a/src/test/ui/issues/issue-4201.stderr b/src/test/ui/expr/if/issue-4201.stderr index bc638ddf55b..bc638ddf55b 100644 --- a/src/test/ui/issues/issue-4201.stderr +++ b/src/test/ui/expr/if/issue-4201.stderr diff --git a/src/test/ui/cleanup-rvalue-during-if-and-while.rs b/src/test/ui/for-loop-while/cleanup-rvalue-during-if-and-while.rs index 6fecb4e76da..6fecb4e76da 100644 --- a/src/test/ui/cleanup-rvalue-during-if-and-while.rs +++ b/src/test/ui/for-loop-while/cleanup-rvalue-during-if-and-while.rs diff --git a/src/test/ui/issues/issue-40847.rs b/src/test/ui/hygiene/issue-40847.rs index 087b40ad6cd..087b40ad6cd 100644 --- a/src/test/ui/issues/issue-40847.rs +++ b/src/test/ui/hygiene/issue-40847.rs diff --git a/src/test/ui/issues/issue-6157.rs b/src/test/ui/issue-6157.rs index b7a44ed8623..b7a44ed8623 100644 --- a/src/test/ui/issues/issue-6157.rs +++ b/src/test/ui/issue-6157.rs diff --git a/src/test/ui/issues/issue-31924-non-snake-ffi.rs b/src/test/ui/lint/issue-31924-non-snake-ffi.rs index 63e42b48442..63e42b48442 100644 --- a/src/test/ui/issues/issue-31924-non-snake-ffi.rs +++ b/src/test/ui/lint/issue-31924-non-snake-ffi.rs diff --git a/src/test/ui/html-literals.rs b/src/test/ui/macros/html-literals.rs index ae45e97c8b0..ae45e97c8b0 100644 --- a/src/test/ui/html-literals.rs +++ b/src/test/ui/macros/html-literals.rs diff --git a/src/test/ui/dotdotdot-expr.rs b/src/test/ui/parser/dotdotdot-expr.rs index d842fb6e030..d842fb6e030 100644 --- a/src/test/ui/dotdotdot-expr.rs +++ b/src/test/ui/parser/dotdotdot-expr.rs diff --git a/src/test/ui/dotdotdot-expr.stderr b/src/test/ui/parser/dotdotdot-expr.stderr index ec1335cfdb0..ec1335cfdb0 100644 --- a/src/test/ui/dotdotdot-expr.stderr +++ b/src/test/ui/parser/dotdotdot-expr.stderr diff --git a/src/test/ui/issues/issue-20616-3.rs b/src/test/ui/parser/issue-20616-3.rs index b2371051c78..b2371051c78 100644 --- a/src/test/ui/issues/issue-20616-3.rs +++ b/src/test/ui/parser/issue-20616-3.rs diff --git a/src/test/ui/issues/issue-20616-3.stderr b/src/test/ui/parser/issue-20616-3.stderr index b535c7a3267..b535c7a3267 100644 --- a/src/test/ui/issues/issue-20616-3.stderr +++ b/src/test/ui/parser/issue-20616-3.stderr diff --git a/src/test/ui/issues/issue-44406.rs b/src/test/ui/parser/issue-44406.rs index 83bbf884a4f..83bbf884a4f 100644 --- a/src/test/ui/issues/issue-44406.rs +++ b/src/test/ui/parser/issue-44406.rs diff --git a/src/test/ui/issues/issue-44406.stderr b/src/test/ui/parser/issue-44406.stderr index 701c32d6236..701c32d6236 100644 --- a/src/test/ui/issues/issue-44406.stderr +++ b/src/test/ui/parser/issue-44406.stderr diff --git a/src/test/ui/old-suffixes-are-really-forbidden.rs b/src/test/ui/parser/old-suffixes-are-really-forbidden.rs index eea95b7d626..eea95b7d626 100644 --- a/src/test/ui/old-suffixes-are-really-forbidden.rs +++ b/src/test/ui/parser/old-suffixes-are-really-forbidden.rs diff --git a/src/test/ui/old-suffixes-are-really-forbidden.stderr b/src/test/ui/parser/old-suffixes-are-really-forbidden.stderr index fb309793b34..fb309793b34 100644 --- a/src/test/ui/old-suffixes-are-really-forbidden.stderr +++ b/src/test/ui/parser/old-suffixes-are-really-forbidden.stderr diff --git a/src/test/ui/struct-literal-variant-in-if.rs b/src/test/ui/parser/struct-literal-variant-in-if.rs index 4ef8effaf1f..4ef8effaf1f 100644 --- a/src/test/ui/struct-literal-variant-in-if.rs +++ b/src/test/ui/parser/struct-literal-variant-in-if.rs diff --git a/src/test/ui/struct-literal-variant-in-if.stderr b/src/test/ui/parser/struct-literal-variant-in-if.stderr index a2252d4e4d2..a2252d4e4d2 100644 --- a/src/test/ui/struct-literal-variant-in-if.stderr +++ b/src/test/ui/parser/struct-literal-variant-in-if.stderr diff --git a/src/test/ui/range_inclusive_gate.rs b/src/test/ui/range_inclusive_gate.rs deleted file mode 100644 index e26e31b44a0..00000000000 --- a/src/test/ui/range_inclusive_gate.rs +++ /dev/null @@ -1,14 +0,0 @@ -// run-pass - -#![allow(unused_comparisons)] -// Test that you only need the syntax gate if you don't mention the structs. -// (Obsoleted since both features are stabilized) - -fn main() { - let mut count = 0; - for i in 0_usize..=10 { - assert!(i >= 0 && i <= 10); - count += i; - } - assert_eq!(count, 55); -} diff --git a/src/test/ui/regions-fn-subtyping-return-static-fail.nll.stderr b/src/test/ui/regions/regions-fn-subtyping-return-static-fail.nll.stderr index d762f55f9d5..d762f55f9d5 100644 --- a/src/test/ui/regions-fn-subtyping-return-static-fail.nll.stderr +++ b/src/test/ui/regions/regions-fn-subtyping-return-static-fail.nll.stderr diff --git a/src/test/ui/regions-fn-subtyping-return-static-fail.rs b/src/test/ui/regions/regions-fn-subtyping-return-static-fail.rs index 539221b5a04..539221b5a04 100644 --- a/src/test/ui/regions-fn-subtyping-return-static-fail.rs +++ b/src/test/ui/regions/regions-fn-subtyping-return-static-fail.rs diff --git a/src/test/ui/regions-fn-subtyping-return-static-fail.stderr b/src/test/ui/regions/regions-fn-subtyping-return-static-fail.stderr index c9ce936c7d4..c9ce936c7d4 100644 --- a/src/test/ui/regions-fn-subtyping-return-static-fail.stderr +++ b/src/test/ui/regions/regions-fn-subtyping-return-static-fail.stderr diff --git a/src/test/ui/rmeta/emit-artifact-notifications.nll.stderr b/src/test/ui/rmeta/emit-artifact-notifications.nll.stderr new file mode 100644 index 00000000000..ed62f300284 --- /dev/null +++ b/src/test/ui/rmeta/emit-artifact-notifications.nll.stderr @@ -0,0 +1 @@ +{"artifact":"$TEST_BUILD_DIR/rmeta/emit-artifact-notifications.nll/libemit_artifact_notifications.rmeta","emit":"metadata"} diff --git a/src/test/ui/rmeta/emit-artifact-notifications.polonius.stderr b/src/test/ui/rmeta/emit-artifact-notifications.polonius.stderr new file mode 100644 index 00000000000..255c7b370f9 --- /dev/null +++ b/src/test/ui/rmeta/emit-artifact-notifications.polonius.stderr @@ -0,0 +1 @@ +{"artifact":"$TEST_BUILD_DIR/rmeta/emit-artifact-notifications.polonius/libemit_artifact_notifications.rmeta","emit":"metadata"} diff --git a/src/test/ui/emit-artifact-notifications.rs b/src/test/ui/rmeta/emit-artifact-notifications.rs index 984a7fabb66..984a7fabb66 100644 --- a/src/test/ui/emit-artifact-notifications.rs +++ b/src/test/ui/rmeta/emit-artifact-notifications.rs diff --git a/src/test/ui/rmeta/emit-artifact-notifications.stderr b/src/test/ui/rmeta/emit-artifact-notifications.stderr new file mode 100644 index 00000000000..b2f0aa7575c --- /dev/null +++ b/src/test/ui/rmeta/emit-artifact-notifications.stderr @@ -0,0 +1 @@ +{"artifact":"$TEST_BUILD_DIR/rmeta/emit-artifact-notifications/libemit_artifact_notifications.rmeta","emit":"metadata"} diff --git a/src/test/ui/emit-metadata-obj.rs b/src/test/ui/rmeta/emit-metadata-obj.rs index 334c7cc5b81..334c7cc5b81 100644 --- a/src/test/ui/emit-metadata-obj.rs +++ b/src/test/ui/rmeta/emit-metadata-obj.rs diff --git a/src/test/ui/type-sizes.rs b/src/test/ui/structs-enums/type-sizes.rs index 73a11a5e743..73a11a5e743 100644 --- a/src/test/ui/type-sizes.rs +++ b/src/test/ui/structs-enums/type-sizes.rs diff --git a/src/test/ui/one-tuple.rs b/src/test/ui/tuple/one-tuple.rs index 00fbadce1ac..00fbadce1ac 100644 --- a/src/test/ui/one-tuple.rs +++ b/src/test/ui/tuple/one-tuple.rs diff --git a/src/test/ui/type-id-higher-rank.rs b/src/test/ui/unboxed-closures/type-id-higher-rank.rs index 355d1109941..355d1109941 100644 --- a/src/test/ui/type-id-higher-rank.rs +++ b/src/test/ui/unboxed-closures/type-id-higher-rank.rs diff --git a/src/tools/tidy/src/ui_tests.rs b/src/tools/tidy/src/ui_tests.rs index 74ed2366752..659d5ae03c9 100644 --- a/src/tools/tidy/src/ui_tests.rs +++ b/src/tools/tidy/src/ui_tests.rs @@ -7,8 +7,8 @@ use std::path::Path; const ENTRY_LIMIT: usize = 1000; // FIXME: The following limits should be reduced eventually. -const ROOT_ENTRY_LIMIT: usize = 1459; -const ISSUES_ENTRY_LIMIT: usize = 2615; +const ROOT_ENTRY_LIMIT: usize = 1418; +const ISSUES_ENTRY_LIMIT: usize = 2582; fn check_entries(path: &Path, bad: &mut bool) { let dirs = walkdir::WalkDir::new(&path.join("test/ui")) |
