From d3c1c626f569e5aa58085425924cca45927b6199 Mon Sep 17 00:00:00 2001 From: peterbell10 Date: Sun, 4 Feb 2018 23:07:12 +0000 Subject: Deal with covered switches consistently (#4161) * Fixes a number of ": not all control paths return a value" warnings on MSVC. * Introduces the UNREACHABLE global macro and uses it instead of conditionally compiled switch defaults. * Move cNBTParseErrorCategory from FastNBT.h into FastNBT.cpp to prevent bad calls to message() --- src/Blocks/BlockButton.h | 5 +---- src/Blocks/BlockCocoaPod.h | 5 +---- src/Blocks/BlockLadder.h | 5 +---- src/Blocks/BlockLever.h | 5 +---- src/Blocks/BlockQuartz.h | 5 +---- src/Blocks/BlockSideways.h | 5 +---- src/Blocks/BlockTrapdoor.h | 5 +---- src/Blocks/BlockTripwireHook.h | 5 +---- 8 files changed, 8 insertions(+), 32 deletions(-) (limited to 'src/Blocks') diff --git a/src/Blocks/BlockButton.h b/src/Blocks/BlockButton.h index 2b646c6e8..ed4e12482 100644 --- a/src/Blocks/BlockButton.h +++ b/src/Blocks/BlockButton.h @@ -92,10 +92,7 @@ public: return 0x0; } } - #if !defined(__clang__) - ASSERT(!"Unknown BLOCK_FACE"); - return 0; - #endif + UNREACHABLE("Unsupported block face"); } inline static eBlockFace BlockMetaDataToBlockFace(NIBBLETYPE a_Meta) diff --git a/src/Blocks/BlockCocoaPod.h b/src/Blocks/BlockCocoaPod.h index 035cc2f4f..4a1fb8c10 100644 --- a/src/Blocks/BlockCocoaPod.h +++ b/src/Blocks/BlockCocoaPod.h @@ -82,10 +82,7 @@ public: return 0; } } - #if !defined(__clang__) - ASSERT(!"Unknown BLOCK_FACE"); - return 0; - #endif + UNREACHABLE("Unsupported block face"); } virtual ColourID GetMapBaseColourID(NIBBLETYPE a_Meta) override diff --git a/src/Blocks/BlockLadder.h b/src/Blocks/BlockLadder.h index a17cfc1a1..29c0cf2b7 100644 --- a/src/Blocks/BlockLadder.h +++ b/src/Blocks/BlockLadder.h @@ -60,10 +60,7 @@ public: return 0x2; } } - #if !defined(__clang__) - ASSERT(!"Unknown BLOCK_FACE"); - return 0; - #endif + UNREACHABLE("Unsupported block face"); } static eBlockFace MetaDataToDirection(NIBBLETYPE a_MetaData) diff --git a/src/Blocks/BlockLever.h b/src/Blocks/BlockLever.h index 6750649ae..6cb80222e 100644 --- a/src/Blocks/BlockLever.h +++ b/src/Blocks/BlockLever.h @@ -65,10 +65,7 @@ public: case BLOCK_FACE_YM: return 0x0; case BLOCK_FACE_NONE: return 0x6; } - #if !defined(__clang__) - ASSERT(!"Unknown BLOCK_FACE"); - return 0; - #endif + UNREACHABLE("Unsupported block face"); } inline static eBlockFace BlockMetaDataToBlockFace(NIBBLETYPE a_Meta) diff --git a/src/Blocks/BlockQuartz.h b/src/Blocks/BlockQuartz.h index c2435cd5e..c87240cf1 100644 --- a/src/Blocks/BlockQuartz.h +++ b/src/Blocks/BlockQuartz.h @@ -63,10 +63,7 @@ public: return a_QuartzMeta; // No idea, give a special meta (all sides the same) } } - #if !defined(__clang__) - ASSERT(!"Unknown BLOCK_FACE"); - return 0; - #endif + UNREACHABLE("Unsupported block face"); } virtual ColourID GetMapBaseColourID(NIBBLETYPE a_Meta) override diff --git a/src/Blocks/BlockSideways.h b/src/Blocks/BlockSideways.h index df94b6ac3..5bc7874b4 100644 --- a/src/Blocks/BlockSideways.h +++ b/src/Blocks/BlockSideways.h @@ -64,10 +64,7 @@ public: return a_Meta | 0xC; // No idea, give a special meta } } - #if !defined(__clang__) - ASSERT(!"Unknown BLOCK_FACE"); - return 0; - #endif + UNREACHABLE("Unsupported block face"); } } ; diff --git a/src/Blocks/BlockTrapdoor.h b/src/Blocks/BlockTrapdoor.h index b3703299f..f8e5df09a 100644 --- a/src/Blocks/BlockTrapdoor.h +++ b/src/Blocks/BlockTrapdoor.h @@ -83,10 +83,7 @@ public: return 0; } } - #if !defined(__clang__) - ASSERT(!"Unknown BLOCK_FACE"); - return 0; - #endif + UNREACHABLE("Unsupported block face"); } inline static eBlockFace BlockMetaDataToBlockFace(NIBBLETYPE a_Meta) diff --git a/src/Blocks/BlockTripwireHook.h b/src/Blocks/BlockTripwireHook.h index f0f6ff722..d544fff86 100644 --- a/src/Blocks/BlockTripwireHook.h +++ b/src/Blocks/BlockTripwireHook.h @@ -45,10 +45,7 @@ public: return 0x0; } } - #if !defined(__clang__) - ASSERT(!"Unknown BLOCK_FACE"); - return 0; - #endif + UNREACHABLE("Unsupported block face"); } inline static eBlockFace MetadataToDirection(NIBBLETYPE a_Meta) -- cgit v1.2.3