@@ -47,42 +47,40 @@ pub fn foo() where
4747    let  _:  Type4  = <Foo >:: bar; 
4848} 
4949
50- // Force arguments to be passed by using a reference. Otherwise, they may end up PassMode::Ignore 
51- 
52- pub  fn  foo1 ( _:  & Type1 )  {  } 
50+ pub  fn  foo1 ( _:  Type1 )  {  } 
5351// CHECK: define{{.*}}4foo1{{.*}}!type ![[TYPE1:[0-9]+]] !type !{{[0-9]+}} !type !{{[0-9]+}} !type !{{[0-9]+}} 
54- pub  fn  foo2 ( _:  & Type1 ,  _:  & Type1 )  {  } 
52+ pub  fn  foo2 ( _:  Type1 ,  _:  Type1 )  {  } 
5553// CHECK: define{{.*}}4foo2{{.*}}!type ![[TYPE2:[0-9]+]] !type !{{[0-9]+}} !type !{{[0-9]+}} !type !{{[0-9]+}} 
56- pub  fn  foo3 ( _:  & Type1 ,  _:  & Type1 ,  _:  & Type1 )  {  } 
54+ pub  fn  foo3 ( _:  Type1 ,  _:  Type1 ,  _:  Type1 )  {  } 
5755// CHECK: define{{.*}}4foo3{{.*}}!type ![[TYPE3:[0-9]+]] !type !{{[0-9]+}} !type !{{[0-9]+}} !type !{{[0-9]+}} 
58- pub  fn  foo4 ( _:  & Type2 )  {  } 
56+ pub  fn  foo4 ( _:  Type2 )  {  } 
5957// CHECK: define{{.*}}4foo4{{.*}}!type ![[TYPE4:[0-9]+]] !type !{{[0-9]+}} !type !{{[0-9]+}} !type !{{[0-9]+}} 
60- pub  fn  foo5 ( _:  & Type2 ,  _:  & Type2 )  {  } 
58+ pub  fn  foo5 ( _:  Type2 ,  _:  Type2 )  {  } 
6159// CHECK: define{{.*}}4foo5{{.*}}!type ![[TYPE5:[0-9]+]] !type !{{[0-9]+}} !type !{{[0-9]+}} !type !{{[0-9]+}} 
62- pub  fn  foo6 ( _:  & Type2 ,  _:  & Type2 ,  _:  & Type2 )  {  } 
60+ pub  fn  foo6 ( _:  Type2 ,  _:  Type2 ,  _:  Type2 )  {  } 
6361// CHECK: define{{.*}}4foo6{{.*}}!type ![[TYPE6:[0-9]+]] !type !{{[0-9]+}} !type !{{[0-9]+}} !type !{{[0-9]+}} 
64- pub  fn  foo7 ( _:  & Type3 )  {  } 
62+ pub  fn  foo7 ( _:  Type3 )  {  } 
6563// CHECK: define{{.*}}4foo7{{.*}}!type ![[TYPE7:[0-9]+]] !type !{{[0-9]+}} !type !{{[0-9]+}} !type !{{[0-9]+}} 
66- pub  fn  foo8 ( _:  & Type3 ,  _:  & Type3 )  {  } 
64+ pub  fn  foo8 ( _:  Type3 ,  _:  Type3 )  {  } 
6765// CHECK: define{{.*}}4foo8{{.*}}!type ![[TYPE8:[0-9]+]] !type !{{[0-9]+}} !type !{{[0-9]+}} !type !{{[0-9]+}} 
68- pub  fn  foo9 ( _:  & Type3 ,  _:  & Type3 ,  _:  & Type3 )  {  } 
66+ pub  fn  foo9 ( _:  Type3 ,  _:  Type3 ,  _:  Type3 )  {  } 
6967// CHECK: define{{.*}}4foo9{{.*}}!type ![[TYPE9:[0-9]+]] !type !{{[0-9]+}} !type !{{[0-9]+}} !type !{{[0-9]+}} 
70- pub  fn  foo10 ( _:  & Type4 )  {  } 
68+ pub  fn  foo10 ( _:  Type4 )  {  } 
7169// CHECK: define{{.*}}5foo10{{.*}}!type ![[TYPE10:[0-9]+]] !type !{{[0-9]+}} !type !{{[0-9]+}} !type !{{[0-9]+}} 
72- pub  fn  foo11 ( _:  & Type4 ,  _:  & Type4 )  {  } 
70+ pub  fn  foo11 ( _:  Type4 ,  _:  Type4 )  {  } 
7371// CHECK: define{{.*}}5foo11{{.*}}!type ![[TYPE11:[0-9]+]] !type !{{[0-9]+}} !type !{{[0-9]+}} !type !{{[0-9]+}} 
74- pub  fn  foo12 ( _:  & Type4 ,  _:  & Type4 ,  _:  & Type4 )  {  } 
72+ pub  fn  foo12 ( _:  Type4 ,  _:  Type4 ,  _:  Type4 )  {  } 
7573// CHECK: define{{.*}}5foo12{{.*}}!type ![[TYPE12:[0-9]+]] !type !{{[0-9]+}} !type !{{[0-9]+}} !type !{{[0-9]+}} 
7674
7775// CHECK: ![[TYPE1]] = !{i64 0, !"_ZTSFvPFvvEE"} 
7876// CHECK: ![[TYPE2]] = !{i64 0, !"_ZTSFvPFvvES_E"} 
7977// CHECK: ![[TYPE3]] = !{i64 0, !"_ZTSFvPFvvES_S_E"} 
80- // CHECK: ![[TYPE4]] = !{i64 0, !"_ZTSFvu3refIu {{[0-9]+}}NtNCNvC{{[[:print:]]+}}_{{[[:print:]]+}}3foo11{{[{}][{}]}}closure{{[}][}]}}3FooEE "} 
81- // CHECK: ![[TYPE5]] = !{i64 0, !"_ZTSFvu3refIu {{[0-9]+}}NtNCNvC{{[[:print:]]+}}_{{[[:print:]]+}}3foo11{{[{}][{}]}}closure{{[}][}]}}3FooES0_E "} 
82- // CHECK: ![[TYPE6]] = !{i64 0, !"_ZTSFvu3refIu {{[0-9]+}}NtNCNvC{{[[:print:]]+}}_{{[[:print:]]+}}3foo11{{[{}][{}]}}closure{{[}][}]}}3FooES0_S0_E "} 
83- // CHECK: ![[TYPE7]] = !{i64 0, !"_ZTSFvu3refIu {{[0-9]+}}NtNkNvC{{[[:print:]]+}}_{{[[:print:]]+}}3foo12{{[{}][{}]}}constant{{[}][}]}}3FooEE "} 
84- // CHECK: ![[TYPE8]] = !{i64 0, !"_ZTSFvu3refIu {{[0-9]+}}NtNkNvC{{[[:print:]]+}}_{{[[:print:]]+}}3foo12{{[{}][{}]}}constant{{[}][}]}}3FooES0_E "} 
85- // CHECK: ![[TYPE9]] = !{i64 0, !"_ZTSFvu3refIu {{[0-9]+}}NtNkNvC{{[[:print:]]+}}_{{[[:print:]]+}}3foo12{{[{}][{}]}}constant{{[}][}]}}3FooES0_S0_E "} 
78+ // CHECK: ![[TYPE4]] = !{i64 0, !"_ZTSFvu {{[0-9]+}}NtNCNvC{{[[:print:]]+}}_{{[[:print:]]+}}3foo11{{[{}][{}]}}closure{{[}][}]}}3FooE "} 
79+ // CHECK: ![[TYPE5]] = !{i64 0, !"_ZTSFvu {{[0-9]+}}NtNCNvC{{[[:print:]]+}}_{{[[:print:]]+}}3foo11{{[{}][{}]}}closure{{[}][}]}}3FooS_E "} 
80+ // CHECK: ![[TYPE6]] = !{i64 0, !"_ZTSFvu {{[0-9]+}}NtNCNvC{{[[:print:]]+}}_{{[[:print:]]+}}3foo11{{[{}][{}]}}closure{{[}][}]}}3FooS_S_E "} 
81+ // CHECK: ![[TYPE7]] = !{i64 0, !"_ZTSFvu {{[0-9]+}}NtNkNvC{{[[:print:]]+}}_{{[[:print:]]+}}3foo12{{[{}][{}]}}constant{{[}][}]}}3FooE "} 
82+ // CHECK: ![[TYPE8]] = !{i64 0, !"_ZTSFvu {{[0-9]+}}NtNkNvC{{[[:print:]]+}}_{{[[:print:]]+}}3foo12{{[{}][{}]}}constant{{[}][}]}}3FooS_E "} 
83+ // CHECK: ![[TYPE9]] = !{i64 0, !"_ZTSFvu {{[0-9]+}}NtNkNvC{{[[:print:]]+}}_{{[[:print:]]+}}3foo12{{[{}][{}]}}constant{{[}][}]}}3FooS_S_E "} 
8684// CHECK: ![[TYPE10]] = !{i64 0, !"_ZTSFvPFvu3refIu{{[0-9]+}}NtNvC{{[[:print:]]+}}_{{[[:print:]]+}}3foo3FooEEE"} 
8785// CHECK: ![[TYPE11]] = !{i64 0, !"_ZTSFvPFvu3refIu{{[0-9]+}}NtNvC{{[[:print:]]+}}_{{[[:print:]]+}}3foo3FooEES1_E"} 
8886// CHECK: ![[TYPE12]] = !{i64 0, !"_ZTSFvPFvu3refIu{{[0-9]+}}NtNvC{{[[:print:]]+}}_{{[[:print:]]+}}3foo3FooEES1_S1_E"} 
0 commit comments