Add tests for "not sure" case of cfg_accessible
This commit is contained in:
parent
163374644b
commit
c413250757
@ -0,0 +1,106 @@
|
||||
error: not sure whether the path is accessible or not
|
||||
--> $DIR/cfg_accessible-not_sure.rs:14:18
|
||||
|
|
||||
LL | #[cfg_accessible(Struct::existing)]
|
||||
| ^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: the type may have associated items, but we are currently not checking them
|
||||
|
||||
error: not sure whether the path is accessible or not
|
||||
--> $DIR/cfg_accessible-not_sure.rs:16:18
|
||||
|
|
||||
LL | #[cfg_accessible(Struct::unresolved)]
|
||||
| ^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: the type may have associated items, but we are currently not checking them
|
||||
|
||||
error: not sure whether the path is accessible or not
|
||||
--> $DIR/cfg_accessible-not_sure.rs:25:18
|
||||
|
|
||||
LL | #[cfg_accessible(Union::existing)]
|
||||
| ^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: the type may have associated items, but we are currently not checking them
|
||||
|
||||
error: not sure whether the path is accessible or not
|
||||
--> $DIR/cfg_accessible-not_sure.rs:27:18
|
||||
|
|
||||
LL | #[cfg_accessible(Union::unresolved)]
|
||||
| ^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: the type may have associated items, but we are currently not checking them
|
||||
|
||||
error: not sure whether the path is accessible or not
|
||||
--> $DIR/cfg_accessible-not_sure.rs:36:18
|
||||
|
|
||||
LL | #[cfg_accessible(Enum::unresolved)]
|
||||
| ^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: the type may have associated items, but we are currently not checking them
|
||||
|
||||
error: not sure whether the path is accessible or not
|
||||
--> $DIR/cfg_accessible-not_sure.rs:46:18
|
||||
|
|
||||
LL | #[cfg_accessible(Trait::existing)]
|
||||
| ^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: the type may have associated items, but we are currently not checking them
|
||||
|
||||
error: not sure whether the path is accessible or not
|
||||
--> $DIR/cfg_accessible-not_sure.rs:48:18
|
||||
|
|
||||
LL | #[cfg_accessible(Trait::unresolved)]
|
||||
| ^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: the type may have associated items, but we are currently not checking them
|
||||
|
||||
error: not sure whether the path is accessible or not
|
||||
--> $DIR/cfg_accessible-not_sure.rs:55:18
|
||||
|
|
||||
LL | #[cfg_accessible(TypeAlias::existing)]
|
||||
| ^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: the type may have associated items, but we are currently not checking them
|
||||
|
||||
error: not sure whether the path is accessible or not
|
||||
--> $DIR/cfg_accessible-not_sure.rs:57:18
|
||||
|
|
||||
LL | #[cfg_accessible(TypeAlias::unresolved)]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: the type may have associated items, but we are currently not checking them
|
||||
|
||||
error: not sure whether the path is accessible or not
|
||||
--> $DIR/cfg_accessible-not_sure.rs:66:18
|
||||
|
|
||||
LL | #[cfg_accessible(ForeignType::unresolved)]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: the type may have associated items, but we are currently not checking them
|
||||
|
||||
error: not sure whether the path is accessible or not
|
||||
--> $DIR/cfg_accessible-not_sure.rs:75:18
|
||||
|
|
||||
LL | #[cfg_accessible(AssocType::AssocType::unresolved)]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: the type may have associated items, but we are currently not checking them
|
||||
|
||||
error: not sure whether the path is accessible or not
|
||||
--> $DIR/cfg_accessible-not_sure.rs:80:18
|
||||
|
|
||||
LL | #[cfg_accessible(u8::unresolved)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: the type may have associated items, but we are currently not checking them
|
||||
|
||||
error: not sure whether the path is accessible or not
|
||||
--> $DIR/cfg_accessible-not_sure.rs:82:18
|
||||
|
|
||||
LL | #[cfg_accessible(u8::is_ascii)]
|
||||
| ^^^^^^^^^^^^
|
||||
|
|
||||
= note: the type may have associated items, but we are currently not checking them
|
||||
|
||||
error: aborting due to 13 previous errors
|
||||
|
@ -0,0 +1,106 @@
|
||||
error: not sure whether the path is accessible or not
|
||||
--> $DIR/cfg_accessible-not_sure.rs:14:18
|
||||
|
|
||||
LL | #[cfg_accessible(Struct::existing)]
|
||||
| ^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: the type may have associated items, but we are currently not checking them
|
||||
|
||||
error: not sure whether the path is accessible or not
|
||||
--> $DIR/cfg_accessible-not_sure.rs:16:18
|
||||
|
|
||||
LL | #[cfg_accessible(Struct::unresolved)]
|
||||
| ^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: the type may have associated items, but we are currently not checking them
|
||||
|
||||
error: not sure whether the path is accessible or not
|
||||
--> $DIR/cfg_accessible-not_sure.rs:25:18
|
||||
|
|
||||
LL | #[cfg_accessible(Union::existing)]
|
||||
| ^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: the type may have associated items, but we are currently not checking them
|
||||
|
||||
error: not sure whether the path is accessible or not
|
||||
--> $DIR/cfg_accessible-not_sure.rs:27:18
|
||||
|
|
||||
LL | #[cfg_accessible(Union::unresolved)]
|
||||
| ^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: the type may have associated items, but we are currently not checking them
|
||||
|
||||
error: not sure whether the path is accessible or not
|
||||
--> $DIR/cfg_accessible-not_sure.rs:36:18
|
||||
|
|
||||
LL | #[cfg_accessible(Enum::unresolved)]
|
||||
| ^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: the type may have associated items, but we are currently not checking them
|
||||
|
||||
error: not sure whether the path is accessible or not
|
||||
--> $DIR/cfg_accessible-not_sure.rs:46:18
|
||||
|
|
||||
LL | #[cfg_accessible(Trait::existing)]
|
||||
| ^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: the type may have associated items, but we are currently not checking them
|
||||
|
||||
error: not sure whether the path is accessible or not
|
||||
--> $DIR/cfg_accessible-not_sure.rs:48:18
|
||||
|
|
||||
LL | #[cfg_accessible(Trait::unresolved)]
|
||||
| ^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: the type may have associated items, but we are currently not checking them
|
||||
|
||||
error: not sure whether the path is accessible or not
|
||||
--> $DIR/cfg_accessible-not_sure.rs:55:18
|
||||
|
|
||||
LL | #[cfg_accessible(TypeAlias::existing)]
|
||||
| ^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: the type may have associated items, but we are currently not checking them
|
||||
|
||||
error: not sure whether the path is accessible or not
|
||||
--> $DIR/cfg_accessible-not_sure.rs:57:18
|
||||
|
|
||||
LL | #[cfg_accessible(TypeAlias::unresolved)]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: the type may have associated items, but we are currently not checking them
|
||||
|
||||
error: not sure whether the path is accessible or not
|
||||
--> $DIR/cfg_accessible-not_sure.rs:66:18
|
||||
|
|
||||
LL | #[cfg_accessible(ForeignType::unresolved)]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: the type may have associated items, but we are currently not checking them
|
||||
|
||||
error: not sure whether the path is accessible or not
|
||||
--> $DIR/cfg_accessible-not_sure.rs:75:18
|
||||
|
|
||||
LL | #[cfg_accessible(AssocType::AssocType::unresolved)]
|
||||
| ^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: the type may have associated items, but we are currently not checking them
|
||||
|
||||
error: not sure whether the path is accessible or not
|
||||
--> $DIR/cfg_accessible-not_sure.rs:80:18
|
||||
|
|
||||
LL | #[cfg_accessible(u8::unresolved)]
|
||||
| ^^^^^^^^^^^^^^
|
||||
|
|
||||
= note: the type may have associated items, but we are currently not checking them
|
||||
|
||||
error: not sure whether the path is accessible or not
|
||||
--> $DIR/cfg_accessible-not_sure.rs:82:18
|
||||
|
|
||||
LL | #[cfg_accessible(u8::is_ascii)]
|
||||
| ^^^^^^^^^^^^
|
||||
|
|
||||
= note: the type may have associated items, but we are currently not checking them
|
||||
|
||||
error: aborting due to 13 previous errors
|
||||
|
@ -0,0 +1,91 @@
|
||||
// revisions: edition2015 edition2021
|
||||
// [edition2015]compile-flags: --edition=2015
|
||||
// [edition2021]compile-flags: --edition=2021
|
||||
|
||||
#![feature(extern_types)]
|
||||
#![feature(cfg_accessible)]
|
||||
|
||||
// Struct::unresolved - error
|
||||
|
||||
struct Struct {
|
||||
existing: u8,
|
||||
}
|
||||
|
||||
#[cfg_accessible(Struct::existing)] //~ ERROR not sure
|
||||
const A: bool = true;
|
||||
#[cfg_accessible(Struct::unresolved)] //~ ERROR not sure
|
||||
const B: bool = true;
|
||||
|
||||
// Union::unresolved - error
|
||||
|
||||
struct Union {
|
||||
existing: u8,
|
||||
}
|
||||
|
||||
#[cfg_accessible(Union::existing)] //~ ERROR not sure
|
||||
const A: bool = true;
|
||||
#[cfg_accessible(Union::unresolved)] //~ ERROR not sure
|
||||
const B: bool = true;
|
||||
|
||||
// Enum::unresolved - error
|
||||
|
||||
enum Enum {
|
||||
Existing { existing: u8 },
|
||||
}
|
||||
|
||||
// FIXME: Currently returns `false` but should be "not sure"
|
||||
#[cfg_accessible(Enum::Existing::existing)]
|
||||
const A: bool = true;
|
||||
// FIXME: Currently returns `false` but should be "not sure"
|
||||
#[cfg_accessible(Enum::Existing::unresolved)]
|
||||
const B: bool = true;
|
||||
#[cfg_accessible(Enum::unresolved)] //~ ERROR not sure
|
||||
const C: bool = true;
|
||||
|
||||
// Trait::unresolved - false or error, depending on edition (error if you can write Trait::foo
|
||||
// instead of <dyn Trait>::foo for methods like impl dyn Trait { fn foo() {} })
|
||||
|
||||
trait Trait {}
|
||||
impl dyn Trait { fn existing() {} }
|
||||
|
||||
// FIXME: Should be a error for edition > 2015
|
||||
#[cfg_accessible(Trait::existing)] //~ ERROR not sure
|
||||
const A: bool = true;
|
||||
#[cfg_accessible(Trait::unresolved)] //~ ERROR not sure
|
||||
const B: bool = true;
|
||||
|
||||
// TypeAlias::unresolved - error
|
||||
|
||||
type TypeAlias = Struct;
|
||||
|
||||
#[cfg_accessible(TypeAlias::existing)] //~ ERROR not sure
|
||||
const A: bool = true;
|
||||
#[cfg_accessible(TypeAlias::unresolved)] //~ ERROR not sure
|
||||
const B: bool = true;
|
||||
|
||||
// ForeignType::unresolved - error
|
||||
|
||||
extern {
|
||||
type ForeignType;
|
||||
}
|
||||
|
||||
#[cfg_accessible(ForeignType::unresolved)] //~ ERROR not sure
|
||||
const A: bool = true;
|
||||
|
||||
// AssocType::unresolved - error
|
||||
|
||||
trait AssocType {
|
||||
type AssocType;
|
||||
}
|
||||
|
||||
#[cfg_accessible(AssocType::AssocType::unresolved)] //~ ERROR not sure
|
||||
const A: bool = true;
|
||||
|
||||
// PrimitiveType::unresolved - error
|
||||
|
||||
#[cfg_accessible(u8::unresolved)] //~ ERROR not sure
|
||||
const A: bool = true;
|
||||
#[cfg_accessible(u8::is_ascii)] //~ ERROR not sure
|
||||
const B: bool = true;
|
||||
|
||||
fn main() {}
|
Loading…
x
Reference in New Issue
Block a user