Skip to content

Commit 7098cfd

Browse files
committed
Fix test cases accordingly
1 parent 2593794 commit 7098cfd

File tree

4 files changed

+43
-1
lines changed

4 files changed

+43
-1
lines changed

src/test/compile-fail/empty-struct-unit-pat.rs

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -32,12 +32,14 @@ fn main() { //~ ERROR: compilation successful
3232
// }
3333
match e1 {
3434
Empty1(..) => () //~ WARN `Empty1` does not name a tuple variant or a tuple struct
35+
//~^ WARN HARD ERROR
3536
}
3637
// Rejected by parser as yet
3738
// match e2 {
3839
// E::Empty2() => () // ERROR `E::Empty2` does not name a tuple variant or a tuple struct
3940
// }
4041
match e2 {
4142
E::Empty2(..) => () //~ WARN `E::Empty2` does not name a tuple variant or a tuple struct
43+
//~^ WARN HARD ERROR
4244
}
4345
}

src/test/compile-fail/private-in-public-warn.rs

Lines changed: 36 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -26,23 +26,34 @@ mod types {
2626
}
2727

2828
pub type Alias = Priv; //~ WARN private type in public interface
29+
//~^ WARNING HARD ERROR
2930
pub enum E {
3031
V1(Priv), //~ WARN private type in public interface
32+
//~^ WARNING HARD ERROR
3133
V2 { field: Priv }, //~ WARN private type in public interface
34+
//~^ WARNING HARD ERROR
3235
}
3336
pub trait Tr {
3437
const C: Priv = Priv; //~ WARN private type in public interface
38+
//~^ WARNING HARD ERROR
3539
type Alias = Priv; //~ WARN private type in public interface
40+
//~^ WARNING HARD ERROR
3641
fn f1(arg: Priv) {} //~ WARN private type in public interface
42+
//~^ WARNING HARD ERROR
3743
fn f2() -> Priv { panic!() } //~ WARN private type in public interface
44+
//~^ WARNING HARD ERROR
3845
}
3946
extern {
4047
pub static ES: Priv; //~ WARN private type in public interface
48+
//~^ WARNING HARD ERROR
4149
pub fn ef1(arg: Priv); //~ WARN private type in public interface
50+
//~^ WARNING HARD ERROR
4251
pub fn ef2() -> Priv; //~ WARN private type in public interface
52+
//~^ WARNING HARD ERROR
4353
}
4454
impl PubTr for Pub {
4555
type Alias = Priv; //~ WARN private type in public interface
56+
//~^ WARNING HARD ERROR
4657
}
4758
}
4859

@@ -53,14 +64,21 @@ mod traits {
5364

5465
pub type Alias<T: PrivTr> = T; //~ WARN private trait in public interface
5566
//~^ WARN trait bounds are not (yet) enforced in type definitions
67+
//~| WARNING HARD ERROR
5668
pub trait Tr1: PrivTr {} //~ WARN private trait in public interface
69+
//~^ WARNING HARD ERROR
5770
pub trait Tr2<T: PrivTr> {} //~ WARN private trait in public interface
71+
//~^ WARNING HARD ERROR
5872
pub trait Tr3 {
5973
type Alias: PrivTr; //~ WARN private trait in public interface
74+
//~^ WARNING HARD ERROR
6075
fn f<T: PrivTr>(arg: T) {} //~ WARN private trait in public interface
76+
//~^ WARNING HARD ERROR
6177
}
6278
impl<T: PrivTr> Pub<T> {} //~ WARN private trait in public interface
79+
//~^ WARNING HARD ERROR
6380
impl<T: PrivTr> PubTr for Pub<T> {} //~ WARN private trait in public interface
81+
//~^ WARNING HARD ERROR
6482
}
6583

6684
mod traits_where {
@@ -69,12 +87,17 @@ mod traits_where {
6987
pub trait PubTr {}
7088

7189
pub type Alias<T> where T: PrivTr = T; //~ WARN private trait in public interface
90+
//~^ WARNING HARD ERROR
7291
pub trait Tr2<T> where T: PrivTr {} //~ WARN private trait in public interface
92+
//~^ WARNING HARD ERROR
7393
pub trait Tr3 {
7494
fn f<T>(arg: T) where T: PrivTr {} //~ WARN private trait in public interface
95+
//~^ WARNING HARD ERROR
7596
}
7697
impl<T> Pub<T> where T: PrivTr {} //~ WARN private trait in public interface
98+
//~^ WARNING HARD ERROR
7799
impl<T> PubTr for Pub<T> where T: PrivTr {} //~ WARN private trait in public interface
100+
//~^ WARNING HARD ERROR
78101
}
79102

80103
mod generics {
@@ -84,9 +107,13 @@ mod generics {
84107
pub trait PubTr<T> {}
85108

86109
pub trait Tr1: PrivTr<Pub> {} //~ WARN private trait in public interface
110+
//~^ WARNING HARD ERROR
87111
pub trait Tr2: PubTr<Priv> {} //~ WARN private type in public interface
112+
//~^ WARNING HARD ERROR
88113
pub trait Tr3: PubTr<[Priv; 1]> {} //~ WARN private type in public interface
114+
//~^ WARNING HARD ERROR
89115
pub trait Tr4: PubTr<Pub<Priv>> {} //~ WARN private type in public interface
116+
//~^ WARNING HARD ERROR
90117
}
91118

92119
mod impls {
@@ -113,6 +140,7 @@ mod impls {
113140
}
114141
impl PubTr for Pub {
115142
type Alias = Priv; //~ WARN private type in public interface
143+
//~^ WARNING HARD ERROR
116144
}
117145
}
118146

@@ -179,22 +207,27 @@ mod aliases_pub {
179207
pub trait Tr1: PrivUseAliasTr {} // OK
180208
// This should be OK, if type aliases are substituted
181209
pub trait Tr2: PrivUseAliasTr<PrivAlias> {} //~ WARN private type in public interface
210+
//~^ WARNING HARD ERROR
182211

183212
impl PrivAlias {
184213
pub fn f(arg: Priv) {} //~ WARN private type in public interface
214+
//~^ WARNING HARD ERROR
185215
}
186216
// This doesn't even parse
187217
// impl <Priv as PrivTr>::AssocAlias {
188218
// pub fn f(arg: Priv) {} // WARN private type in public interface
189219
// }
190220
impl PrivUseAliasTr for PrivUseAlias {
191221
type Check = Priv; //~ WARN private type in public interface
222+
//~^ WARNING HARD ERROR
192223
}
193224
impl PrivUseAliasTr for PrivAlias {
194225
type Check = Priv; //~ WARN private type in public interface
226+
//~^ WARNING HARD ERROR
195227
}
196228
impl PrivUseAliasTr for <Priv as PrivTr>::AssocAlias {
197229
type Check = Priv; //~ WARN private type in public interface
230+
//~^ WARNING HARD ERROR
198231
}
199232
}
200233

@@ -217,8 +250,11 @@ mod aliases_priv {
217250
impl PrivTr for Priv {}
218251

219252
pub trait Tr1: PrivUseAliasTr {} //~ WARN private trait in public interface
253+
//~^ WARNING HARD ERROR
220254
pub trait Tr2: PrivUseAliasTr<PrivAlias> {} //~ WARN private trait in public interface
221255
//~^ WARN private type in public interface
256+
//~| WARNING HARD ERROR
257+
//~| WARNING HARD ERROR
222258

223259
impl PrivUseAlias {
224260
pub fn f(arg: Priv) {} // OK

src/test/compile-fail/private-variant-reexport.rs

Lines changed: 4 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -13,18 +13,22 @@
1313

1414
mod m1 {
1515
pub use ::E::V; //~ WARN variant `V` is private, and cannot be reexported
16+
//~^ WARNING HARD ERROR
1617
}
1718

1819
mod m2 {
1920
pub use ::E::{V}; //~ WARN variant `V` is private, and cannot be reexported
21+
//~^ WARNING HARD ERROR
2022
}
2123

2224
mod m3 {
2325
pub use ::E::V::{self}; //~ WARN variant `V` is private, and cannot be reexported
26+
//~^ WARNING HARD ERROR
2427
}
2528

2629
mod m4 {
2730
pub use ::E::*; //~ WARN variant `V` is private, and cannot be reexported
31+
//~^ WARNING HARD ERROR
2832
}
2933

3034
enum E { V }

src/test/compile-fail/type-parameter-invalid-lint.rs

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -13,5 +13,5 @@
1313

1414
fn avg<T=i32>(_: T) {}
1515
//~^ ERROR defaults for type parameters are only allowed
16-
//~| NOTE HARD ERROR
16+
//~| WARNING HARD ERROR
1717
fn main() {}

0 commit comments

Comments
 (0)