Skip to content
体验新版
项目
组织
正在加载...
登录
切换导航
打开侧边栏
int
Rust
提交
111df9e6
R
Rust
项目概览
int
/
Rust
12 个月 前同步成功
通知
1
Star
0
Fork
0
代码
文件
提交
分支
Tags
贡献者
分支图
Diff
Issue
0
列表
看板
标记
里程碑
合并请求
0
DevOps
流水线
流水线任务
计划
Wiki
0
Wiki
分析
仓库
DevOps
项目成员
Pages
R
Rust
项目概览
项目概览
详情
发布
仓库
仓库
文件
提交
分支
标签
贡献者
分支图
比较
Issue
0
Issue
0
列表
看板
标记
里程碑
合并请求
0
合并请求
0
Pages
DevOps
DevOps
流水线
流水线任务
计划
分析
分析
仓库分析
DevOps
Wiki
0
Wiki
成员
成员
收起侧边栏
关闭侧边栏
动态
分支图
创建新Issue
流水线任务
提交
Issue看板
体验新版 GitCode,发现更多精彩内容 >>
提交
111df9e6
编写于
7月 03, 2022
作者:
C
Camille GILLOT
浏览文件
操作
浏览文件
下载
电子邮件补丁
差异文件
Reword comments and rename HIR visiting methods.
上级
c461f7a1
变更
18
隐藏空白更改
内联
并排
Showing
18 changed file
with
113 addition
and
105 deletion
+113
-105
compiler/rustc_hir/src/intravisit.rs
compiler/rustc_hir/src/intravisit.rs
+2
-2
compiler/rustc_incremental/src/assert_dep_graph.rs
compiler/rustc_incremental/src/assert_dep_graph.rs
+1
-1
compiler/rustc_metadata/src/rmeta/encoder.rs
compiler/rustc_metadata/src/rmeta/encoder.rs
+1
-1
compiler/rustc_middle/src/hir/map/mod.rs
compiler/rustc_middle/src/hir/map/mod.rs
+37
-29
compiler/rustc_middle/src/hir/nested_filter.rs
compiler/rustc_middle/src/hir/nested_filter.rs
+1
-1
compiler/rustc_mir_transform/src/lib.rs
compiler/rustc_mir_transform/src/lib.rs
+1
-1
compiler/rustc_passes/src/check_attr.rs
compiler/rustc_passes/src/check_attr.rs
+1
-1
compiler/rustc_passes/src/check_const.rs
compiler/rustc_passes/src/check_const.rs
+1
-1
compiler/rustc_passes/src/hir_id_validator.rs
compiler/rustc_passes/src/hir_id_validator.rs
+1
-1
compiler/rustc_passes/src/liveness.rs
compiler/rustc_passes/src/liveness.rs
+1
-1
compiler/rustc_passes/src/loops.rs
compiler/rustc_passes/src/loops.rs
+1
-1
compiler/rustc_passes/src/naked_functions.rs
compiler/rustc_passes/src/naked_functions.rs
+1
-1
compiler/rustc_passes/src/stability.rs
compiler/rustc_passes/src/stability.rs
+2
-2
compiler/rustc_typeck/src/collect.rs
compiler/rustc_typeck/src/collect.rs
+1
-1
src/librustdoc/scrape_examples.rs
src/librustdoc/scrape_examples.rs
+1
-1
src/test/ui/dep-graph/dep-graph-struct-signature.stderr
src/test/ui/dep-graph/dep-graph-struct-signature.stderr
+36
-36
src/test/ui/dep-graph/dep-graph-type-alias.stderr
src/test/ui/dep-graph/dep-graph-type-alias.stderr
+18
-18
src/test/ui/stability-attribute/missing-const-stability.stderr
...est/ui/stability-attribute/missing-const-stability.stderr
+6
-6
未找到文件。
compiler/rustc_hir/src/intravisit.rs
浏览文件 @
111df9e6
...
...
@@ -19,7 +19,7 @@
//! - Example: Examine each expression to look for its type and do some check or other.
//! - How: Implement `intravisit::Visitor` and override the `NestedFilter` type to
//! `nested_filter::OnlyBodies` (and implement `nested_visit_map`), and use
//! `tcx.hir().
deep_visit_all_item_likes
(&mut visitor)`. Within your
//! `tcx.hir().
visit_all_item_likes_in_crate
(&mut visitor)`. Within your
//! `intravisit::Visitor` impl, implement methods like `visit_expr()` (don't forget to invoke
//! `intravisit::walk_expr()` to keep walking the subparts).
//! - Pro: Visitor methods for any kind of HIR node, not just item-like things.
...
...
@@ -190,7 +190,7 @@ impl NestedFilter<'_> for None {
/// (this is why the module is called `intravisit`, to distinguish it
/// from the AST's `visit` module, which acts differently). If you
/// simply want to visit all items in the crate in some order, you
/// should call `
Crate::visit_all_items
`. Otherwise, see the comment
/// should call `
tcx.hir().visit_all_item_likes_in_crate
`. Otherwise, see the comment
/// on `visit_nested_item` for details on how to visit nested items.
///
/// If you want to ensure that your code handles every variant
...
...
compiler/rustc_incremental/src/assert_dep_graph.rs
浏览文件 @
111df9e6
...
...
@@ -75,7 +75,7 @@ pub fn assert_dep_graph(tcx: TyCtxt<'_>) {
let
mut
visitor
=
IfThisChanged
{
tcx
,
if_this_changed
:
vec!
[],
then_this_would_need
:
vec!
[]
};
visitor
.process_attrs
(
hir
::
CRATE_HIR_ID
);
tcx
.hir
()
.
deep_visit_all_item_likes
(
&
mut
visitor
);
tcx
.hir
()
.
visit_all_item_likes_in_crate
(
&
mut
visitor
);
(
visitor
.if_this_changed
,
visitor
.then_this_would_need
)
};
...
...
compiler/rustc_metadata/src/rmeta/encoder.rs
浏览文件 @
111df9e6
...
...
@@ -419,7 +419,7 @@ fn encode_info_for_items(&mut self) {
return
;
}
self
.tcx
.hir
()
.
deep_visit_all_item_likes
(
self
);
self
.tcx
.hir
()
.
visit_all_item_likes_in_crate
(
self
);
}
fn
encode_def_path_table
(
&
mut
self
)
{
...
...
compiler/rustc_middle/src/hir/map/mod.rs
浏览文件 @
111df9e6
...
...
@@ -568,7 +568,7 @@ pub fn get_module(self, module: LocalDefId) -> (&'hir Mod<'hir>, Span, HirId) {
}
}
/// Walks the contents of
a crate. See also `Crate::visit_all_items
`.
/// Walks the contents of
the local crate. See also `visit_all_item_likes_in_crate
`.
pub
fn
walk_toplevel_module
(
self
,
visitor
:
&
mut
impl
Visitor
<
'hir
>
)
{
let
(
top_mod
,
span
,
hir_id
)
=
self
.get_module
(
CRATE_DEF_ID
);
visitor
.visit_mod
(
top_mod
,
span
,
hir_id
);
...
...
@@ -588,53 +588,61 @@ pub fn walk_attributes(self, visitor: &mut impl Visitor<'hir>) {
}
}
/// Visits all items in the crate in some deterministic (but
/// unspecified) order. If you need to process every item,
/// and care about nesting -- usually because your algorithm
/// follows lexical scoping rules -- then this method is the best choice.
/// If you don't care about nesting, you should use the `tcx.hir_crate_items()` query
/// or `items()` instead.
/// Visits all item-likes in the crate in some deterministic (but unspecified) order. If you
/// need to process every item-like, and don't care about visiting nested items in a particular
/// order then this method is the best choice. If you do care about this nesting, you should
/// use the `tcx.hir().walk_toplevel_module`.
///
/// Note that this function will access HIR for all the item-likes in the crate. If you only
/// need to access some of them, it is usually better to manually loop on the iterators
/// provided by `tcx.hir_crate_items(())`.
///
/// Please see the notes in `intravisit.rs` for more information.
pub
fn
deep_visit_all_item_likes
<
V
>
(
self
,
visitor
:
&
mut
V
)
pub
fn
visit_all_item_likes_in_crate
<
V
>
(
self
,
visitor
:
&
mut
V
)
where
V
:
Visitor
<
'hir
>
,
{
let
krate
=
self
.krate
();
for
owner
in
krate
.owners
.iter
()
.filter_map
(|
i
|
i
.as_owner
())
{
match
owner
.node
()
{
OwnerNode
::
Item
(
item
)
=>
visitor
.visit_item
(
item
),
OwnerNode
::
ForeignItem
(
item
)
=>
visitor
.visit_foreign_item
(
item
),
OwnerNode
::
ImplItem
(
item
)
=>
visitor
.visit_impl_item
(
item
),
OwnerNode
::
TraitItem
(
item
)
=>
visitor
.visit_trait_item
(
item
),
OwnerNode
::
Crate
(
_
)
=>
{}
}
let
krate
=
self
.tcx
.hir_crate_items
(());
for
id
in
krate
.items
()
{
visitor
.visit_item
(
self
.item
(
id
));
}
for
id
in
krate
.trait_items
()
{
visitor
.visit_trait_item
(
self
.trait_item
(
id
));
}
for
id
in
krate
.impl_items
()
{
visitor
.visit_impl_item
(
self
.impl_item
(
id
));
}
for
id
in
krate
.foreign_items
()
{
visitor
.visit_foreign_item
(
self
.foreign_item
(
id
));
}
}
/// If you don't care about nesting, you should use the
/// `tcx.hir_module_items()` query or `module_items()` instead.
/// Please see notes in `deep_visit_all_item_likes`.
pub
fn
deep_visit_item_likes_in_module
<
V
>
(
self
,
module
:
LocalDefId
,
visitor
:
&
mut
V
)
/// This method is the equivalent of `visit_all_item_likes_in_crate` but restricted to
/// item-likes in a single module.
pub
fn
visit_item_likes_in_module
<
V
>
(
self
,
module
:
LocalDefId
,
visitor
:
&
mut
V
)
where
V
:
Visitor
<
'hir
>
,
{
let
module
=
self
.tcx
.hir_module_items
(
module
);
for
id
in
module
.items
.iter
()
{
visitor
.visit_item
(
self
.item
(
*
id
));
for
id
in
module
.items
()
{
visitor
.visit_item
(
self
.item
(
id
));
}
for
id
in
module
.trait_items
.iter
()
{
visitor
.visit_trait_item
(
self
.trait_item
(
*
id
));
for
id
in
module
.trait_items
()
{
visitor
.visit_trait_item
(
self
.trait_item
(
id
));
}
for
id
in
module
.impl_items
.iter
()
{
visitor
.visit_impl_item
(
self
.impl_item
(
*
id
));
for
id
in
module
.impl_items
()
{
visitor
.visit_impl_item
(
self
.impl_item
(
id
));
}
for
id
in
module
.foreign_items
.iter
()
{
visitor
.visit_foreign_item
(
self
.foreign_item
(
*
id
));
for
id
in
module
.foreign_items
()
{
visitor
.visit_foreign_item
(
self
.foreign_item
(
id
));
}
}
...
...
compiler/rustc_middle/src/hir/nested_filter.rs
浏览文件 @
111df9e6
...
...
@@ -8,7 +8,7 @@
/// constant arguments of types, e.g. in `let _: [(); /* HERE */];`.
///
/// **This is the most common choice.** A very common pattern is
/// to use `
deep_visit_all_item_likes
()` as an outer loop,
/// to use `
visit_all_item_likes_in_crate
()` as an outer loop,
/// and to have the visitor that visits the contents of each item
/// using this setting.
pub
struct
OnlyBodies
(());
...
...
compiler/rustc_mir_transform/src/lib.rs
浏览文件 @
111df9e6
...
...
@@ -173,7 +173,7 @@ fn visit_variant_data(
intravisit
::
walk_struct_def
(
self
,
v
)
}
}
tcx
.hir
()
.
deep_visit_all_item_likes
(
&
mut
GatherCtors
{
tcx
,
set
:
&
mut
set
});
tcx
.hir
()
.
visit_all_item_likes_in_crate
(
&
mut
GatherCtors
{
tcx
,
set
:
&
mut
set
});
set
}
...
...
compiler/rustc_passes/src/check_attr.rs
浏览文件 @
111df9e6
...
...
@@ -2428,7 +2428,7 @@ fn check_non_exported_macro_for_invalid_attrs(tcx: TyCtxt<'_>, item: &Item<'_>)
fn
check_mod_attrs
(
tcx
:
TyCtxt
<
'_
>
,
module_def_id
:
LocalDefId
)
{
let
check_attr_visitor
=
&
mut
CheckAttrVisitor
{
tcx
};
tcx
.hir
()
.
deep_
visit_item_likes_in_module
(
module_def_id
,
check_attr_visitor
);
tcx
.hir
()
.visit_item_likes_in_module
(
module_def_id
,
check_attr_visitor
);
if
module_def_id
.is_top_level_module
()
{
check_attr_visitor
.check_attributes
(
CRATE_HIR_ID
,
DUMMY_SP
,
Target
::
Mod
,
None
);
check_invalid_crate_level_attr
(
tcx
,
tcx
.hir
()
.krate_attrs
());
...
...
compiler/rustc_passes/src/check_const.rs
浏览文件 @
111df9e6
...
...
@@ -56,7 +56,7 @@ fn required_feature_gates(self) -> Option<&'static [Symbol]> {
fn
check_mod_const_bodies
(
tcx
:
TyCtxt
<
'_
>
,
module_def_id
:
LocalDefId
)
{
let
mut
vis
=
CheckConstVisitor
::
new
(
tcx
);
tcx
.hir
()
.
deep_
visit_item_likes_in_module
(
module_def_id
,
&
mut
vis
);
tcx
.hir
()
.visit_item_likes_in_module
(
module_def_id
,
&
mut
vis
);
}
pub
(
crate
)
fn
provide
(
providers
:
&
mut
Providers
)
{
...
...
compiler/rustc_passes/src/hir_id_validator.rs
浏览文件 @
111df9e6
...
...
@@ -28,7 +28,7 @@ pub fn check_crate(tcx: TyCtxt<'_>) {
errors
:
&
errors
,
};
tcx
.hir
()
.
deep_
visit_item_likes_in_module
(
module_id
,
&
mut
v
);
tcx
.hir
()
.visit_item_likes_in_module
(
module_id
,
&
mut
v
);
});
let
errors
=
errors
.into_inner
();
...
...
compiler/rustc_passes/src/liveness.rs
浏览文件 @
111df9e6
...
...
@@ -140,7 +140,7 @@ fn live_node_kind_to_string(lnk: LiveNodeKind, tcx: TyCtxt<'_>) -> String {
}
fn
check_mod_liveness
(
tcx
:
TyCtxt
<
'_
>
,
module_def_id
:
LocalDefId
)
{
tcx
.hir
()
.
deep_
visit_item_likes_in_module
(
module_def_id
,
&
mut
IrMaps
::
new
(
tcx
));
tcx
.hir
()
.visit_item_likes_in_module
(
module_def_id
,
&
mut
IrMaps
::
new
(
tcx
));
}
pub
fn
provide
(
providers
:
&
mut
Providers
)
{
...
...
compiler/rustc_passes/src/loops.rs
浏览文件 @
111df9e6
...
...
@@ -31,7 +31,7 @@ struct CheckLoopVisitor<'a, 'hir> {
}
fn
check_mod_loops
(
tcx
:
TyCtxt
<
'_
>
,
module_def_id
:
LocalDefId
)
{
tcx
.hir
()
.
deep_
visit_item_likes_in_module
(
tcx
.hir
()
.visit_item_likes_in_module
(
module_def_id
,
&
mut
CheckLoopVisitor
{
sess
:
&
tcx
.sess
,
hir_map
:
tcx
.hir
(),
cx
:
Normal
},
);
...
...
compiler/rustc_passes/src/naked_functions.rs
浏览文件 @
111df9e6
...
...
@@ -14,7 +14,7 @@
use
rustc_target
::
spec
::
abi
::
Abi
;
fn
check_mod_naked_functions
(
tcx
:
TyCtxt
<
'_
>
,
module_def_id
:
LocalDefId
)
{
tcx
.hir
()
.
deep_
visit_item_likes_in_module
(
module_def_id
,
&
mut
CheckNakedFunctions
{
tcx
});
tcx
.hir
()
.visit_item_likes_in_module
(
module_def_id
,
&
mut
CheckNakedFunctions
{
tcx
});
}
pub
(
crate
)
fn
provide
(
providers
:
&
mut
Providers
)
{
...
...
compiler/rustc_passes/src/stability.rs
浏览文件 @
111df9e6
...
...
@@ -660,7 +660,7 @@ fn stability_index(tcx: TyCtxt<'_>, (): ()) -> Index {
/// Cross-references the feature names of unstable APIs with enabled
/// features and possibly prints errors.
fn
check_mod_unstable_api_usage
(
tcx
:
TyCtxt
<
'_
>
,
module_def_id
:
LocalDefId
)
{
tcx
.hir
()
.
deep_
visit_item_likes_in_module
(
module_def_id
,
&
mut
Checker
{
tcx
});
tcx
.hir
()
.visit_item_likes_in_module
(
module_def_id
,
&
mut
Checker
{
tcx
});
}
pub
(
crate
)
fn
provide
(
providers
:
&
mut
Providers
)
{
...
...
@@ -890,7 +890,7 @@ pub fn check_unused_or_stable_features(tcx: TyCtxt<'_>) {
let
mut
missing
=
MissingStabilityAnnotations
{
tcx
,
access_levels
};
missing
.check_missing_stability
(
CRATE_DEF_ID
,
tcx
.hir
()
.span
(
CRATE_HIR_ID
));
tcx
.hir
()
.walk_toplevel_module
(
&
mut
missing
);
tcx
.hir
()
.
deep_visit_all_item_likes
(
&
mut
missing
);
tcx
.hir
()
.
visit_all_item_likes_in_crate
(
&
mut
missing
);
}
let
declared_lang_features
=
&
tcx
.features
()
.declared_lang_features
;
...
...
compiler/rustc_typeck/src/collect.rs
浏览文件 @
111df9e6
...
...
@@ -59,7 +59,7 @@
// Main entry point
fn
collect_mod_item_types
(
tcx
:
TyCtxt
<
'_
>
,
module_def_id
:
LocalDefId
)
{
tcx
.hir
()
.
deep_
visit_item_likes_in_module
(
module_def_id
,
&
mut
CollectItemTypesVisitor
{
tcx
});
tcx
.hir
()
.visit_item_likes_in_module
(
module_def_id
,
&
mut
CollectItemTypesVisitor
{
tcx
});
}
pub
fn
provide
(
providers
:
&
mut
Providers
)
{
...
...
src/librustdoc/scrape_examples.rs
浏览文件 @
111df9e6
...
...
@@ -303,7 +303,7 @@ pub(crate) fn run(
// Run call-finder on all items
let
mut
calls
=
FxHashMap
::
default
();
let
mut
finder
=
FindCalls
{
calls
:
&
mut
calls
,
tcx
,
map
:
tcx
.hir
(),
cx
,
target_crates
};
tcx
.hir
()
.
deep_visit_all_item_likes
(
&
mut
finder
);
tcx
.hir
()
.
visit_all_item_likes_in_crate
(
&
mut
finder
);
// Sort call locations within a given file in document order
for
fn_calls
in
calls
.values_mut
()
{
...
...
src/test/ui/dep-graph/dep-graph-struct-signature.stderr
浏览文件 @
111df9e6
...
...
@@ -16,12 +16,6 @@ error: no path from `WillChange` to `trait_def`
LL | #[rustc_then_this_would_need(trait_def)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: OK
--> $DIR/dep-graph-struct-signature.rs:32:9
|
LL | #[rustc_then_this_would_need(fn_sig)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: OK
--> $DIR/dep-graph-struct-signature.rs:36:5
|
...
...
@@ -52,36 +46,12 @@ error: OK
LL | #[rustc_then_this_would_need(type_of)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: OK
--> $DIR/dep-graph-struct-signature.rs:48:9
|
LL | #[rustc_then_this_would_need(fn_sig)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: OK
--> $DIR/dep-graph-struct-signature.rs:49:9
|
LL | #[rustc_then_this_would_need(typeck)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: OK
--> $DIR/dep-graph-struct-signature.rs:53:5
|
LL | #[rustc_then_this_would_need(type_of)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: OK
--> $DIR/dep-graph-struct-signature.rs:55:9
|
LL | #[rustc_then_this_would_need(fn_sig)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: OK
--> $DIR/dep-graph-struct-signature.rs:56:9
|
LL | #[rustc_then_this_would_need(typeck)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: OK
--> $DIR/dep-graph-struct-signature.rs:61:9
|
...
...
@@ -106,12 +76,6 @@ error: no path from `WillChange` to `type_of`
LL | #[rustc_then_this_would_need(type_of)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: no path from `WillChange` to `fn_sig`
--> $DIR/dep-graph-struct-signature.rs:77:9
|
LL | #[rustc_then_this_would_need(fn_sig)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: no path from `WillChange` to `fn_sig`
--> $DIR/dep-graph-struct-signature.rs:81:5
|
...
...
@@ -130,5 +94,41 @@ error: no path from `WillChange` to `typeck`
LL | #[rustc_then_this_would_need(typeck)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: OK
--> $DIR/dep-graph-struct-signature.rs:32:9
|
LL | #[rustc_then_this_would_need(fn_sig)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: no path from `WillChange` to `fn_sig`
--> $DIR/dep-graph-struct-signature.rs:77:9
|
LL | #[rustc_then_this_would_need(fn_sig)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: OK
--> $DIR/dep-graph-struct-signature.rs:48:9
|
LL | #[rustc_then_this_would_need(fn_sig)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: OK
--> $DIR/dep-graph-struct-signature.rs:49:9
|
LL | #[rustc_then_this_would_need(typeck)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: OK
--> $DIR/dep-graph-struct-signature.rs:55:9
|
LL | #[rustc_then_this_would_need(fn_sig)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: OK
--> $DIR/dep-graph-struct-signature.rs:56:9
|
LL | #[rustc_then_this_would_need(typeck)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: aborting due to 22 previous errors
src/test/ui/dep-graph/dep-graph-type-alias.stderr
浏览文件 @
111df9e6
...
...
@@ -28,30 +28,12 @@ error: no path from `TypeAlias` to `type_of`
LL | #[rustc_then_this_would_need(type_of)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: OK
--> $DIR/dep-graph-type-alias.rs:36:5
|
LL | #[rustc_then_this_would_need(fn_sig)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: no path from `TypeAlias` to `type_of`
--> $DIR/dep-graph-type-alias.rs:42:1
|
LL | #[rustc_then_this_would_need(type_of)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: OK
--> $DIR/dep-graph-type-alias.rs:44:5
|
LL | #[rustc_then_this_would_need(fn_sig)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: OK
--> $DIR/dep-graph-type-alias.rs:45:5
|
LL | #[rustc_then_this_would_need(typeck)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: OK
--> $DIR/dep-graph-type-alias.rs:49:1
|
...
...
@@ -70,5 +52,23 @@ error: OK
LL | #[rustc_then_this_would_need(typeck)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: OK
--> $DIR/dep-graph-type-alias.rs:36:5
|
LL | #[rustc_then_this_would_need(fn_sig)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: OK
--> $DIR/dep-graph-type-alias.rs:44:5
|
LL | #[rustc_then_this_would_need(fn_sig)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: OK
--> $DIR/dep-graph-type-alias.rs:45:5
|
LL | #[rustc_then_this_would_need(typeck)]
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
error: aborting due to 12 previous errors
src/test/ui/stability-attribute/missing-const-stability.stderr
浏览文件 @
111df9e6
...
...
@@ -4,12 +4,6 @@ error: function has missing const stability attribute
LL | pub const fn foo() {}
| ^^^^^^^^^^^^^^^^^^^^^
error: associated function has missing const stability attribute
--> $DIR/missing-const-stability.rs:15:5
|
LL | pub const fn foo() {}
| ^^^^^^^^^^^^^^^^^^^^^
error: implementation has missing const stability attribute
--> $DIR/missing-const-stability.rs:27:1
|
...
...
@@ -19,5 +13,11 @@ LL | | fn fun() {}
LL | | }
| |_^
error: associated function has missing const stability attribute
--> $DIR/missing-const-stability.rs:15:5
|
LL | pub const fn foo() {}
| ^^^^^^^^^^^^^^^^^^^^^
error: aborting due to 3 previous errors
编辑
预览
Markdown
is supported
0%
请重试
或
添加新附件
.
添加附件
取消
You are about to add
0
people
to the discussion. Proceed with caution.
先完成此消息的编辑!
取消
想要评论请
注册
或
登录