mirror of
https://github.com/carbon-language/carbon-lang.git
synced 2026-10-05 22:02:55 +01:00
Add a distinct semir file separator. (#3438)
This removes the filename from the file-scoped block, and places it above to make it clear where the full SemIR begins (with multifile, providing a barrier between).
This commit is contained in:
+4
-1
@@ -7,12 +7,14 @@
|
||||
var x: {} = {};
|
||||
var y: {} = x;
|
||||
|
||||
// CHECK:STDOUT: --- empty.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: %.loc7_9.1: type = struct_type {}
|
||||
// CHECK:STDOUT: %.loc7_9.2: type = tuple_type ()
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file "empty.carbon" {
|
||||
// CHECK:STDOUT: file {
|
||||
// CHECK:STDOUT: %.loc7_9.1: {} = struct_literal ()
|
||||
// CHECK:STDOUT: %.loc7_9.2: type = converted %.loc7_9.1, constants.%.loc7_9.1
|
||||
// CHECK:STDOUT: %x.var: ref {} = var x
|
||||
@@ -30,3 +32,4 @@ var y: {} = x;
|
||||
// CHECK:STDOUT: %.loc8_13.2: init {} = converted %x.ref, %.loc8_13.1
|
||||
// CHECK:STDOUT: assign %y.var, %.loc8_13.2
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
|
||||
@@ -10,7 +10,9 @@
|
||||
// CHECK:STDERR: ^
|
||||
fn F() { a.b; }
|
||||
|
||||
// CHECK:STDOUT: file "fail_access_into_invalid.carbon" {
|
||||
// CHECK:STDOUT: --- fail_access_into_invalid.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file {
|
||||
// CHECK:STDOUT: %F: <function> = fn_decl @F
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
@@ -19,3 +21,4 @@ fn F() { a.b; }
|
||||
// CHECK:STDOUT: %a.ref: <error> = name_ref a, <error>
|
||||
// CHECK:STDOUT: return
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
|
||||
@@ -9,14 +9,17 @@
|
||||
// CHECK:STDERR: ^
|
||||
var x: {.a: i32} = {};
|
||||
|
||||
// CHECK:STDOUT: --- fail_assign_empty.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: %.loc10: type = struct_type {}
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file "fail_assign_empty.carbon" {
|
||||
// CHECK:STDOUT: file {
|
||||
// CHECK:STDOUT: %.loc10_16: type = struct_type {.a: i32}
|
||||
// CHECK:STDOUT: %x.var: ref {.a: i32} = var x
|
||||
// CHECK:STDOUT: %x: ref {.a: i32} = bind_name x, %x.var
|
||||
// CHECK:STDOUT: %.loc10_21: {} = struct_literal ()
|
||||
// CHECK:STDOUT: assign %x.var, <error>
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
|
||||
@@ -9,6 +9,8 @@
|
||||
// CHECK:STDERR: ^
|
||||
var x: {.a: {}} = {.b = {}};
|
||||
|
||||
// CHECK:STDOUT: --- fail_assign_nested.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: %.loc10_14.1: type = struct_type {}
|
||||
// CHECK:STDOUT: %.loc10_14.2: type = tuple_type ()
|
||||
@@ -16,7 +18,7 @@ var x: {.a: {}} = {.b = {}};
|
||||
// CHECK:STDOUT: %.loc10_27: type = struct_type {.b: {}}
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file "fail_assign_nested.carbon" {
|
||||
// CHECK:STDOUT: file {
|
||||
// CHECK:STDOUT: %.loc10_14.1: {} = struct_literal ()
|
||||
// CHECK:STDOUT: %.loc10_14.2: type = converted %.loc10_14.1, constants.%.loc10_14.1
|
||||
// CHECK:STDOUT: %.loc10_15: type = struct_type {.a: {}}
|
||||
@@ -26,3 +28,4 @@ var x: {.a: {}} = {.b = {}};
|
||||
// CHECK:STDOUT: %.loc10_27: {.b: {}} = struct_literal (%.loc10_26)
|
||||
// CHECK:STDOUT: assign %x.var, <error>
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
|
||||
@@ -9,13 +9,15 @@
|
||||
// CHECK:STDERR: ^
|
||||
var x: {} = {.a = 1};
|
||||
|
||||
// CHECK:STDOUT: --- fail_assign_to_empty.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: %.loc10_9.1: type = struct_type {}
|
||||
// CHECK:STDOUT: %.loc10_9.2: type = tuple_type ()
|
||||
// CHECK:STDOUT: %.loc10_20: type = struct_type {.a: i32}
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file "fail_assign_to_empty.carbon" {
|
||||
// CHECK:STDOUT: file {
|
||||
// CHECK:STDOUT: %.loc10_9.1: {} = struct_literal ()
|
||||
// CHECK:STDOUT: %.loc10_9.2: type = converted %.loc10_9.1, constants.%.loc10_9.1
|
||||
// CHECK:STDOUT: %x.var: ref {} = var x
|
||||
@@ -24,3 +26,4 @@ var x: {} = {.a = 1};
|
||||
// CHECK:STDOUT: %.loc10_20: {.a: i32} = struct_literal (%.loc10_19)
|
||||
// CHECK:STDOUT: assign %x.var, <error>
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
|
||||
@@ -44,12 +44,14 @@ var x: {.a: i32} = {.a = 1, .a = 2};
|
||||
// CHECK:STDERR: ^
|
||||
var y: {.b: i32, .c: i32} = {.b = 3, .b = 4};
|
||||
|
||||
// CHECK:STDOUT: --- fail_duplicate_name.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: %.loc21: type = struct_type {.a: i32}
|
||||
// CHECK:STDOUT: %.loc45: type = ptr_type {.b: i32, .c: i32}
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file "fail_duplicate_name.carbon" {
|
||||
// CHECK:STDOUT: file {
|
||||
// CHECK:STDOUT: %F: <function> = fn_decl @F
|
||||
// CHECK:STDOUT: %.loc21_35: i32 = int_literal 1
|
||||
// CHECK:STDOUT: %.loc21_36: {.a: i32} = struct_literal (%.loc21_35)
|
||||
@@ -72,3 +74,4 @@ var y: {.b: i32, .c: i32} = {.b = 3, .b = 4};
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: fn @F() -> <error>;
|
||||
// CHECK:STDOUT:
|
||||
|
||||
@@ -14,11 +14,13 @@ var x: {.a: i32} = {.b = 1};
|
||||
// CHECK:STDERR: ^
|
||||
var y: {.b: i32} = x;
|
||||
|
||||
// CHECK:STDOUT: --- fail_field_name_mismatch.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: %.loc10: type = struct_type {.b: i32}
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file "fail_field_name_mismatch.carbon" {
|
||||
// CHECK:STDOUT: file {
|
||||
// CHECK:STDOUT: %.loc10_16: type = struct_type {.a: i32}
|
||||
// CHECK:STDOUT: %x.var: ref {.a: i32} = var x
|
||||
// CHECK:STDOUT: %x: ref {.a: i32} = bind_name x, %x.var
|
||||
@@ -31,3 +33,4 @@ var y: {.b: i32} = x;
|
||||
// CHECK:STDOUT: %x.ref: ref {.a: i32} = name_ref x, %x
|
||||
// CHECK:STDOUT: assign %y.var, <error>
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
|
||||
@@ -9,11 +9,13 @@
|
||||
// CHECK:STDERR: ^
|
||||
var x: {.a: i32} = {.b = 1.0};
|
||||
|
||||
// CHECK:STDOUT: --- fail_field_type_mismatch.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: %.loc10: type = struct_type {.b: f64}
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file "fail_field_type_mismatch.carbon" {
|
||||
// CHECK:STDOUT: file {
|
||||
// CHECK:STDOUT: %.loc10_16: type = struct_type {.a: i32}
|
||||
// CHECK:STDOUT: %x.var: ref {.a: i32} = var x
|
||||
// CHECK:STDOUT: %x: ref {.a: i32} = bind_name x, %x.var
|
||||
@@ -21,3 +23,4 @@ var x: {.a: i32} = {.b = 1.0};
|
||||
// CHECK:STDOUT: %.loc10_29: {.b: f64} = struct_literal (%.loc10_26)
|
||||
// CHECK:STDOUT: assign %x.var, <error>
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
|
||||
@@ -10,7 +10,9 @@ var x: {.a: f64} = {.a = 4.0};
|
||||
// CHECK:STDERR: ^
|
||||
var y: i32 = x.b;
|
||||
|
||||
// CHECK:STDOUT: file "fail_member_access_type.carbon" {
|
||||
// CHECK:STDOUT: --- fail_member_access_type.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file {
|
||||
// CHECK:STDOUT: %.loc7_16: type = struct_type {.a: f64}
|
||||
// CHECK:STDOUT: %x.var: ref {.a: f64} = var x
|
||||
// CHECK:STDOUT: %x: ref {.a: f64} = bind_name x, %x.var
|
||||
@@ -24,3 +26,4 @@ var y: i32 = x.b;
|
||||
// CHECK:STDOUT: %x.ref: ref {.a: f64} = name_ref x, %x
|
||||
// CHECK:STDOUT: assign %y.var, <error>
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
|
||||
@@ -11,7 +11,9 @@ fn A() {
|
||||
A.y;
|
||||
}
|
||||
|
||||
// CHECK:STDOUT: file "fail_member_of_function.carbon" {
|
||||
// CHECK:STDOUT: --- fail_member_of_function.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file {
|
||||
// CHECK:STDOUT: %A: <function> = fn_decl @A
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
@@ -20,3 +22,4 @@ fn A() {
|
||||
// CHECK:STDOUT: %A.ref: <function> = name_ref A, file.%A
|
||||
// CHECK:STDOUT: return
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
|
||||
@@ -19,11 +19,13 @@ var s: {.a: Incomplete};
|
||||
// CHECK:STDERR: ^
|
||||
var p: Incomplete* = &s.a;
|
||||
|
||||
// CHECK:STDOUT: --- fail_nested_incomplete.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: %.loc20: type = ptr_type <error>
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file "fail_nested_incomplete.carbon" {
|
||||
// CHECK:STDOUT: file {
|
||||
// CHECK:STDOUT: class_decl @Incomplete, ()
|
||||
// CHECK:STDOUT: %Incomplete: type = class_type @Incomplete
|
||||
// CHECK:STDOUT: %Incomplete.ref.loc15: type = name_ref Incomplete, %Incomplete
|
||||
@@ -40,3 +42,4 @@ var p: Incomplete* = &s.a;
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: class @Incomplete;
|
||||
// CHECK:STDOUT:
|
||||
|
||||
@@ -10,7 +10,9 @@ var x: {.a: i32} = {.a = 4};
|
||||
// CHECK:STDERR: ^
|
||||
var y: i32 = x.b;
|
||||
|
||||
// CHECK:STDOUT: file "fail_non_member_access.carbon" {
|
||||
// CHECK:STDOUT: --- fail_non_member_access.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file {
|
||||
// CHECK:STDOUT: %.loc7_16: type = struct_type {.a: i32}
|
||||
// CHECK:STDOUT: %x.var: ref {.a: i32} = var x
|
||||
// CHECK:STDOUT: %x: ref {.a: i32} = bind_name x, %x.var
|
||||
@@ -24,3 +26,4 @@ var y: i32 = x.b;
|
||||
// CHECK:STDOUT: %x.ref: ref {.a: i32} = name_ref x, %x
|
||||
// CHECK:STDOUT: assign %y.var, <error>
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
|
||||
@@ -9,12 +9,14 @@
|
||||
// CHECK:STDERR: ^
|
||||
var x: {.a: i32, .b: i32} = {.a = 1};
|
||||
|
||||
// CHECK:STDOUT: --- fail_too_few_values.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: %.loc10_25: type = ptr_type {.a: i32, .b: i32}
|
||||
// CHECK:STDOUT: %.loc10_36: type = struct_type {.a: i32}
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file "fail_too_few_values.carbon" {
|
||||
// CHECK:STDOUT: file {
|
||||
// CHECK:STDOUT: %.loc10_25: type = struct_type {.a: i32, .b: i32}
|
||||
// CHECK:STDOUT: %x.var: ref {.a: i32, .b: i32} = var x
|
||||
// CHECK:STDOUT: %x: ref {.a: i32, .b: i32} = bind_name x, %x.var
|
||||
@@ -22,3 +24,4 @@ var x: {.a: i32, .b: i32} = {.a = 1};
|
||||
// CHECK:STDOUT: %.loc10_36: {.a: i32} = struct_literal (%.loc10_35)
|
||||
// CHECK:STDOUT: assign %x.var, <error>
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
|
||||
+4
-1
@@ -9,10 +9,13 @@
|
||||
// CHECK:STDERR: ^
|
||||
var x: {.a: i32} = {.a: i32};
|
||||
|
||||
// CHECK:STDOUT: file "fail_type_assign.carbon" {
|
||||
// CHECK:STDOUT: --- fail_type_assign.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file {
|
||||
// CHECK:STDOUT: %.loc10_16: type = struct_type {.a: i32}
|
||||
// CHECK:STDOUT: %x.var: ref {.a: i32} = var x
|
||||
// CHECK:STDOUT: %x: ref {.a: i32} = bind_name x, %x.var
|
||||
// CHECK:STDOUT: %.loc10_28: type = struct_type {.a: i32}
|
||||
// CHECK:STDOUT: assign %x.var, <error>
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
|
||||
@@ -9,13 +9,16 @@
|
||||
// CHECK:STDERR: ^
|
||||
var x: {.a = 1};
|
||||
|
||||
// CHECK:STDOUT: --- fail_value_as_type.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: %.loc10: type = struct_type {.a: i32}
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file "fail_value_as_type.carbon" {
|
||||
// CHECK:STDOUT: file {
|
||||
// CHECK:STDOUT: %.loc10_14: i32 = int_literal 1
|
||||
// CHECK:STDOUT: %.loc10_15: {.a: i32} = struct_literal (%.loc10_14)
|
||||
// CHECK:STDOUT: %x.var: ref <error> = var x
|
||||
// CHECK:STDOUT: %x: ref <error> = bind_name x, %x.var
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
|
||||
@@ -10,6 +10,8 @@ fn F() -> i32 {
|
||||
return {.a = 1, .b = G(), .c = 3}.b.y;
|
||||
}
|
||||
|
||||
// CHECK:STDOUT: --- literal_member_access.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: %.loc7: type = ptr_type {.x: i32, .y: i32, .z: i32}
|
||||
// CHECK:STDOUT: %.loc10_35.1: type = struct_type {.a: i32, .b: {.x: i32, .y: i32, .z: i32}, .c: i32}
|
||||
@@ -17,7 +19,7 @@ fn F() -> i32 {
|
||||
// CHECK:STDOUT: %.loc10_35.3: type = ptr_type {.a: i32, .b: {.x: i32, .y: i32, .z: i32}*, .c: i32}
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file "literal_member_access.carbon" {
|
||||
// CHECK:STDOUT: file {
|
||||
// CHECK:STDOUT: %G: <function> = fn_decl @G
|
||||
// CHECK:STDOUT: %F: <function> = fn_decl @F
|
||||
// CHECK:STDOUT: }
|
||||
@@ -47,3 +49,4 @@ fn F() -> i32 {
|
||||
// CHECK:STDOUT: %.loc10_38: i32 = struct_access %.loc10_36, member1
|
||||
// CHECK:STDOUT: return %.loc10_38
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
|
||||
+4
-1
@@ -8,11 +8,13 @@ var x: {.a: f64, .b: i32} = {.a = 0.0, .b = 1};
|
||||
var y: i32 = x.b;
|
||||
var z: i32 = y;
|
||||
|
||||
// CHECK:STDOUT: --- member_access.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: %.loc7: type = ptr_type {.a: f64, .b: i32}
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file "member_access.carbon" {
|
||||
// CHECK:STDOUT: file {
|
||||
// CHECK:STDOUT: %.loc7_25: type = struct_type {.a: f64, .b: i32}
|
||||
// CHECK:STDOUT: %x.var: ref {.a: f64, .b: i32} = var x
|
||||
// CHECK:STDOUT: %x: ref {.a: f64, .b: i32} = bind_name x, %x.var
|
||||
@@ -38,3 +40,4 @@ var z: i32 = y;
|
||||
// CHECK:STDOUT: %.loc9: i32 = bind_value %y.ref
|
||||
// CHECK:STDOUT: assign %z.var, %.loc9
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
|
||||
@@ -10,6 +10,8 @@ fn G() {
|
||||
var v: {.a: (i32, i32, i32), .b: (i32, i32, i32)} = {.a = F(), .b = F()};
|
||||
}
|
||||
|
||||
// CHECK:STDOUT: --- nested_struct_in_place.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: %.loc7_25.1: type = tuple_type (type, type, type)
|
||||
// CHECK:STDOUT: %.loc7_25.2: type = tuple_type (i32, i32, i32)
|
||||
@@ -18,7 +20,7 @@ fn G() {
|
||||
// CHECK:STDOUT: %.loc10_51.2: type = ptr_type {.a: (i32, i32, i32)*, .b: (i32, i32, i32)*}
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file "nested_struct_in_place.carbon" {
|
||||
// CHECK:STDOUT: file {
|
||||
// CHECK:STDOUT: %F: <function> = fn_decl @F
|
||||
// CHECK:STDOUT: %G: <function> = fn_decl @G
|
||||
// CHECK:STDOUT: }
|
||||
@@ -46,3 +48,4 @@ fn G() {
|
||||
// CHECK:STDOUT: assign %v.var, %.loc10_74.5
|
||||
// CHECK:STDOUT: return
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
|
||||
+4
-1
@@ -7,7 +7,9 @@
|
||||
var x: {.a: i32} = {.a = 4};
|
||||
var y: {.a: i32} = x;
|
||||
|
||||
// CHECK:STDOUT: file "one_entry.carbon" {
|
||||
// CHECK:STDOUT: --- one_entry.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file {
|
||||
// CHECK:STDOUT: %.loc7_16: type = struct_type {.a: i32}
|
||||
// CHECK:STDOUT: %x.var: ref {.a: i32} = var x
|
||||
// CHECK:STDOUT: %x: ref {.a: i32} = bind_name x, %x.var
|
||||
@@ -26,3 +28,4 @@ var y: {.a: i32} = x;
|
||||
// CHECK:STDOUT: %.loc8_20.4: init {.a: i32} = converted %x.ref, %.loc8_20.3
|
||||
// CHECK:STDOUT: assign %y.var, %.loc8_20.4
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
|
||||
+4
-1
@@ -13,13 +13,15 @@ fn F() -> {.a: i32, .b: f64} {
|
||||
return y;
|
||||
}
|
||||
|
||||
// CHECK:STDOUT: --- reorder_fields.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: %.loc10: type = ptr_type {.a: i32, .b: f64}
|
||||
// CHECK:STDOUT: %.loc11_62.1: type = struct_type {.b: f64, .a: i32}
|
||||
// CHECK:STDOUT: %.loc11_62.2: type = ptr_type {.b: f64, .a: i32}
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file "reorder_fields.carbon" {
|
||||
// CHECK:STDOUT: file {
|
||||
// CHECK:STDOUT: %MakeI32: <function> = fn_decl @MakeI32
|
||||
// CHECK:STDOUT: %MakeF64: <function> = fn_decl @MakeF64
|
||||
// CHECK:STDOUT: %F: <function> = fn_decl @F
|
||||
@@ -62,3 +64,4 @@ fn F() -> {.a: i32, .b: f64} {
|
||||
// CHECK:STDOUT: %.loc13_10.8: init {.a: i32, .b: f64} = converted %y.ref, %.loc13_10.7
|
||||
// CHECK:STDOUT: return %.loc13_10.8
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
|
||||
+4
-1
@@ -7,13 +7,15 @@
|
||||
var x: {.a: i32, .b: (i32,)} = {.a = 1, .b = (2,)};
|
||||
var y: {.a: i32, .b: (i32,)} = x;
|
||||
|
||||
// CHECK:STDOUT: --- tuple_as_element.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: %.loc7_27.1: type = tuple_type (type)
|
||||
// CHECK:STDOUT: %.loc7_27.2: type = tuple_type (i32)
|
||||
// CHECK:STDOUT: %.loc7_28: type = ptr_type {.a: i32, .b: (i32,)}
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file "tuple_as_element.carbon" {
|
||||
// CHECK:STDOUT: file {
|
||||
// CHECK:STDOUT: %.loc7_27.1: (type,) = tuple_literal (i32)
|
||||
// CHECK:STDOUT: %.loc7_27.2: type = converted %.loc7_27.1, constants.%.loc7_27.2
|
||||
// CHECK:STDOUT: %.loc7_28: type = struct_type {.a: i32, .b: (i32,)}
|
||||
@@ -53,3 +55,4 @@ var y: {.a: i32, .b: (i32,)} = x;
|
||||
// CHECK:STDOUT: %.loc8_32.13: init {.a: i32, .b: (i32,)} = converted %x.ref, %.loc8_32.12
|
||||
// CHECK:STDOUT: assign %y.var, %.loc8_32.13
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
|
||||
+4
-1
@@ -7,11 +7,13 @@
|
||||
var x: {.a: i32, .b: i32} = {.a = 1, .b = 2};
|
||||
var y: {.a: i32, .b: i32} = x;
|
||||
|
||||
// CHECK:STDOUT: --- two_entries.carbon
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: constants {
|
||||
// CHECK:STDOUT: %.loc7: type = ptr_type {.a: i32, .b: i32}
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
// CHECK:STDOUT: file "two_entries.carbon" {
|
||||
// CHECK:STDOUT: file {
|
||||
// CHECK:STDOUT: %.loc7_25: type = struct_type {.a: i32, .b: i32}
|
||||
// CHECK:STDOUT: %x.var: ref {.a: i32, .b: i32} = var x
|
||||
// CHECK:STDOUT: %x: ref {.a: i32, .b: i32} = bind_name x, %x.var
|
||||
@@ -41,3 +43,4 @@ var y: {.a: i32, .b: i32} = x;
|
||||
// CHECK:STDOUT: %.loc8_29.10: init {.a: i32, .b: i32} = converted %x.ref, %.loc8_29.9
|
||||
// CHECK:STDOUT: assign %y.var, %.loc8_29.10
|
||||
// CHECK:STDOUT: }
|
||||
// CHECK:STDOUT:
|
||||
|
||||
Reference in New Issue
Block a user