bad_assign_in_async_block_fail.adl
1 program test.alpha { 2 struct Foo { x: u32, y: u32 } 3 4 async transition foo(p: u32, q: u8) -> Future { 5 let y = (1u32, 2u8, 3u16); 6 let a = [1u32, 2u32]; 7 let x = 0u32; 8 let s = Foo { x: 9, y: 4 }; 9 let f = async { 10 // All of these are bad 11 y = (1u32, 2u8, 3u16); 12 y.0 = 1u32; 13 a = [1u32, 2u32]; 14 a[0] = 3; 15 x = 2; 16 s.x = 99; 17 18 { 19 { 20 y = (1u32, 2u8, 3u16); 21 y.0 = 1u32; 22 a = [1u32, 2u32]; 23 a[0] = 3; 24 x = 2; 25 s.x = 99; 26 } 27 } 28 }; 29 return f; 30 } 31 } 32