@@ -2228,6 +2228,34 @@ mod explicit_type_args {
22282228 }
22292229}
22302230
2231+ mod tuples {
2232+ struct S1 { }
2233+
2234+ impl S1 {
2235+ fn get_pair ( ) -> ( S1 , S1 ) {
2236+ ( S1 { } , S1 { } )
2237+ }
2238+ fn foo ( self ) { }
2239+ }
2240+
2241+ pub fn f ( ) {
2242+ let a = S1 :: get_pair ( ) ; // $ method=get_pair MISSING: type=a:?
2243+ let mut b = S1 :: get_pair ( ) ; // $ method=get_pair MISSING: type=b:?
2244+ let ( c, d) = S1 :: get_pair ( ) ; // $ method=get_pair MISSING: type=c:? type=d:?
2245+ let ( mut e, f) = S1 :: get_pair ( ) ; // $ method=get_pair MISSING: type=e: type=f:
2246+ let ( mut g, mut h) = S1 :: get_pair ( ) ; // $ method=get_pair MISSING: type=g:? type=h:?
2247+
2248+ a. 0 . foo ( ) ; // $ MISSING: method=foo
2249+ b. 1 . foo ( ) ; // $ MISSING: method=foo
2250+ c. foo ( ) ; // $ MISSING: method=foo
2251+ d. foo ( ) ; // $ MISSING: method=foo
2252+ e. foo ( ) ; // $ MISSING: method=foo
2253+ f. foo ( ) ; // $ MISSING: method=foo
2254+ g. foo ( ) ; // $ MISSING: method=foo
2255+ h. foo ( ) ; // $ MISSING: method=foo
2256+ }
2257+ }
2258+
22312259fn main ( ) {
22322260 field_access:: f ( ) ; // $ method=f
22332261 method_impl:: f ( ) ; // $ method=f
@@ -2251,7 +2279,9 @@ fn main() {
22512279 impl_trait:: f ( ) ; // $ method=f
22522280 indexers:: f ( ) ; // $ method=f
22532281 loops:: f ( ) ; // $ method=f
2282+ explicit_type_args:: f ( ) ; // $ method=f
22542283 macros:: f ( ) ; // $ method=f
22552284 method_determined_by_argument_type:: f ( ) ; // $ method=f
2285+ tuples:: f ( ) ; // $ method=f
22562286 dereference:: test ( ) ; // $ method=test
22572287}
0 commit comments