Given the following code, I would've expected rustc to mention the cfg'ed out item Struct:
#[cfg(flag)]
struct Struct;
fn main() { let _ = Struct; } //~ ERROR cannot find type `Struct` in this scope
but it doesn't:
error[E0425]: cannot find value `Struct` in this scope
--> file.rs:4:21
|
4 | fn main() { let _ = Struct; }
| ^^^^^^ not found in this scope
Only if you slightly tweak the input by replacing the simple path Struct with a complex one like self::Struct or crate::Struct, the note "found an item that was configured out" will show up:
#[cfg(flag)]
struct Struct;
fn main() { let _ = self::Struct; }
error[E0425]: cannot find value `Struct` in module `self`
--> file.rs:4:27
|
4 | fn main() { let _ = self::Struct; }
| ^^^^^^ not found in `self`
|
note: found an item that was configured out
--> file.rs:2:8
|
2 | struct Struct;
| ^^^^^^
note: the item is gated here
--> file.rs:1:1
|
1 | #[cfg(flag)]
| ^^^^^^^^^^^^
CC #109005. I don't know if that's intentional or not.
Given the following code, I would've expected rustc to mention the cfg'ed out item
Struct:but it doesn't:
Only if you slightly tweak the input by replacing the simple path
Structwith a complex one likeself::Structorcrate::Struct, the note "found an item that was configured out" will show up:CC #109005. I don't know if that's intentional or not.