Skip to content
Closed
Show file tree
Hide file tree
Changes from all commits
Commits
Show all changes
34 commits
Select commit Hold shift + click to select a range
4da823b
Do not enable split debuginfo for windows-gnu
mati865 Feb 19, 2026
7adb9ba
Add is_disconnected functions to mpsc and mpmc channels
LevitatingBusinessMan Feb 27, 2026
feef7b4
warn of possible race condition in channel is_disconnected doc
LevitatingBusinessMan Feb 28, 2026
ce2de64
assign mpsc_is_disconnected issue 153668
LevitatingBusinessMan Mar 10, 2026
b36ee95
ci: add runners for vanilla LLVM 22
cuviper Mar 11, 2026
b3b6627
Derive Macro Eq: link to more detailed documentation
DanielEScherzer Mar 13, 2026
6e7d6d7
Add `Wake` diagnostic item for `alloc::task::Wake`
samueltardieu Mar 12, 2026
02ac190
dec2flt: Rename `Integer` to `Int`
tgross35 Jan 31, 2026
b07c043
dec2flt: Split up the `RawFloat` trait
tgross35 Jan 31, 2026
bec94a3
dec2flt: Move internal traits to better locations
tgross35 Jan 31, 2026
24d86b5
Fix rust build failure for vxworks
gautam899 Mar 3, 2026
69fd61e
merge `kindck/send-*` tests
cyrgani Mar 17, 2026
caeda18
reformat and update remaining `ui/kindck` tests
cyrgani Mar 17, 2026
62b9fa1
move tests from `ui/kindck` to `ui/traits`
cyrgani Mar 17, 2026
eda328c
delete incorrect test
cyrgani Mar 17, 2026
a4d2384
Move hashes into a separate json file
jyn514 Mar 18, 2026
ca2139d
Point at return type when it is the source of the type expectation
estebank Mar 16, 2026
1098a9d
Support `--bless`-ing editor hashes
jyn514 Mar 18, 2026
ebb1f47
Optimize 128-bit integer formatting
jhpratt Mar 19, 2026
b2e8177
Reorder `define_callbacks`.
nnethercote Mar 19, 2026
091d000
Minor `define_callbacks` tweaks.
nnethercote Mar 19, 2026
7cec833
Rename `query_helper_param_ty`.
nnethercote Mar 19, 2026
9a0cc2d
Rollup merge of #152870 - mati865:mingw-disable-packed-debuginfo-in-b…
JonathanBrouwer Mar 19, 2026
b7a1d73
Rollup merge of #153333 - gautam899:main, r=Mark-Simulacrum
JonathanBrouwer Mar 19, 2026
e488e3c
Rollup merge of #153681 - cuviper:ci-llvm-22, r=Mark-Simulacrum
JonathanBrouwer Mar 19, 2026
a480072
Rollup merge of #153824 - samueltardieu:wake-diagnostic-item, r=Mark-…
JonathanBrouwer Mar 19, 2026
b63f3ee
Rollup merge of #154077 - jhpratt:optimize-128-bit-formatting, r=dtolnay
JonathanBrouwer Mar 19, 2026
129b64a
Rollup merge of #154078 - nnethercote:define_callbacks-tweaks, r=Zala…
JonathanBrouwer Mar 19, 2026
bc01f56
Rollup merge of #151905 - tgross35:dec2flt-traits, r=Mark-Simulacrum
JonathanBrouwer Mar 19, 2026
4a92d08
Rollup merge of #153170 - LevitatingBusinessMan:is_disconnected, r=Ma…
JonathanBrouwer Mar 19, 2026
bd980f4
Rollup merge of #153804 - DanielEScherzer:derive-eq-docs, r=Mark-Simu…
JonathanBrouwer Mar 19, 2026
acb5329
Rollup merge of #153974 - estebank:issue-43608, r=nnethercote
JonathanBrouwer Mar 19, 2026
6366b9d
Rollup merge of #154018 - cyrgani:kindck-tests, r=jieyouxu
JonathanBrouwer Mar 19, 2026
7cc8bd7
Rollup merge of #154041 - ferrocene:jyn/bless-hashes, r=jieyouxu
JonathanBrouwer Mar 19, 2026
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
7 changes: 4 additions & 3 deletions bootstrap.example.toml
Original file line number Diff line number Diff line change
Expand Up @@ -1013,9 +1013,10 @@
# its historical default, but when compiling the compiler itself, we skip it by
# default since we know it's safe to do so in that case.
#
# On Windows platforms, packed debuginfo is the only supported option,
# producing a `.pdb` file.
#split-debuginfo = if linux { off } else if windows { packed } else if apple { unpacked }
# On Windows MSVC platforms, packed debuginfo is the only supported option,
# producing a `.pdb` file. On Windows GNU rustc doesn't support splitting debuginfo,
# and enabling it causes issues.
#split-debuginfo = if linux || windows-gnu { off } else if windows-msvc { packed } else if apple { unpacked }

# Path to the `llvm-config` binary of the installation of a custom LLVM to link
# against. Note that if this is specified we don't compile LLVM at all for this
Expand Down
41 changes: 40 additions & 1 deletion compiler/rustc_hir_typeck/src/fn_ctxt/checks.rs
Original file line number Diff line number Diff line change
Expand Up @@ -11,7 +11,7 @@ use rustc_hir::attrs::DivergingBlockBehavior;
use rustc_hir::def::{CtorKind, CtorOf, DefKind, Res};
use rustc_hir::def_id::DefId;
use rustc_hir::intravisit::Visitor;
use rustc_hir::{Expr, ExprKind, HirId, LangItem, Node, QPath, is_range_literal};
use rustc_hir::{Expr, ExprKind, FnRetTy, HirId, LangItem, Node, QPath, is_range_literal};
use rustc_hir_analysis::check::potentially_plural_count;
use rustc_hir_analysis::hir_ty_lowering::{HirTyLowerer, PermitVariants};
use rustc_index::IndexVec;
Expand Down Expand Up @@ -1587,6 +1587,45 @@ impl<'a, 'tcx> FnCtxt<'a, 'tcx> {
}
}
err.span_note(spans, format!("{} defined here", self.tcx.def_descr(def_id)));
if let DefKind::Fn | DefKind::AssocFn = self.tcx.def_kind(def_id)
&& let ty::Param(_) =
self.tcx.fn_sig(def_id).instantiate_identity().skip_binder().output().kind()
&& let parent = self.tcx.hir_get_parent_item(call_expr.hir_id).def_id
&& let Some((output, body_id)) = match self.tcx.hir_node_by_def_id(parent) {
hir::Node::Item(hir::Item {
kind: hir::ItemKind::Fn { sig, body, .. },
..
})
| hir::Node::TraitItem(hir::TraitItem {
kind: hir::TraitItemKind::Fn(sig, hir::TraitFn::Provided(body)),
..
})
| hir::Node::ImplItem(hir::ImplItem {
kind: hir::ImplItemKind::Fn(sig, body),
..
}) => Some((sig.decl.output, body)),
_ => None,
}
&& let expr = self.tcx.hir_body(*body_id).value
&& (expr.peel_blocks().span == call_expr.span
|| matches!(
self.tcx.parent_hir_node(call_expr.hir_id),
hir::Node::Expr(hir::Expr { kind: hir::ExprKind::Ret(_), .. })
))
{
err.span_label(
output.span(),
match output {
FnRetTy::DefaultReturn(_) => format!(
"this implicit `()` return type influences the call expression's return type"
),
FnRetTy::Return(_) => {
"this return type influences the call expression's return type"
.to_string()
}
},
);
}
} else if let Some(hir::Node::Expr(e)) = self.tcx.hir_get_if_local(def_id)
&& let hir::ExprKind::Closure(hir::Closure { body, .. }) = &e.kind
{
Expand Down
2 changes: 1 addition & 1 deletion compiler/rustc_middle/src/queries.rs
Original file line number Diff line number Diff line change
Expand Up @@ -101,7 +101,7 @@ use crate::mir::mono::{
CodegenUnit, CollectionMode, MonoItem, MonoItemPartitions, NormalizationErrorInMono,
};
use crate::query::describe_as_module;
use crate::query::plumbing::{define_callbacks, query_helper_param_ty};
use crate::query::plumbing::{define_callbacks, maybe_into_query_key};
use crate::traits::query::{
CanonicalAliasGoal, CanonicalDropckOutlivesGoal, CanonicalImpliedOutlivesBoundsGoal,
CanonicalMethodAutoderefStepsGoal, CanonicalPredicateGoal, CanonicalTypeOpAscribeUserTypeGoal,
Expand Down
Loading
Loading