1/* PR c++/23180. */ 2/* Initialize a local structure with an expression that attempts to use 3 pointer arithmetic to calculate another structure field offset. */ 4 5void saveLoadEntries(const void *); 6 7void saveOrLoad() { 8 struct Track { 9 char soundName[15]; 10 }; 11 struct SaveLoadEntry { 12 int offs; 13 int type; 14 int size; 15 }; 16 17 SaveLoadEntry trackEntries = { 18 ((long) (&((Track *) 42)->soundName[0])) - 42, 19 0, 1 20 }; 21 saveLoadEntries(&trackEntries); 22} 23