Open
Description
Segmentation fault hen assigning val to struct
from lpython import packed, dataclass, i8, u8, u16, i64, i32, u32, u64, u16, ccall, union, Union
@packed
@dataclass
class gd_lab_2_add_u16_data:
input_a: u64
input_b: u64
output: u64
@packed
@dataclass
class gd_lab_2_exercise_data:
input_a: u64
input_b: u64
input_c: u64
output: u64
@packed
@dataclass
class gd_lab_2_cmd:
cmd: u32
@ccall
@union
class u(Union):
add_u16_data: gd_lab_2_add_u16_data = gd_lab_2_add_u16_data(u64(0), u64(0), u64(0))
exercise_data: gd_lab_2_exercise_data = gd_lab_2_exercise_data(u64(0), u64(0), u64(0), u64(0))
def create_gd_lab_2_cmd_test():
# Create an instance of gd_lab_2_add_u16_data with sample values
add_data: gd_lab_2_add_u16_data = gd_lab_2_add_u16_data(u64(10), u64(20), u64(30))
# Create an instance of gd_lab_2_exercise_data with sample values
exercise_data: gd_lab_2_exercise_data = gd_lab_2_exercise_data(u64(1), u64(2), u64(3), u64(4))
# # Create an instance of gd_lab_2_cmd
When assigning to gd_lab_2_cmd(cmd=u32(123)) lpython breaks:
cmd : gd_lab_2_cmd = gd_lab_2_cmd(cmd=u32(123))
Error msg:
zsh: segmentation fault
The following line works:
cmd : gd_lab_2_cmd = gd_lab_2_cmd(u32(123))