aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorPeter Keresztes Schmidt <carbenium@outlook.com>2020-07-18 20:43:16 +0200
committerShauren <shauren.trinity@gmail.com>2022-01-23 22:16:15 +0100
commit44ea32ace410071494726eeaf69489bad1423591 (patch)
tree9f9a116b006225a3a9e808d049b1adca21a7773a
parentad340466d09ae6de8adc20949f433772cb016b54 (diff)
Build: Enable -Wimplicit-fallthrough on clang (#25056)
* Misc: Use [[fallthrough]] attribute instead of comment to mark intentional fallthroughs Related: #25006 * Misc: Add some missing breaks (no-ops) to satisfy clang Related: #25006 Closes #25055 * Build: Enable -Wimplicit-fallthrough on clang Closes #25006
-rw-r--r--cmake/compiler/clang/settings.cmake1
-rw-r--r--src/server/game/Conditions/ConditionMgr.cpp1
-rw-r--r--src/server/game/Entities/Player/Player.cpp3
-rw-r--r--src/server/game/Entities/Unit/Unit.cpp1
-rw-r--r--src/server/game/Handlers/GroupHandler.cpp1
-rw-r--r--src/server/game/Maps/Map.cpp1
-rw-r--r--src/server/game/Spells/Spell.cpp1
-rw-r--r--src/server/game/Spells/SpellEffects.cpp1
-rw-r--r--src/server/game/Spells/SpellInfo.cpp3
-rw-r--r--src/server/scripts/Battlefield/BattlefieldWG.cpp1
-rw-r--r--src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/instance_blackrock_spire.cpp1
-rw-r--r--src/server/scripts/EasternKingdoms/MagistersTerrace/instance_magisters_terrace.cpp1
-rw-r--r--src/server/scripts/EasternKingdoms/ScarletMonastery/boss_high_inquisitor_fairbanks.cpp1
-rw-r--r--src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/npc_arthas.cpp1
-rw-r--r--src/server/scripts/Kalimdor/zone_bloodmyst_isle.cpp3
-rw-r--r--src/server/scripts/Northrend/IcecrownCitadel/boss_professor_putricide.cpp1
-rw-r--r--src/server/scripts/Northrend/IcecrownCitadel/boss_rotface.cpp1
-rw-r--r--src/server/scripts/Northrend/Naxxramas/boss_kelthuzad.cpp1
-rw-r--r--src/server/scripts/Northrend/Naxxramas/boss_thaddius.cpp1
-rw-r--r--src/server/scripts/Northrend/Ulduar/Ulduar/boss_flame_leviathan.cpp1
-rw-r--r--src/server/scripts/Outland/BlackTemple/instance_black_temple.cpp1
21 files changed, 26 insertions, 1 deletions
diff --git a/cmake/compiler/clang/settings.cmake b/cmake/compiler/clang/settings.cmake
index 19d7222b65a..2a3ed8e1dd3 100644
--- a/cmake/compiler/clang/settings.cmake
+++ b/cmake/compiler/clang/settings.cmake
@@ -11,6 +11,7 @@ if(WITH_WARNINGS)
-W
-Wall
-Wextra
+ -Wimplicit-fallthrough
-Winit-self
-Wfatal-errors
-Wno-mismatched-tags
diff --git a/src/server/game/Conditions/ConditionMgr.cpp b/src/server/game/Conditions/ConditionMgr.cpp
index 929d9ec0275..7393dbbe390 100644
--- a/src/server/game/Conditions/ConditionMgr.cpp
+++ b/src/server/game/Conditions/ConditionMgr.cpp
@@ -3474,6 +3474,7 @@ int32 EvalSingleValue(ByteBuffer& buffer, Player const* player)
return 0;
value = WorldStateExpressionFunctions[functionType](player, arg1, arg2);
+ break;
}
default:
break;
diff --git a/src/server/game/Entities/Player/Player.cpp b/src/server/game/Entities/Player/Player.cpp
index f6673e64aa1..ac8e76cbeb6 100644
--- a/src/server/game/Entities/Player/Player.cpp
+++ b/src/server/game/Entities/Player/Player.cpp
@@ -12750,6 +12750,7 @@ void Player::DestroyItem(uint8 bag, uint8 slot, bool update)
case EQUIPMENT_SLOT_MAINHAND:
case EQUIPMENT_SLOT_OFFHAND:
RecalculateRating(CR_ARMOR_PENETRATION);
+ break;
default:
break;
}
@@ -21105,6 +21106,7 @@ void Player::_SaveInventory(CharacterDatabaseTransaction& trans)
stmt = CharacterDatabase.GetPreparedStatement(CHAR_DEL_CHAR_INVENTORY_BY_ITEM);
stmt->setUInt64(0, item->GetGUID().GetCounter());
trans->Append(stmt);
+ break;
case ITEM_UNCHANGED:
break;
}
@@ -26645,6 +26647,7 @@ void Player::_LoadSkills(PreparedQueryResult result)
break;
case SKILL_RANGE_LEVEL:
max = GetMaxSkillValueForLevel();
+ break;
default:
break;
}
diff --git a/src/server/game/Entities/Unit/Unit.cpp b/src/server/game/Entities/Unit/Unit.cpp
index 78c50b32af6..448248ad933 100644
--- a/src/server/game/Entities/Unit/Unit.cpp
+++ b/src/server/game/Entities/Unit/Unit.cpp
@@ -11697,6 +11697,7 @@ uint32 Unit::GetModelForForm(ShapeshiftForm form, uint32 spellId) const
{
if (HasAura(58135)) // Glyph of Spectral Wolf
return 60247;
+ break;
}
default:
break;
diff --git a/src/server/game/Handlers/GroupHandler.cpp b/src/server/game/Handlers/GroupHandler.cpp
index 08ac9cd2924..8cd7d5799ad 100644
--- a/src/server/game/Handlers/GroupHandler.cpp
+++ b/src/server/game/Handlers/GroupHandler.cpp
@@ -562,6 +562,7 @@ void WorldSession::HandleSetPartyAssignment(WorldPackets::Party::SetPartyAssignm
case GROUP_ASSIGN_MAINTANK:
group->RemoveUniqueGroupMemberFlag(MEMBER_FLAG_MAINTANK); // Remove main assist flag from current if any.
group->SetGroupMemberFlag(packet.Target, packet.Set, MEMBER_FLAG_MAINTANK);
+ break;
default:
break;
}
diff --git a/src/server/game/Maps/Map.cpp b/src/server/game/Maps/Map.cpp
index ce111ce2b81..36d610f941c 100644
--- a/src/server/game/Maps/Map.cpp
+++ b/src/server/game/Maps/Map.cpp
@@ -3241,6 +3241,7 @@ size_t Map::DespawnAll(SpawnObjectType type, ObjectGuid::LowType spawnId)
case SPAWN_TYPE_GAMEOBJECT:
for (auto const& pair : Trinity::Containers::MapEqualRange(GetGameObjectBySpawnIdStore(), spawnId))
toUnload.push_back(pair.second);
+ break;
default:
break;
}
diff --git a/src/server/game/Spells/Spell.cpp b/src/server/game/Spells/Spell.cpp
index 01e7dcf869f..e4cf8ce8858 100644
--- a/src/server/game/Spells/Spell.cpp
+++ b/src/server/game/Spells/Spell.cpp
@@ -8616,6 +8616,7 @@ bool WorldObjectSpellTargetCheck::operator()(WorldObject* target) const
case TARGET_OBJECT_TYPE_CORPSE_ENEMY:
if (unitTarget->IsAlive())
return false;
+ break;
default:
break;
}
diff --git a/src/server/game/Spells/SpellEffects.cpp b/src/server/game/Spells/SpellEffects.cpp
index 0008fedf2d0..f4be6958ca3 100644
--- a/src/server/game/Spells/SpellEffects.cpp
+++ b/src/server/game/Spells/SpellEffects.cpp
@@ -1540,6 +1540,7 @@ void Spell::SendLoot(ObjectGuid guid, LootType loottype)
gameObjTarget->TriggeringLinkedGameObject(trapEntry, player);
// Don't return, let loots been taken
+ break;
default:
break;
}
diff --git a/src/server/game/Spells/SpellInfo.cpp b/src/server/game/Spells/SpellInfo.cpp
index a1bc3937b4f..d792c8057a0 100644
--- a/src/server/game/Spells/SpellInfo.cpp
+++ b/src/server/game/Spells/SpellInfo.cpp
@@ -4455,7 +4455,8 @@ bool _isPositiveEffectImpl(SpellInfo const* spellInfo, SpellEffectInfo const& ef
if (otherEffect.EffectIndex != effect.EffectIndex && // for spells like 38044: instakill effect is negative but auras on target must count as buff
otherEffect.TargetA.GetTarget() == effect.TargetA.GetTarget() &&
otherEffect.TargetB.GetTarget() == effect.TargetB.GetTarget())
- return false;
+ return false;
+ break;
default:
break;
}
diff --git a/src/server/scripts/Battlefield/BattlefieldWG.cpp b/src/server/scripts/Battlefield/BattlefieldWG.cpp
index f34deb975e7..7c6f33182db 100644
--- a/src/server/scripts/Battlefield/BattlefieldWG.cpp
+++ b/src/server/scripts/Battlefield/BattlefieldWG.cpp
@@ -773,6 +773,7 @@ void BattlefieldWG::DoCompleteOrIncrementAchievement(uint32 achievement, Player*
case ACHIEVEMENTS_WIN_WG_100:
{
// player->UpdateCriteria();
+ break;
}
default:
{
diff --git a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/instance_blackrock_spire.cpp b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/instance_blackrock_spire.cpp
index ede6a51d060..3f53a64f74f 100644
--- a/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/instance_blackrock_spire.cpp
+++ b/src/server/scripts/EasternKingdoms/BlackrockMountain/BlackrockSpire/instance_blackrock_spire.cpp
@@ -303,6 +303,7 @@ public:
for (GuidList::const_iterator itr = _incarceratorList.begin(); itr != _incarceratorList.end(); ++itr)
if (Creature* creature = instance->GetCreature(*itr))
creature->Respawn();
+ break;
default:
break;
}
diff --git a/src/server/scripts/EasternKingdoms/MagistersTerrace/instance_magisters_terrace.cpp b/src/server/scripts/EasternKingdoms/MagistersTerrace/instance_magisters_terrace.cpp
index b8db7e7448f..ded5c46ce0c 100644
--- a/src/server/scripts/EasternKingdoms/MagistersTerrace/instance_magisters_terrace.cpp
+++ b/src/server/scripts/EasternKingdoms/MagistersTerrace/instance_magisters_terrace.cpp
@@ -126,6 +126,7 @@ class instance_magisters_terrace : public InstanceMapScript
case NPC_SUNBLADE_BLOOD_KNIGHT:
if (creature->GetDistance(KaelthasTrashGroupDistanceComparisonPos) < 10.0f)
_kaelthasPreTrashGUIDs.insert(creature->GetGUID());
+ break;
default:
break;
}
diff --git a/src/server/scripts/EasternKingdoms/ScarletMonastery/boss_high_inquisitor_fairbanks.cpp b/src/server/scripts/EasternKingdoms/ScarletMonastery/boss_high_inquisitor_fairbanks.cpp
index 64a5861db26..c6532c4209c 100644
--- a/src/server/scripts/EasternKingdoms/ScarletMonastery/boss_high_inquisitor_fairbanks.cpp
+++ b/src/server/scripts/EasternKingdoms/ScarletMonastery/boss_high_inquisitor_fairbanks.cpp
@@ -146,6 +146,7 @@ struct boss_high_inquisitor_fairbanks : public BossAI
if (Unit* target = SelectTarget(SelectTargetMethod::MaxThreat, 0, 30.f, true, false))
DoCast(target, SPELL_SLEEP);
events.Repeat(30s);
+ break;
default:
break;
}
diff --git a/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/npc_arthas.cpp b/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/npc_arthas.cpp
index ffefb1457a9..aa1e2169f12 100644
--- a/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/npc_arthas.cpp
+++ b/src/server/scripts/Kalimdor/CavernsOfTime/CullingOfStratholme/npc_arthas.cpp
@@ -1485,6 +1485,7 @@ public:
chromie->AI()->Talk(RP5_LINE_CHROMIE0);
chromie->AddNpcFlag(NPCFlags(UNIT_NPC_FLAG_GOSSIP | UNIT_NPC_FLAG_QUESTGIVER));
}
+ break;
default:
break;
}
diff --git a/src/server/scripts/Kalimdor/zone_bloodmyst_isle.cpp b/src/server/scripts/Kalimdor/zone_bloodmyst_isle.cpp
index a45e65460ef..5a8f926b3f2 100644
--- a/src/server/scripts/Kalimdor/zone_bloodmyst_isle.cpp
+++ b/src/server/scripts/Kalimdor/zone_bloodmyst_isle.cpp
@@ -330,8 +330,11 @@ public:
std::list<Creature*> creatureList;
GetCreatureListWithEntryInGrid(creatureList, me, NPC_BLOODMYST_TESLA_COIL, 500.0f);
if (!creatureList.empty())
+ {
for (std::list<Creature*>::iterator itr = creatureList.begin(); itr != creatureList.end(); ++itr)
(*itr)->InterruptNonMeleeSpells(true, SPELL_BLOODMYST_TESLA);
+ }
+ break;
}
default:
break;
diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_professor_putricide.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_professor_putricide.cpp
index c62fc1ceb5b..c0d2edfce71 100644
--- a/src/server/scripts/Northrend/IcecrownCitadel/boss_professor_putricide.cpp
+++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_professor_putricide.cpp
@@ -691,6 +691,7 @@ class boss_professor_putricide : public CreatureScript
default:
break;
}
+ break;
}
default:
break;
diff --git a/src/server/scripts/Northrend/IcecrownCitadel/boss_rotface.cpp b/src/server/scripts/Northrend/IcecrownCitadel/boss_rotface.cpp
index bf36a6af989..636ef4578e2 100644
--- a/src/server/scripts/Northrend/IcecrownCitadel/boss_rotface.cpp
+++ b/src/server/scripts/Northrend/IcecrownCitadel/boss_rotface.cpp
@@ -352,6 +352,7 @@ class npc_big_ooze : public CreatureScript
case EVENT_STICKY_OOZE:
DoCastVictim(SPELL_STICKY_OOZE);
events.ScheduleEvent(EVENT_STICKY_OOZE, 15s);
+ break;
default:
break;
}
diff --git a/src/server/scripts/Northrend/Naxxramas/boss_kelthuzad.cpp b/src/server/scripts/Northrend/Naxxramas/boss_kelthuzad.cpp
index 4af7a42f517..aa5d585e5c0 100644
--- a/src/server/scripts/Northrend/Naxxramas/boss_kelthuzad.cpp
+++ b/src/server/scripts/Northrend/Naxxramas/boss_kelthuzad.cpp
@@ -815,6 +815,7 @@ public:
me->SetImmuneToPC(true);
me->DespawnOrUnsummon(30 * IN_MILLISECONDS); // just in case anything interrupts the movement
me->GetMotionMaster()->MoveTargetedHome();
+ break;
default:
break;
}
diff --git a/src/server/scripts/Northrend/Naxxramas/boss_thaddius.cpp b/src/server/scripts/Northrend/Naxxramas/boss_thaddius.cpp
index 8aa2e149d2c..b23c40a09b9 100644
--- a/src/server/scripts/Northrend/Naxxramas/boss_thaddius.cpp
+++ b/src/server/scripts/Northrend/Naxxramas/boss_thaddius.cpp
@@ -796,6 +796,7 @@ public:
if (GameObject* coil = myCoilGO())
coil->SetGoState(GO_STATE_READY);
me->DespawnOrUnsummon(0, Hours(24 * 7));
+ break;
default:
break;
}
diff --git a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_flame_leviathan.cpp b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_flame_leviathan.cpp
index de096206fd6..0f046ca53a3 100644
--- a/src/server/scripts/Northrend/Ulduar/Ulduar/boss_flame_leviathan.cpp
+++ b/src/server/scripts/Northrend/Ulduar/Ulduar/boss_flame_leviathan.cpp
@@ -357,6 +357,7 @@ class boss_flame_leviathan : public CreatureScript
case DATA_ORBIT_ACHIEVEMENTS:
if (ActiveTowers) // Only on HardMode
return ActiveTowersCount;
+ break;
default:
break;
}
diff --git a/src/server/scripts/Outland/BlackTemple/instance_black_temple.cpp b/src/server/scripts/Outland/BlackTemple/instance_black_temple.cpp
index 97d5fa75ab5..c69478a51f9 100644
--- a/src/server/scripts/Outland/BlackTemple/instance_black_temple.cpp
+++ b/src/server/scripts/Outland/BlackTemple/instance_black_temple.cpp
@@ -169,6 +169,7 @@ class instance_black_temple : public InstanceMapScript
break;
case DATA_AKAMA_ILLIDAN_INTRO:
AkamaIllidanIntro = data;
+ break;
default:
break;
}