@@ -4414,19 +4414,15 @@ fn structs_are_generated() {
4414
4414
4415
4415
VAR_GLOBAL
4416
4416
x : MyStruct;
4417
+ y : STRUCT
4418
+ a : BYTE;
4419
+ b : BYTE;
4420
+ END_STRUCT;
4417
4421
END_VAR
4418
4422
" ,
4419
4423
) ;
4420
4424
4421
- let expected = r#"; ModuleID = 'main'
4422
- source_filename = "main"
4423
-
4424
- %MyStruct = type { i32, i32 }
4425
-
4426
- @x = global %MyStruct zeroinitializer
4427
- "# ;
4428
-
4429
- assert_eq ! ( result, expected) ;
4425
+ insta:: assert_snapshot!( result) ;
4430
4426
}
4431
4427
4432
4428
#[ test]
@@ -4437,17 +4433,12 @@ fn arrays_are_generated() {
4437
4433
4438
4434
VAR_GLOBAL
4439
4435
x : MyArray;
4436
+ y : ARRAY[0..5] OF REAL;
4440
4437
END_VAR
4441
4438
" ,
4442
4439
) ;
4443
4440
4444
- let expected = r#"; ModuleID = 'main'
4445
- source_filename = "main"
4446
-
4447
- @x = external global [10 x i16]
4448
- "# ;
4449
-
4450
- assert_eq ! ( result, expected) ;
4441
+ insta:: assert_snapshot!( result) ;
4451
4442
}
4452
4443
4453
4444
#[ test]
@@ -4472,20 +4463,7 @@ fn arrays_with_global_const_size_are_generated() {
4472
4463
" ,
4473
4464
) ;
4474
4465
4475
- let expected = r#"; ModuleID = 'main'
4476
- source_filename = "main"
4477
-
4478
- @THREE = global i16 3
4479
- @ZERO = global i16 0
4480
- @LEN = global i16 9
4481
- @x = external global [10 x i16]
4482
- @y = external global [11 x i32]
4483
- @z = external global [19 x i8]
4484
- @zz = external global [10 x [10 x i8]]
4485
- @zzz = external global [10 x [8 x i8]]
4486
- "# ;
4487
-
4488
- assert_eq ! ( result, expected) ;
4466
+ insta:: assert_snapshot!( result) ;
4489
4467
}
4490
4468
4491
4469
#[ test]
@@ -5574,6 +5552,25 @@ source_filename = "main"
5574
5552
assert_eq ! ( result, expected) ;
5575
5553
}
5576
5554
5555
+ #[ test]
5556
+ fn uninitialized_global_array ( ) {
5557
+ let result = codegen (
5558
+ "
5559
+ VAR_GLOBAL
5560
+ a : ARRAY[0..1] OF BYTE;
5561
+ END_VAR
5562
+ " ,
5563
+ ) ;
5564
+
5565
+ let expected = r#"; ModuleID = 'main'
5566
+ source_filename = "main"
5567
+
5568
+ @a = global [2 x i8] zeroinitializer
5569
+ "# ;
5570
+
5571
+ assert_eq ! ( result, expected) ;
5572
+ }
5573
+
5577
5574
#[ test]
5578
5575
fn initial_values_in_array_variable_using_multiplied_statement ( ) {
5579
5576
let result = codegen (
0 commit comments