blob: 999834f5bdecd3f2d5555cbd621ca9589c64210a (
plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
|
//@ known-bug: #88296
#![feature(specialization)]
trait Foo {
type Bar;
}
impl<T> Foo for T {
default type Bar = u32;
}
impl Foo for i32 {
type Bar = i32;
}
extern "C" {
#[allow(unused)]
// OK as Foo::Bar is explicitly defined for i32
static OK: <i32 as Foo>::Bar;
#[allow(unused)]
// ICE in the improper_ctypes lint
// as Foo::Bar is only default implemented for ()
static ICE: <() as Foo>::Bar;
}
pub fn main() {}
|