src/invasion.cpp: In member function ‘virtual void ABaseMonsterInvasionSpot::Serialize(FArchive&)’: src/invasion.cpp:218:18: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] arc << (DWORD &)lNextSpawnTick << (DWORD &)lNumLeftThisWave; ^ src/invasion.cpp:218:45: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] arc << (DWORD &)lNextSpawnTick << (DWORD &)lNumLeftThisWave; ^ src/invasion.cpp: In member function ‘virtual void ABasePickupInvasionSpot::Serialize(FArchive&)’: src/invasion.cpp:388:18: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] arc << (DWORD &)lNextSpawnTick << (DWORD &)lNumLeftThisWave; ^ src/invasion.cpp:388:45: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] arc << (DWORD &)lNextSpawnTick << (DWORD &)lNumLeftThisWave; ^ src/invasion.cpp: In member function ‘virtual void ABaseWeaponInvasionSpot::Serialize(FArchive&)’: src/invasion.cpp:557:18: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] arc << (DWORD &)lNextSpawnTick; ^ src/invasion.cpp: In function ‘void INVASION_WriteSaveInfo(FILE*)’: src/invasion.cpp:1368:18: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] arc << (DWORD &)g_ulNumMonstersLeft << (DWORD &)g_ulInvasionCountdownTicks << (DWORD &)g_ulCurrentWave << (DWORD &)ulInvasionState << (DWORD &)g_ulNumBossMonsters << (DWORD &) g_ulNumArchVilesLeft; ^ src/invasion.cpp:1368:50: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] arc << (DWORD &)g_ulNumMonstersLeft << (DWORD &)g_ulInvasionCountdownTicks << (DWORD &)g_ulCurrentWave << (DWORD &)ulInvasionState << (DWORD &)g_ulNumBossMonsters << (DWORD &) g_ulNumArchVilesLeft; ^ src/invasion.cpp:1368:89: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] arc << (DWORD &)g_ulNumMonstersLeft << (DWORD &)g_ulInvasionCountdownTicks << (DWORD &)g_ulCurrentWave << (DWORD &)ulInvasionState << (DWORD &)g_ulNumBossMonsters << (DWORD &) g_ulNumArchVilesLeft; ^ src/invasion.cpp:1368:117: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] arc << (DWORD &)g_ulNumMonstersLeft << (DWORD &)g_ulInvasionCountdownTicks << (DWORD &)g_ulCurrentWave << (DWORD &)ulInvasionState << (DWORD &)g_ulNumBossMonsters << (DWORD &) g_ulNumArchVilesLeft; ^ src/invasion.cpp:1368:145: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] arc << (DWORD &)g_ulNumMonstersLeft << (DWORD &)g_ulInvasionCountdownTicks << (DWORD &)g_ulCurrentWave << (DWORD &)ulInvasionState << (DWORD &)g_ulNumBossMonsters << (DWORD &) g_ulNumArchVilesLeft; ^ src/invasion.cpp:1368:178: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] arc << (DWORD &)g_ulNumMonstersLeft << (DWORD &)g_ulInvasionCountdownTicks << (DWORD &)g_ulCurrentWave << (DWORD &)ulInvasionState << (DWORD &)g_ulNumBossMonsters << (DWORD &) g_ulNumArchVilesLeft; ^ src/invasion.cpp: In function ‘void INVASION_ReadSaveInfo(PNGHandle*)’: src/invasion.cpp:1383:19: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] arc << (DWORD &)g_ulNumMonstersLeft << (DWORD &)g_ulInvasionCountdownTicks << (DWORD &)g_ulCurrentWave << (DWORD &)ulInvasionState << (DWORD &)g_ulNumBossMonsters << (DWORD &) g_ulNumArchVilesLeft; ^ src/invasion.cpp:1383:51: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] arc << (DWORD &)g_ulNumMonstersLeft << (DWORD &)g_ulInvasionCountdownTicks << (DWORD &)g_ulCurrentWave << (DWORD &)ulInvasionState << (DWORD &)g_ulNumBossMonsters << (DWORD &) g_ulNumArchVilesLeft; ^ src/invasion.cpp:1383:90: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] arc << (DWORD &)g_ulNumMonstersLeft << (DWORD &)g_ulInvasionCountdownTicks << (DWORD &)g_ulCurrentWave << (DWORD &)ulInvasionState << (DWORD &)g_ulNumBossMonsters << (DWORD &) g_ulNumArchVilesLeft; ^ src/invasion.cpp:1383:118: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] arc << (DWORD &)g_ulNumMonstersLeft << (DWORD &)g_ulInvasionCountdownTicks << (DWORD &)g_ulCurrentWave << (DWORD &)ulInvasionState << (DWORD &)g_ulNumBossMonsters << (DWORD &) g_ulNumArchVilesLeft; ^ src/invasion.cpp:1383:146: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] arc << (DWORD &)g_ulNumMonstersLeft << (DWORD &)g_ulInvasionCountdownTicks << (DWORD &)g_ulCurrentWave << (DWORD &)ulInvasionState << (DWORD &)g_ulNumBossMonsters << (DWORD &) g_ulNumArchVilesLeft; ^ src/invasion.cpp:1383:179: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] arc << (DWORD &)g_ulNumMonstersLeft << (DWORD &)g_ulInvasionCountdownTicks << (DWORD &)g_ulCurrentWave << (DWORD &)ulInvasionState << (DWORD &)g_ulNumBossMonsters << (DWORD &) g_ulNumArchVilesLeft; ^ src/network.cpp: In function ‘NETADDRESS_s NETWORK_GetLocalAddress()’: src/network.cpp:56:67: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] #define inaddrr(x) (*(struct in_addr *) &ifr->x[sizeof sa.sin_port]) ^ src/network.cpp:789:47: note: in expansion of macro ‘inaddrr’ Printf(" with IP address: %s\n", inet_ntoa(inaddrr(ifr_addr.sa_data))); ^ src/network.cpp:789:72: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] Printf(" with IP address: %s\n", inet_ntoa(inaddrr(ifr_addr.sa_data))); ^ src/network.cpp:790:21: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] *(int *)&Address.abIP = *(int *)&inaddrr(ifr_addr.sa_data); ^ src/network.cpp:56:67: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] #define inaddrr(x) (*(struct in_addr *) &ifr->x[sizeof sa.sin_port]) ^ src/network.cpp:790:37: note: in expansion of macro ‘inaddrr’ *(int *)&Address.abIP = *(int *)&inaddrr(ifr_addr.sa_data); ^ src/network.cpp:56:68: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] #define inaddrr(x) (*(struct in_addr *) &ifr->x[sizeof sa.sin_port]) ^ src/network.cpp:790:37: note: in expansion of macro ‘inaddrr’ *(int *)&Address.abIP = *(int *)&inaddrr(ifr_addr.sa_data); ^ src/networkshared.cpp: In function ‘void NETWORK_SocketAddressToNetAddress(sockaddr_in*, NETADDRESS_s*)’: src/networkshared.cpp:415:18: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] *(int *)&a->abIP = *(int *)&s->sin_addr; ^ src/networkshared.cpp: In function ‘void NETWORK_NetAddressToSocketAddress(NETADDRESS_s&, sockaddr_in&)’: src/networkshared.cpp:427:53: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] *(int *)&SocketAddress.sin_addr = *(int *)&Address.abIP; ^ src/p_ceiling.cpp: In member function ‘virtual void DCeiling::Serialize(FArchive&)’: src/p_ceiling.cpp:64:15: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] << (DWORD &)m_lCeilingID; ^ src/p_doors.cpp: In member function ‘virtual void DDoor::Serialize(FArchive&)’: src/p_doors.cpp:61:15: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] << (DWORD &)m_lDoorID; ^ src/p_floor.cpp: In member function ‘virtual void DFloor::Serialize(FArchive&)’: src/p_floor.cpp:92:15: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] << (DWORD &)m_lFloorID; ^ src/p_floor.cpp: In member function ‘virtual void DElevator::Serialize(FArchive&)’: src/p_floor.cpp:1207:15: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] << (DWORD &)m_lElevatorID; ^ src/p_floor.cpp: In member function ‘virtual void DWaggleBase::Serialize(FArchive&)’: src/p_floor.cpp:1553:15: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] << (DWORD &)m_lWaggleID; ^ src/p_mobj.cpp: In member function ‘virtual void AActor::Serialize(FArchive&)’: src/p_mobj.cpp:345:15: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] << (DWORD &)ulLimitedToTeam // [BB] ^ src/p_mobj.cpp:346:15: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] << (DWORD &)ulVisibleToTeam // [BB] ^ src/p_mobj.cpp:347:15: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] << (DWORD &)lFixedColormap // [BB] ^ src/p_mobj.cpp:348:15: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] << (DWORD &)lNetID // [BC] We need to archive this so that it's restored properly when going between maps in a hub. ^ src/p_mobj.cpp:349:15: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] << (DWORD &)ulSTFlags ^ src/p_mobj.cpp:350:15: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] << (DWORD &)ulNetworkFlags ^ src/p_mobj.cpp:351:15: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] << (DWORD &)ulInvasionWave ^ src/p_pillar.cpp: In member function ‘virtual void DPillar::Serialize(FArchive&)’: src/p_pillar.cpp:93:15: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] << (DWORD &)m_lPillarID; ^ src/p_plats.cpp: In member function ‘virtual void DPlat::Serialize(FArchive&)’: src/p_plats.cpp:59:15: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] << (DWORD &)m_lPlatID; ^ src/p_saveg.cpp: In function ‘void P_SerializeWorld(FArchive&)’: src/p_saveg.cpp:440:23: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] arc << (DWORD &)li->ulTexChangeFlags ^ src/p_user.cpp: In member function ‘void player_t::Serialize(FArchive&)’: src/p_user.cpp:3824:15: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] << (DWORD &)ulTeam ^ src/p_user.cpp:3827:15: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] << (DWORD &)ulRailgunShots ^ src/p_user.cpp:3828:15: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] << (DWORD &)lMaxHealthBonus ^ src/sv_commands.cpp: In member function ‘void NetCommand::addFloat(float)’: src/sv_commands.cpp:197:73: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] addInteger ( *(reinterpret_cast ( &FloatValue )) ); ^ src/g_doom/a_doomartifacts.cpp: In member function ‘virtual void ARandomPowerup::Serialize(FArchive&)’: src/g_doom/a_doomartifacts.cpp:171:18: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] arc << (DWORD &)ulCurrentFrame << (DWORD &)ulPowerupFlags; ^ src/g_doom/a_doomartifacts.cpp:171:45: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] arc << (DWORD &)ulCurrentFrame << (DWORD &)ulPowerupFlags; ^ src/g_shared/a_movingcamera.cpp: In member function ‘virtual void APathFollower::Serialize(FArchive&)’: src/g_shared/a_movingcamera.cpp:203:80: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] arc << bPostBeginPlayCalled << bActivateCalledBeforePostBeginPlay << (DWORD &)lServerPrevNodeId << (DWORD &)lServerCurrNodeId << fServerTime; ^ src/g_shared/a_movingcamera.cpp:203:110: warning: dereferencing type-punned pointer will break strict-aliasing rules [-Wstrict-aliasing] arc << bPostBeginPlayCalled << bActivateCalledBeforePostBeginPlay << (DWORD &)lServerPrevNodeId << (DWORD &)lServerCurrNodeId << fServerTime; ^