From c2bfa98d8f33286dc008e6053605d3123185884d Mon Sep 17 00:00:00 2001 From: jespergravgaard Date: Sat, 6 Mar 2021 08:53:09 +0100 Subject: [PATCH] Fixed problem with erronously coalescing structs of same size/type affected by address-of. Closes #632 --- src/test/kc/struct-ptr-35.c | 22 ++++++++++++++++++++++ 1 file changed, 22 insertions(+) create mode 100644 src/test/kc/struct-ptr-35.c diff --git a/src/test/kc/struct-ptr-35.c b/src/test/kc/struct-ptr-35.c new file mode 100644 index 000000000..8b97f2d14 --- /dev/null +++ b/src/test/kc/struct-ptr-35.c @@ -0,0 +1,22 @@ +struct Tile { + dword *Tiles; + word Offset; + byte Count; + char Name[20]; +}; + +dword PlayerSprites[12]; +dword Enemy2Sprites[12]; + +struct Tile S1 = {PlayerSprites, 20, 64, "Sven" }; +struct Tile S2 = {Enemy2Sprites, 50, 128, "Jesper" }; +struct Tile *TileDB[2] = {&S1, &S2}; + +void main() { + char * const SCREEN = 0x0400; + + for(int i:0..1) { + struct Tile *tile = TileDB[i]; + SCREEN[i] = tile->Count; + } +}