mirror of
https://github.com/carbon-language/carbon-lang.git
synced 2026-10-06 07:34:45 +01:00
Fix incorrect application of invalid type on imports. (#3902)
In handle_class and handle_interface we assign TypeType, so is more consistent. I think this had been missed because we haven't really been using these declarations (historically, declarations didn't have a type). It seems not to significantly affect output at present, although I found this while trying to change merge behavior.
This commit is contained in:
@@ -159,7 +159,7 @@ var c: Other.C = {};
|
||||
// CHECK:STDOUT: %Other: <namespace> = namespace [template] {}
|
||||
// CHECK:STDOUT: %Other.ref: <namespace> = name_ref Other, %Other [template = %Other]
|
||||
// CHECK:STDOUT: %import_ref.1: type = import_ref ir3, inst+2, loc_14 [template = constants.%C]
|
||||
// CHECK:STDOUT: %C.decl: invalid = class_decl @C [template = constants.%C] {}
|
||||
// CHECK:STDOUT: %C.decl: type = class_decl @C [template = constants.%C] {}
|
||||
// CHECK:STDOUT: %import_ref.2 = import_ref ir3, inst+3, unloaded
|
||||
// CHECK:STDOUT: %C.ref: type = name_ref C, %import_ref.1 [template = constants.%C]
|
||||
// CHECK:STDOUT: %c.var: ref C = var c
|
||||
@@ -198,7 +198,7 @@ var c: Other.C = {};
|
||||
// CHECK:STDOUT: %Other: <namespace> = namespace [template] {}
|
||||
// CHECK:STDOUT: %Other.ref: <namespace> = name_ref Other, %Other [template = %Other]
|
||||
// CHECK:STDOUT: %import_ref: type = import_ref ir3, inst+3, loc_14 [template = constants.%.1]
|
||||
// CHECK:STDOUT: %C.decl: invalid = class_decl @C [template = constants.%C] {}
|
||||
// CHECK:STDOUT: %C.decl: type = class_decl @C [template = constants.%C] {}
|
||||
// CHECK:STDOUT: %C.ref: type = name_ref C, %import_ref [template = constants.%.1]
|
||||
// CHECK:STDOUT: %c.var: ref extern C = var c
|
||||
// CHECK:STDOUT: %c: ref extern C = bind_name c, %c.var
|
||||
@@ -235,10 +235,10 @@ var c: Other.C = {};
|
||||
// CHECK:STDOUT: %Other: <namespace> = namespace [template] {}
|
||||
// CHECK:STDOUT: %Other.ref: <namespace> = name_ref Other, %Other [template = %Other]
|
||||
// CHECK:STDOUT: %import_ref.1: type = import_ref ir3, inst+2, loc_19 [template = constants.%C.1]
|
||||
// CHECK:STDOUT: %C.decl.1: invalid = class_decl @C.1 [template = constants.%C.1] {}
|
||||
// CHECK:STDOUT: %C.decl.1: type = class_decl @C.1 [template = constants.%C.1] {}
|
||||
// CHECK:STDOUT: %import_ref.2 = import_ref ir3, inst+3, unloaded
|
||||
// CHECK:STDOUT: %import_ref.3: type = import_ref ir4, inst+3, loaded [template = constants.%.2]
|
||||
// CHECK:STDOUT: %C.decl.2: invalid = class_decl @C.2 [template = constants.%C.2] {}
|
||||
// CHECK:STDOUT: %C.decl.2: type = class_decl @C.2 [template = constants.%C.2] {}
|
||||
// CHECK:STDOUT: %C.ref: type = name_ref C, %import_ref.1 [template = constants.%C.1]
|
||||
// CHECK:STDOUT: %c.var: ref C = var c
|
||||
// CHECK:STDOUT: %c: ref C = bind_name c, %c.var
|
||||
@@ -280,7 +280,7 @@ var c: Other.C = {};
|
||||
// CHECK:STDOUT: %Core: <namespace> = namespace [template] {}
|
||||
// CHECK:STDOUT: %Other.ref: <namespace> = name_ref Other, %Other [template = %Other]
|
||||
// CHECK:STDOUT: %import_ref.1: type = import_ref ir2, inst+2, loc_19 [template = constants.%C]
|
||||
// CHECK:STDOUT: %C.decl: invalid = class_decl @C.2 [template = constants.%C] {}
|
||||
// CHECK:STDOUT: %C.decl: type = class_decl @C.2 [template = constants.%C] {}
|
||||
// CHECK:STDOUT: %import_ref.2 = import_ref ir2, inst+3, unloaded
|
||||
// CHECK:STDOUT: %import_ref.3: <function> = import_ref ir3, inst+2, loaded [template = imports.%C]
|
||||
// CHECK:STDOUT: %C.ref: type = name_ref C, %import_ref.1 [template = constants.%C]
|
||||
|
||||
+15
-15
@@ -454,8 +454,8 @@ extern class C;
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %import_ref.1: type = import_ref ir2, inst+3, loaded [template = constants.%.1]
|
||||
// CHECK:STDOUT: %import_ref.2: type = import_ref ir3, inst+2, loaded [template = constants.%C.1]
|
||||
// CHECK:STDOUT: %C.decl.1: invalid = class_decl @C.1 [template = constants.%C.1] {}
|
||||
// CHECK:STDOUT: %C.decl.2: invalid = class_decl @C.2 [template = constants.%C.2] {}
|
||||
// CHECK:STDOUT: %C.decl.1: type = class_decl @C.1 [template = constants.%C.1] {}
|
||||
// CHECK:STDOUT: %C.decl.2: type = class_decl @C.2 [template = constants.%C.2] {}
|
||||
// CHECK:STDOUT: %Core: <namespace> = namespace [template] {}
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
@@ -478,8 +478,8 @@ extern class C;
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %import_ref.1: type = import_ref ir2, inst+2, loaded [template = constants.%C.2]
|
||||
// CHECK:STDOUT: %import_ref.2: type = import_ref ir3, inst+3, loaded [template = constants.%.1]
|
||||
// CHECK:STDOUT: %C.decl.1: invalid = class_decl @C.1 [template = constants.%C.1] {}
|
||||
// CHECK:STDOUT: %C.decl.2: invalid = class_decl @C.2 [template = constants.%C.2] {}
|
||||
// CHECK:STDOUT: %C.decl.1: type = class_decl @C.1 [template = constants.%C.1] {}
|
||||
// CHECK:STDOUT: %C.decl.2: type = class_decl @C.2 [template = constants.%C.2] {}
|
||||
// CHECK:STDOUT: %Core: <namespace> = namespace [template] {}
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
@@ -503,9 +503,9 @@ extern class C;
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %import_ref.1: type = import_ref ir2, inst+3, loaded [template = constants.%.2]
|
||||
// CHECK:STDOUT: %import_ref.2: type = import_ref ir3, inst+2, loaded [template = constants.%C.1]
|
||||
// CHECK:STDOUT: %C.decl.1: invalid = class_decl @C.1 [template = constants.%C.1] {}
|
||||
// CHECK:STDOUT: %C.decl.1: type = class_decl @C.1 [template = constants.%C.1] {}
|
||||
// CHECK:STDOUT: %import_ref.3 = import_ref ir3, inst+3, unloaded
|
||||
// CHECK:STDOUT: %C.decl.2: invalid = class_decl @C.2 [template = constants.%C.2] {}
|
||||
// CHECK:STDOUT: %C.decl.2: type = class_decl @C.2 [template = constants.%C.2] {}
|
||||
// CHECK:STDOUT: %Core: <namespace> = namespace [template] {}
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
@@ -536,10 +536,10 @@ extern class C;
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %import_ref.1: type = import_ref ir2, inst+3, loaded [template = constants.%.1]
|
||||
// CHECK:STDOUT: %import_ref.2: type = import_ref ir3, inst+2, loaded [template = constants.%C.1]
|
||||
// CHECK:STDOUT: %C.decl.1: invalid = class_decl @C.1 [template = constants.%C.1] {}
|
||||
// CHECK:STDOUT: %C.decl.2: invalid = class_decl @C.2 [template = constants.%C.2] {}
|
||||
// CHECK:STDOUT: %C.decl.1: type = class_decl @C.1 [template = constants.%C.1] {}
|
||||
// CHECK:STDOUT: %C.decl.2: type = class_decl @C.2 [template = constants.%C.2] {}
|
||||
// CHECK:STDOUT: %import_ref.3: type = import_ref ir4, inst+2, loaded [template = constants.%C.3]
|
||||
// CHECK:STDOUT: %C.decl.3: invalid = class_decl @C.3 [template = constants.%C.3] {}
|
||||
// CHECK:STDOUT: %C.decl.3: type = class_decl @C.3 [template = constants.%C.3] {}
|
||||
// CHECK:STDOUT: %import_ref.4 = import_ref ir4, inst+3, unloaded
|
||||
// CHECK:STDOUT: %Core: <namespace> = namespace [template] {}
|
||||
// CHECK:STDOUT: }
|
||||
@@ -572,8 +572,8 @@ extern class C;
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %import_ref.1: type = import_ref ir2, inst+3, loaded [template = constants.%.2]
|
||||
// CHECK:STDOUT: %import_ref.2: type = import_ref ir3, inst+3, loaded [template = constants.%.1]
|
||||
// CHECK:STDOUT: %C.decl.1: invalid = class_decl @C.1 [template = constants.%C.1] {}
|
||||
// CHECK:STDOUT: %C.decl.2: invalid = class_decl @C.2 [template = constants.%C.2] {}
|
||||
// CHECK:STDOUT: %C.decl.1: type = class_decl @C.1 [template = constants.%C.1] {}
|
||||
// CHECK:STDOUT: %C.decl.2: type = class_decl @C.2 [template = constants.%C.2] {}
|
||||
// CHECK:STDOUT: %Core: <namespace> = namespace [template] {}
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
@@ -596,7 +596,7 @@ extern class C;
|
||||
// CHECK:STDOUT: %import_ref: type = import_ref ir2, inst+3, loaded [template = constants.%.1]
|
||||
// CHECK:STDOUT: %Core: <namespace> = namespace [template] {}
|
||||
// CHECK:STDOUT: %C.decl.loc6: type = class_decl @C [template = constants.%C] {
|
||||
// CHECK:STDOUT: %C.decl.1: invalid = class_decl @C [template = constants.%C] {}
|
||||
// CHECK:STDOUT: %C.decl.1: type = class_decl @C [template = constants.%C] {}
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %.loc6: type = extern_decl %C.decl.loc6 [template = constants.%.1]
|
||||
// CHECK:STDOUT: }
|
||||
@@ -618,7 +618,7 @@ extern class C;
|
||||
// CHECK:STDOUT: %import_ref: type = import_ref ir2, inst+2, loaded [template = constants.%C]
|
||||
// CHECK:STDOUT: %Core: <namespace> = namespace [template] {}
|
||||
// CHECK:STDOUT: %C.decl.loc6: type = class_decl @C [template = constants.%C] {
|
||||
// CHECK:STDOUT: %C.decl.1: invalid = class_decl @C [template = constants.%C] {}
|
||||
// CHECK:STDOUT: %C.decl.1: type = class_decl @C [template = constants.%C] {}
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %.loc6: type = extern_decl %C.decl.loc6 [template = constants.%.1]
|
||||
// CHECK:STDOUT: }
|
||||
@@ -642,7 +642,7 @@ extern class C;
|
||||
// CHECK:STDOUT: %Core: <namespace> = namespace [template] {}
|
||||
// CHECK:STDOUT: %import_ref.2 = import_ref ir2, inst+3, unloaded
|
||||
// CHECK:STDOUT: %C.decl.loc6: type = class_decl @C [template = constants.%C] {
|
||||
// CHECK:STDOUT: %C.decl.1: invalid = class_decl @C [template = constants.%C] {}
|
||||
// CHECK:STDOUT: %C.decl.1: type = class_decl @C [template = constants.%C] {}
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %.loc6: type = extern_decl %C.decl.loc6 [template = constants.%.2]
|
||||
// CHECK:STDOUT: }
|
||||
@@ -669,7 +669,7 @@ extern class C;
|
||||
// CHECK:STDOUT: %Core: <namespace> = namespace [template] {}
|
||||
// CHECK:STDOUT: %import_ref.2 = import_ref ir2, inst+3, unloaded
|
||||
// CHECK:STDOUT: %C.decl.loc6: type = class_decl @C [template = constants.%C] {
|
||||
// CHECK:STDOUT: %C.decl.1: invalid = class_decl @C [template = constants.%C] {}
|
||||
// CHECK:STDOUT: %C.decl.1: type = class_decl @C [template = constants.%C] {}
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %.loc6: type = extern_decl %C.decl.loc6 [template = constants.%.2]
|
||||
// CHECK:STDOUT: }
|
||||
|
||||
@@ -89,9 +89,9 @@ var a: Incomplete;
|
||||
// CHECK:STDOUT: %Core: <namespace> = namespace [template] {}
|
||||
// CHECK:STDOUT: %import_ref.3 = import_ref ir2, inst+3, unloaded
|
||||
// CHECK:STDOUT: %Empty.decl.loc16: type = class_decl @Empty [template = constants.%Empty] {
|
||||
// CHECK:STDOUT: %Empty.decl.1: invalid = class_decl @Empty [template = constants.%Empty] {}
|
||||
// CHECK:STDOUT: %Empty.decl.1: type = class_decl @Empty [template = constants.%Empty] {}
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %Incomplete.decl: invalid = class_decl @Incomplete [template = constants.%Incomplete] {}
|
||||
// CHECK:STDOUT: %Incomplete.decl: type = class_decl @Incomplete [template = constants.%Incomplete] {}
|
||||
// CHECK:STDOUT: %Incomplete.ref: type = name_ref Incomplete, %import_ref.2 [template = constants.%Incomplete]
|
||||
// CHECK:STDOUT: %a.var: ref <error> = var a
|
||||
// CHECK:STDOUT: %a: ref <error> = bind_name a, %a.var
|
||||
|
||||
+5
-5
@@ -191,7 +191,7 @@ fn Run() {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: fn @Run() {
|
||||
// CHECK:STDOUT: !entry:
|
||||
// CHECK:STDOUT: %Empty.decl: invalid = class_decl @Empty [template = constants.%Empty] {}
|
||||
// CHECK:STDOUT: %Empty.decl: type = class_decl @Empty [template = constants.%Empty] {}
|
||||
// CHECK:STDOUT: %Empty.ref: type = name_ref Empty, file.%import_ref.1 [template = constants.%Empty]
|
||||
// CHECK:STDOUT: %a.var: ref Empty = var a
|
||||
// CHECK:STDOUT: %a: ref Empty = bind_name a, %a.var
|
||||
@@ -199,7 +199,7 @@ fn Run() {
|
||||
// CHECK:STDOUT: %.loc7_19.2: init Empty = class_init (), %a.var [template = constants.%.4]
|
||||
// CHECK:STDOUT: %.loc7_20: init Empty = converted %.loc7_19.1, %.loc7_19.2 [template = constants.%.4]
|
||||
// CHECK:STDOUT: assign %a.var, %.loc7_20
|
||||
// CHECK:STDOUT: %Field.decl: invalid = class_decl @Field [template = constants.%Field] {}
|
||||
// CHECK:STDOUT: %Field.decl: type = class_decl @Field [template = constants.%Field] {}
|
||||
// CHECK:STDOUT: %Field.ref: type = name_ref Field, file.%import_ref.2 [template = constants.%Field]
|
||||
// CHECK:STDOUT: %b.var: ref Field = var b
|
||||
// CHECK:STDOUT: %b: ref Field = bind_name b, %b.var
|
||||
@@ -215,7 +215,7 @@ fn Run() {
|
||||
// CHECK:STDOUT: %.loc10_4: ref i32 = class_element_access %b.ref, element0
|
||||
// CHECK:STDOUT: %.loc10_9: i32 = int_literal 2 [template = constants.%.10]
|
||||
// CHECK:STDOUT: assign %.loc10_4, %.loc10_9
|
||||
// CHECK:STDOUT: %ForwardDeclared.decl.1: invalid = class_decl @ForwardDeclared.1 [template = constants.%ForwardDeclared.1] {}
|
||||
// CHECK:STDOUT: %ForwardDeclared.decl.1: type = class_decl @ForwardDeclared.1 [template = constants.%ForwardDeclared.1] {}
|
||||
// CHECK:STDOUT: %ForwardDeclared.ref.loc12: type = name_ref ForwardDeclared, file.%import_ref.3 [template = constants.%ForwardDeclared.1]
|
||||
// CHECK:STDOUT: %c.var: ref ForwardDeclared = var c
|
||||
// CHECK:STDOUT: %c: ref ForwardDeclared = bind_name c, %c.var
|
||||
@@ -224,7 +224,7 @@ fn Run() {
|
||||
// CHECK:STDOUT: %.loc12_30: init ForwardDeclared = converted %.loc12_29.1, %.loc12_29.2 [template = constants.%.11]
|
||||
// CHECK:STDOUT: assign %c.var, %.loc12_30
|
||||
// CHECK:STDOUT: %c.ref.loc13: ref ForwardDeclared = name_ref c, %c
|
||||
// CHECK:STDOUT: %ForwardDeclared.decl.2: invalid = class_decl @ForwardDeclared.2 [template = constants.%ForwardDeclared.2] {}
|
||||
// CHECK:STDOUT: %ForwardDeclared.decl.2: type = class_decl @ForwardDeclared.2 [template = constants.%ForwardDeclared.2] {}
|
||||
// CHECK:STDOUT: %F.ref: <function> = name_ref F, file.%import_ref.10 [template = imports.%F]
|
||||
// CHECK:STDOUT: %.loc13_4: <bound method> = bound_method %c.ref.loc13, %F.ref
|
||||
// CHECK:STDOUT: %.loc13_3: ForwardDeclared = bind_value %c.ref.loc13
|
||||
@@ -241,7 +241,7 @@ fn Run() {
|
||||
// CHECK:STDOUT: %c.ref.loc16: ref ForwardDeclared = name_ref c, %c
|
||||
// CHECK:STDOUT: %.loc16_29: ForwardDeclared* = addr_of %c.ref.loc16
|
||||
// CHECK:STDOUT: assign %d.var, %.loc16_29
|
||||
// CHECK:STDOUT: %Incomplete.decl: invalid = class_decl @Incomplete [template = constants.%Incomplete] {}
|
||||
// CHECK:STDOUT: %Incomplete.decl: type = class_decl @Incomplete [template = constants.%Incomplete] {}
|
||||
// CHECK:STDOUT: %Incomplete.ref: type = name_ref Incomplete, file.%import_ref.4 [template = constants.%Incomplete]
|
||||
// CHECK:STDOUT: %.loc18: type = ptr_type Incomplete [template = constants.%.13]
|
||||
// CHECK:STDOUT: %e.var: ref Incomplete* = var e
|
||||
|
||||
+2
-2
@@ -150,8 +150,8 @@ fn Run() {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: fn @Run() {
|
||||
// CHECK:STDOUT: !entry:
|
||||
// CHECK:STDOUT: %Child.decl: invalid = class_decl @Child [template = constants.%Child] {}
|
||||
// CHECK:STDOUT: %Base.decl: invalid = class_decl @Base [template = constants.%Base] {}
|
||||
// CHECK:STDOUT: %Child.decl: type = class_decl @Child [template = constants.%Child] {}
|
||||
// CHECK:STDOUT: %Base.decl: type = class_decl @Base [template = constants.%Base] {}
|
||||
// CHECK:STDOUT: %Child.ref: type = name_ref Child, file.%import_ref.2 [template = constants.%Child]
|
||||
// CHECK:STDOUT: %a.var: ref Child = var a
|
||||
// CHECK:STDOUT: %a: ref Child = bind_name a, %a.var
|
||||
|
||||
@@ -49,7 +49,7 @@ class ForwardDecl {
|
||||
// CHECK:STDOUT: %import_ref: type = import_ref ir1, inst+2, loaded [template = constants.%ForwardDecl]
|
||||
// CHECK:STDOUT: %Core: <namespace> = namespace [template] {}
|
||||
// CHECK:STDOUT: %ForwardDecl.decl.loc4: type = class_decl @ForwardDecl [template = constants.%ForwardDecl] {
|
||||
// CHECK:STDOUT: %ForwardDecl.decl.1: invalid = class_decl @ForwardDecl [template = constants.%ForwardDecl] {}
|
||||
// CHECK:STDOUT: %ForwardDecl.decl.1: type = class_decl @ForwardDecl [template = constants.%ForwardDecl] {}
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
|
||||
@@ -79,7 +79,7 @@ fn Run() {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: fn @Run() {
|
||||
// CHECK:STDOUT: !entry:
|
||||
// CHECK:STDOUT: %Cycle.decl: invalid = class_decl @Cycle [template = constants.%Cycle] {}
|
||||
// CHECK:STDOUT: %Cycle.decl: type = class_decl @Cycle [template = constants.%Cycle] {}
|
||||
// CHECK:STDOUT: %Cycle.ref: type = name_ref Cycle, file.%import_ref.1 [template = constants.%Cycle]
|
||||
// CHECK:STDOUT: %.loc7: type = ptr_type Cycle [template = constants.%.1]
|
||||
// CHECK:STDOUT: %a.var: ref Cycle* = var a
|
||||
|
||||
@@ -98,7 +98,7 @@ fn Run() {
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: fn @Run() {
|
||||
// CHECK:STDOUT: !entry:
|
||||
// CHECK:STDOUT: %Cycle.decl: invalid = class_decl @Cycle [template = constants.%Cycle] {}
|
||||
// CHECK:STDOUT: %Cycle.decl: type = class_decl @Cycle [template = constants.%Cycle] {}
|
||||
// CHECK:STDOUT: %a.ref.loc7_3: ref {.b: Cycle*} = name_ref a, file.%import_ref.2
|
||||
// CHECK:STDOUT: %.loc7_4: ref Cycle* = struct_access %a.ref.loc7_3, element0
|
||||
// CHECK:STDOUT: %a.ref.loc7_11: ref {.b: Cycle*} = name_ref a, file.%import_ref.2
|
||||
|
||||
+3
-3
@@ -76,7 +76,7 @@ var d2: D* = &c2;
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT: %import_ref.1: type = import_ref ir2, inst+2, loc_12 [template = constants.%C]
|
||||
// CHECK:STDOUT: %Core: <namespace> = namespace [template] {}
|
||||
// CHECK:STDOUT: %C.decl: invalid = class_decl @C [template = constants.%C] {}
|
||||
// CHECK:STDOUT: %C.decl: type = class_decl @C [template = constants.%C] {}
|
||||
// CHECK:STDOUT: %import_ref.2 = import_ref ir2, inst+3, unloaded
|
||||
// CHECK:STDOUT: %C.ref.loc6: type = name_ref C, %import_ref.1 [template = constants.%C]
|
||||
// CHECK:STDOUT: %D: type = bind_alias D, %import_ref.1 [template = constants.%C]
|
||||
@@ -134,12 +134,12 @@ var d2: D* = &c2;
|
||||
// CHECK:STDOUT: %import_ref.3 = import_ref ir3, inst+13, unloaded
|
||||
// CHECK:STDOUT: %import_ref.4 = import_ref ir3, inst+23, unloaded
|
||||
// CHECK:STDOUT: %Core: <namespace> = namespace [template] {}
|
||||
// CHECK:STDOUT: %C.decl.1: invalid = class_decl @C.1 [template = constants.%C.1] {}
|
||||
// CHECK:STDOUT: %C.decl.1: type = class_decl @C.1 [template = constants.%C.1] {}
|
||||
// CHECK:STDOUT: %import_ref.5 = import_ref ir2, inst+3, unloaded
|
||||
// CHECK:STDOUT: %C.ref: type = name_ref C, %import_ref.1 [template = constants.%C.1]
|
||||
// CHECK:STDOUT: %c2.var: ref C = var c2
|
||||
// CHECK:STDOUT: %c2: ref C = bind_name c2, %c2.var
|
||||
// CHECK:STDOUT: %C.decl.2: invalid = class_decl @C.2 [template = constants.%C.2] {}
|
||||
// CHECK:STDOUT: %C.decl.2: type = class_decl @C.2 [template = constants.%C.2] {}
|
||||
// CHECK:STDOUT: %import_ref.6 = import_ref ir3, inst+6, unloaded
|
||||
// CHECK:STDOUT: %D.ref: type = name_ref D, %import_ref.2 [template = constants.%C.2]
|
||||
// CHECK:STDOUT: %.loc11: type = ptr_type C [template = constants.%.5]
|
||||
|
||||
Reference in New Issue
Block a user