``` struct Test { a: u32, b: u32 } dynasm!(ops ; mov rbx => Test[2 + 1].b, rax ); ``` Generates a displacement of 0x15 instead of 0x1C for some reason. The code it should generate for the displacement is: `0x1C == (::std::mem::size_of<Test> as i32) * (2 + 1) + offset_of(Test, b).` However it generates 0x15, and the only explanation for that is something like: `0x15 == (::std::mem::size_of<Test> as i32) * 2 + 1 + offset_of(Test, b).` Now this shouldn't be happening, as the code generation for all of this does use delimited groups to avoid this. But it is.