Merge pull request #1351 from suve/gcc11-diagnostics-fix

GCC11 diagnostics fix
pyro-refactor
Mateusz Przybył 2020-09-11 20:37:25 +02:00 committed by GitHub
commit 13098ee378
No known key found for this signature in database
GPG Key ID: 4AEE18F83AFDEB23
4 changed files with 11 additions and 11 deletions

View File

@ -59,14 +59,14 @@ static void SetTransparency(CObject* obj, float value)
if (obj->Implements(ObjectInterfaceType::Carrier)) if (obj->Implements(ObjectInterfaceType::Carrier))
{ {
CObject* cargo = dynamic_cast<CCarrierObject*>(obj)->GetCargo(); CObject* cargo = dynamic_cast<CCarrierObject&>(*obj).GetCargo();
if (cargo != nullptr) if (cargo != nullptr)
cargo->SetTransparency(value); cargo->SetTransparency(value);
} }
if (obj->Implements(ObjectInterfaceType::Powered)) if (obj->Implements(ObjectInterfaceType::Powered))
{ {
CObject* power = dynamic_cast<CPoweredObject*>(obj)->GetPower(); CObject* power = dynamic_cast<CPoweredObject&>(*obj).GetPower();
if (power != nullptr) if (power != nullptr)
power->SetTransparency(value); power->SetTransparency(value);
} }
@ -1233,7 +1233,7 @@ bool CCamera::EventFrameBack(const Event &event)
bool ground = true; bool ground = true;
if (m_cameraObj->Implements(ObjectInterfaceType::Movable)) if (m_cameraObj->Implements(ObjectInterfaceType::Movable))
ground = dynamic_cast<CMovableObject*>(m_cameraObj)->GetPhysics()->GetLand(); ground = dynamic_cast<CMovableObject&>(*m_cameraObj).GetPhysics()->GetLand();
if ( ground ) // ground? if ( ground ) // ground?
{ {
Math::Vector pos = lookatPt + (lookatPt - m_eyePt); Math::Vector pos = lookatPt + (lookatPt - m_eyePt);
@ -1326,7 +1326,7 @@ bool CCamera::EventFrameOnBoard(const Event &event)
{ {
assert(m_cameraObj->Implements(ObjectInterfaceType::Controllable)); assert(m_cameraObj->Implements(ObjectInterfaceType::Controllable));
Math::Vector lookatPt, upVec; Math::Vector lookatPt, upVec;
dynamic_cast<CControllableObject*>(m_cameraObj)->AdjustCamera(m_eyePt, m_directionH, m_directionV, lookatPt, upVec, m_type); dynamic_cast<CControllableObject&>(*m_cameraObj).AdjustCamera(m_eyePt, m_directionH, m_directionV, lookatPt, upVec, m_type);
Math::Vector eye = m_effectOffset * 0.3f + m_eyePt; Math::Vector eye = m_effectOffset * 0.3f + m_eyePt;
Math::Vector lookat = m_effectOffset * 0.3f + lookatPt; Math::Vector lookat = m_effectOffset * 0.3f + lookatPt;

View File

@ -51,5 +51,5 @@ public:
inline bool IsObjectCarryingCargo(CObject* obj) inline bool IsObjectCarryingCargo(CObject* obj)
{ {
return obj->Implements(ObjectInterfaceType::Carrier) && return obj->Implements(ObjectInterfaceType::Carrier) &&
dynamic_cast<CCarrierObject*>(obj)->IsCarryingCargo(); dynamic_cast<CCarrierObject&>(*obj).IsCarryingCargo();
} }

View File

@ -61,10 +61,10 @@ inline float GetObjectEnergy(CObject* object)
if (object->Implements(ObjectInterfaceType::Powered)) if (object->Implements(ObjectInterfaceType::Powered))
{ {
CObject* power = dynamic_cast<CPoweredObject*>(object)->GetPower(); CObject* power = dynamic_cast<CPoweredObject&>(*object).GetPower();
if (power != nullptr && power->Implements(ObjectInterfaceType::PowerContainer)) if (power != nullptr && power->Implements(ObjectInterfaceType::PowerContainer))
{ {
energy = dynamic_cast<CPowerContainerObject*>(power)->GetEnergy(); energy = dynamic_cast<CPowerContainerObject&>(*power).GetEnergy();
} }
} }
@ -77,10 +77,10 @@ inline float GetObjectEnergyLevel(CObject* object)
if (object->Implements(ObjectInterfaceType::Powered)) if (object->Implements(ObjectInterfaceType::Powered))
{ {
CObject* power = dynamic_cast<CPoweredObject*>(object)->GetPower(); CObject* power = dynamic_cast<CPoweredObject&>(*object).GetPower();
if (power != nullptr && power->Implements(ObjectInterfaceType::PowerContainer)) if (power != nullptr && power->Implements(ObjectInterfaceType::PowerContainer))
{ {
energy = dynamic_cast<CPowerContainerObject*>(power)->GetEnergyLevel(); energy = dynamic_cast<CPowerContainerObject&>(*power).GetEnergyLevel();
} }
} }
@ -90,5 +90,5 @@ inline float GetObjectEnergyLevel(CObject* object)
inline bool ObjectHasPowerCell(CObject* object) inline bool ObjectHasPowerCell(CObject* object)
{ {
return object->Implements(ObjectInterfaceType::Powered) && return object->Implements(ObjectInterfaceType::Powered) &&
dynamic_cast<CPoweredObject*>(object)->GetPower() != nullptr; dynamic_cast<CPoweredObject&>(*object).GetPower() != nullptr;
} }

View File

@ -54,5 +54,5 @@ public:
inline bool IsObjectBeingTransported(CObject* obj) inline bool IsObjectBeingTransported(CObject* obj)
{ {
return obj->Implements(ObjectInterfaceType::Transportable) && return obj->Implements(ObjectInterfaceType::Transportable) &&
dynamic_cast<CTransportableObject*>(obj)->IsBeingTransported(); dynamic_cast<CTransportableObject&>(*obj).IsBeingTransported();
} }