| pub struct P; | |
| pub struct Q; | |
| pub struct R<T>(T); | |
| // Checks that tuple and unit both work | |
| pub fn side_effect() {} | |
| // Check a non-tuple | |
| pub fn not_tuple() -> P { | |
| loop {} | |
| } | |
| // Check a 1-tuple | |
| pub fn one() -> (P,) { | |
| loop {} | |
| } | |
| // Check a 2-tuple | |
| pub fn two() -> (P, P) { | |
| loop {} | |
| } | |
| // Check a nested tuple | |
| pub fn nest() -> (Q, R<(u32,)>) { | |
| loop {} | |
| } |