File tree Expand file tree Collapse file tree 2 files changed +27
-0
lines changed Expand file tree Collapse file tree 2 files changed +27
-0
lines changed Original file line number Diff line number Diff line change @@ -2920,6 +2920,8 @@ class Resolver {
2920
2920
NormalRibKind ) )
2921
2921
|| {
2922
2922
2923
+ self . resolve_type_parameters ( type_parameters, visitor) ;
2924
+
2923
2925
for methods. each |method| {
2924
2926
// Create a new rib for the method-specific type
2925
2927
// parameters.
Original file line number Diff line number Diff line change
1
+ trait connection {
2
+ fn read ( ) -> int ;
3
+ }
4
+
5
+ trait connection_factory < C : connection > {
6
+ fn create ( ) -> C ;
7
+ }
8
+
9
+ type my_connection = ( ) ;
10
+ type my_connection_factory = ( ) ;
11
+
12
+ impl of connection for ( ) {
13
+ fn read ( ) -> int { 43 }
14
+ }
15
+
16
+ impl of connection_factory < my_connection > for my_connection_factory {
17
+ fn create ( ) -> my_connection { ( ) }
18
+ }
19
+
20
+ fn main ( ) {
21
+ let factory = ( ) ;
22
+ let connection = factory. create ( ) ;
23
+ let result = connection. read ( ) ;
24
+ assert result == 43 ;
25
+ }
You can’t perform that action at this time.
0 commit comments