File tree Expand file tree Collapse file tree 2 files changed +15
-4
lines changed Expand file tree Collapse file tree 2 files changed +15
-4
lines changed Original file line number Diff line number Diff line change 1
1
---
2
- refs/heads/master: fc722b17c92a91853f75c31e05b9a50d45fbe5e9
2
+ refs/heads/master: c19e4e1c2987383ef686ca831f8115a1179ecb40
Original file line number Diff line number Diff line change @@ -621,11 +621,22 @@ fn type_of_inner(@crate_ctxt cx, @ty.t t) -> TypeRef {
621
621
}
622
622
623
623
fn type_of_arg ( @crate_ctxt cx , & ty. arg arg ) -> TypeRef {
624
- auto ty = type_of_inner ( cx, arg. ty ) ;
624
+ alt ( arg. ty . struct ) {
625
+ case ( ty. ty_param ( _) ) {
626
+ if ( arg. mode == ast. alias ) {
627
+ ret T_typaram_ptr ( cx. tn ) ;
628
+ }
629
+ }
630
+ case ( _) {
631
+ // fall through
632
+ }
633
+ }
634
+
635
+ auto typ = type_of_inner ( cx, arg. ty ) ;
625
636
if ( arg. mode == ast. alias ) {
626
- ty = T_ptr ( ty ) ;
637
+ typ = T_ptr ( typ ) ;
627
638
}
628
- ret ty ;
639
+ ret typ ;
629
640
}
630
641
631
642
// Name sanitation. LLVM will happily accept identifiers with weird names, but
You can’t perform that action at this time.
0 commit comments