Commit 41b072b6 by Nico Weber Committed by Commit Bot

Prepare for -Wimplicit-fallthrough in ANGLE.

Disable the warning for flex-generated output, which contains lots of intentional fallthrough. Fixes a bug where GL_SAMPLE_ALPHA_TO_ONE_EXT would fall through to GL_COVERAGE_MODULATION_CHROMIUM and hence behave like that. Fixes a bug in the D3D9 state management where invalidating DIRTY_BIT_POLYGON_OFFSET would also invalidate the stencil bits. One somewhat common incorrect pattern in ANGLE is nested switch statements that look like so: switch (a) { case a1: switch (b) { case b1: ... break; } case a2: ... } The assumption here seems to be that the breakk exits the outer case (here a1), while it in fact only exits the inner switch, so that we fall through to a2. In most places, I fixed this by adding an explicit `break` after the inner switch. This fixes a bug wher GL_PATH_JOIN_STYLE_CHROMIUM would fall through to GL_PATH_MITER_LIMIT_CHROMIUM in validation (but since the join style enum is always > 0, this happened to not have an effect in practice). This also fixes 87 bugs in GetLoadFunctionsMap() where invalid values would previously return an unrelated function map instead of the empty load function map. Bug: chromium:810767 Change-Id: Ib51388c73fbfc229160e2c10f8fb9364cc7c996c Reviewed-on: https://chromium-review.googlesource.com/911529 Commit-Queue: Nico Weber <thakis@chromium.org> Reviewed-by: 's avatarGeoff Lang <geofflang@chromium.org>
parent 61773640
//
// Copyright 2018 The ANGLE Project Authors. All rights reserved.
// Use of this source code is governed by a BSD-style license that can be
// found in the LICENSE file.
//
// aligned_memory: Defines ANGLE_FALLTHROUGH. Do not include in public headers.
//
#ifndef COMMON_ANGLE_FALLTHROUGH_H_
#define COMMON_ANGLE_FALLTHROUGH_H_
// When clang suggests inserting [[clang::fallthrough]], it first checks if
// it knows of a macro expanding to it, and if so suggests inserting the
// macro. This means that this macro must be used only in code internal
// to ANGLE, so that ANGLE's user code doesn't end up getting suggestions
// for ANGLE_FALLTHROUGH instead of the user-specific fallthrough macro.
// So do not include this header in any of ANGLE's public headers.
#if defined(__clang__)
#define ANGLE_FALLTHROUGH [[clang::fallthrough]]
#else
#define ANGLE_FALLTHROUGH
#endif
#endif // COMMON_ANGLE_FALLTHROUGH_H_
......@@ -911,6 +911,10 @@ IF YOU MODIFY THIS FILE YOU ALSO NEED TO RUN generate_parser.sh.
#elif defined(_MSC_VER)
#pragma warning(disable: 4244)
#endif
#if defined(__clang__)
// Flex uses `/*FALLTHROUGH*/` instead of dedicated statements.
#pragma GCC diagnostic ignored "-Wimplicit-fallthrough"
#endif
// Workaround for flex using the register keyword, deprecated in C++11.
#ifdef __cplusplus
......
......@@ -38,6 +38,10 @@ IF YOU MODIFY THIS FILE YOU ALSO NEED TO RUN generate_parser.sh.
#elif defined(_MSC_VER)
#pragma warning(disable: 4244)
#endif
#if defined(__clang__)
// Flex uses `/*FALLTHROUGH*/` instead of dedicated statements.
#pragma GCC diagnostic ignored "-Wimplicit-fallthrough"
#endif
// Workaround for flex using the register keyword, deprecated in C++11.
#ifdef __cplusplus
......
......@@ -105,6 +105,7 @@ class PullGradient : public TIntermTraverser
case EOpDFdy:
case EOpFwidth:
onGradient();
break;
default:
break;
}
......
......@@ -6,6 +6,7 @@
#include "compiler/translator/EmulatePrecision.h"
#include "common/angle_fallthrough.h"
#include "compiler/translator/FunctionLookup.h"
#include <memory>
......@@ -639,6 +640,7 @@ bool EmulatePrecision::visitAggregate(Visit visit, TIntermAggregate *node)
{
break;
}
ANGLE_FALLTHROUGH;
default:
TIntermNode *parent = getParentNode();
if (canRoundFloat(node->getType()) && ParentUsesResult(parent, node) &&
......
......@@ -1588,6 +1588,7 @@ bool TIntermBinary::hasConstantValue() const
{
return true;
}
break;
}
default:
break;
......
......@@ -4918,6 +4918,7 @@ TIntermTyped *TParseContext::createUnaryMath(TOperator op,
unaryOpError(loc, GetOperatorString(op), child->getCompleteString());
return nullptr;
}
break;
// Operators for built-ins are already type checked against their prototype.
default:
break;
......
......@@ -26,9 +26,9 @@ WHICH GENERATES THE GLSL ES LEXER (glslang_lex.cpp).
// Ignore errors in auto-generated code.
#if defined(__GNUC__)
#pragma GCC diagnostic ignored "-Wswitch-enum"
#pragma GCC diagnostic ignored "-Wunused-function"
#pragma GCC diagnostic ignored "-Wunused-variable"
#pragma GCC diagnostic ignored "-Wswitch-enum"
#elif defined(_MSC_VER)
#pragma warning(disable: 4005)
#pragma warning(disable: 4065)
......@@ -38,6 +38,9 @@ WHICH GENERATES THE GLSL ES LEXER (glslang_lex.cpp).
#pragma warning(disable: 4701)
#pragma warning(disable: 4702)
#endif
#if defined(__clang__)
#pragma GCC diagnostic ignored "-Wimplicit-fallthrough"
#endif
}
%{
......
......@@ -11,9 +11,9 @@
// Ignore errors in auto-generated code.
#if defined(__GNUC__)
#pragma GCC diagnostic ignored "-Wswitch-enum"
#pragma GCC diagnostic ignored "-Wunused-function"
#pragma GCC diagnostic ignored "-Wunused-variable"
#pragma GCC diagnostic ignored "-Wswitch-enum"
#elif defined(_MSC_VER)
#pragma warning(disable: 4005)
#pragma warning(disable: 4065)
......@@ -23,6 +23,9 @@
#pragma warning(disable: 4701)
#pragma warning(disable: 4702)
#endif
#if defined(__clang__)
#pragma GCC diagnostic ignored "-Wimplicit-fallthrough"
#endif
......
......@@ -1766,9 +1766,10 @@ void State::getFloatv(GLenum pname, GLfloat *params)
break;
case GL_SAMPLE_ALPHA_TO_ONE_EXT:
*params = static_cast<GLfloat>(mSampleAlphaToOne);
break;
case GL_COVERAGE_MODULATION_CHROMIUM:
params[0] = static_cast<GLfloat>(mCoverageModulation);
break;
params[0] = static_cast<GLfloat>(mCoverageModulation);
break;
default:
UNREACHABLE();
break;
......@@ -2051,6 +2052,7 @@ void State::getIntegerv(const Context *context, GLenum pname, GLint *params)
break;
case GL_SAMPLE_ALPHA_TO_ONE_EXT:
*params = static_cast<GLint>(mSampleAlphaToOne);
break;
case GL_COVERAGE_MODULATION_CHROMIUM:
*params = static_cast<GLint>(mCoverageModulation);
break;
......
......@@ -1032,6 +1032,7 @@ void StateManager11::syncState(const gl::Context *context, const gl::State::Dirt
{
invalidateCurrentValueAttrib(attribIndex);
}
break;
}
default:
break;
......
......@@ -250,6 +250,7 @@ void StateManager9::syncState(const gl::State &state, const gl::State::DirtyBits
{
mDirtyBits.set(DIRTY_BIT_DEPTH_BIAS);
}
break;
}
case gl::State::DIRTY_BIT_DEPTH_MASK:
if (state.getDepthStencilState().depthMask != mCurDepthStencilState.depthMask)
......
......@@ -80,12 +80,11 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum {internal_format}, Format::ID {angle_
{{
{switch_data}
default:
{{
static LoadFunctionMap emptyLoadFunctionsMap;
return emptyLoadFunctionsMap;
}}
break;
}}
// clang-format on
static LoadFunctionMap emptyLoadFunctionsMap;
return emptyLoadFunctionsMap;
}} // GetLoadFunctionsMap
......@@ -163,15 +162,21 @@ def parse_json(json_data):
if do_switch:
table_data += s + 'default:\n'
has_break_in_switch = False
if angle_format_unknown in angle_to_type_map:
table_data += s + ' return ' + unknown_func_name(internal_format) + ';\n'
load_functions_data += get_unknown_load_func(angle_to_type_map, internal_format)
else:
has_break_in_switch = True
table_data += s + ' break;\n'
if do_switch:
s = s[4:]
table_data += s + '}\n'
if has_break_in_switch:
# If the inner switch contains a break statement, add a break
# statement after the switch as well.
table_data += s + 'break;\n'
s = s[4:]
table_data += s + '}\n'
......
......@@ -1580,6 +1580,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_BGR565_ANGLEX:
{
......@@ -1590,6 +1591,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_BGR5_A1_ANGLEX:
return BGR5_A1_ANGLEX_to_default;
......@@ -1608,6 +1610,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_COMPRESSED_RG11_EAC:
{
......@@ -1618,6 +1621,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_COMPRESSED_RGB8_ETC2:
{
......@@ -1628,6 +1632,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_COMPRESSED_RGB8_LOSSY_DECODE_ETC2_ANGLE:
{
......@@ -1638,6 +1643,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_ETC2:
{
......@@ -1648,6 +1654,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_COMPRESSED_RGB8_PUNCHTHROUGH_ALPHA1_LOSSY_DECODE_ETC2_ANGLE:
{
......@@ -1658,6 +1665,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_COMPRESSED_RGBA8_ETC2_EAC:
{
......@@ -1668,6 +1676,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_COMPRESSED_RGBA_S3TC_DXT1_EXT:
return COMPRESSED_RGBA_S3TC_DXT1_EXT_to_default;
......@@ -1686,6 +1695,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_COMPRESSED_SIGNED_RG11_EAC:
{
......@@ -1696,6 +1706,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_COMPRESSED_SRGB8_ALPHA8_ETC2_EAC:
{
......@@ -1706,6 +1717,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_COMPRESSED_SRGB8_ETC2:
{
......@@ -1716,6 +1728,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_COMPRESSED_SRGB8_LOSSY_DECODE_ETC2_ANGLE:
{
......@@ -1726,6 +1739,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_ETC2:
{
......@@ -1736,6 +1750,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_COMPRESSED_SRGB8_PUNCHTHROUGH_ALPHA1_LOSSY_DECODE_ETC2_ANGLE:
{
......@@ -1746,6 +1761,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT:
return COMPRESSED_SRGB_ALPHA_S3TC_DXT1_EXT_to_default;
......@@ -1764,6 +1780,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_DEPTH32F_STENCIL8:
{
......@@ -1774,6 +1791,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_DEPTH_COMPONENT16:
{
......@@ -1784,6 +1802,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_DEPTH_COMPONENT24:
{
......@@ -1794,6 +1813,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_DEPTH_COMPONENT32F:
{
......@@ -1804,6 +1824,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_DEPTH_COMPONENT32_OES:
return DEPTH_COMPONENT32_OES_to_default;
......@@ -1816,6 +1837,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_ETC1_RGB8_OES:
{
......@@ -1826,6 +1848,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_LUMINANCE:
{
......@@ -1872,6 +1895,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_R16F:
{
......@@ -1882,6 +1906,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_R16I:
{
......@@ -1892,6 +1917,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_R16UI:
{
......@@ -1902,6 +1928,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_R16_EXT:
{
......@@ -1912,6 +1939,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_R16_SNORM_EXT:
{
......@@ -1922,6 +1950,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_R32F:
{
......@@ -1932,6 +1961,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_R32I:
{
......@@ -1942,6 +1972,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_R32UI:
{
......@@ -1952,6 +1983,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_R8:
{
......@@ -1962,6 +1994,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_R8I:
{
......@@ -1972,6 +2005,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_R8UI:
{
......@@ -1982,6 +2016,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_R8_SNORM:
{
......@@ -1992,6 +2027,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RG16F:
{
......@@ -2002,6 +2038,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RG16I:
{
......@@ -2012,6 +2049,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RG16UI:
{
......@@ -2022,6 +2060,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RG16_EXT:
{
......@@ -2032,6 +2071,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RG16_SNORM_EXT:
{
......@@ -2042,6 +2082,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RG32F:
{
......@@ -2052,6 +2093,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RG32I:
{
......@@ -2062,6 +2104,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RG32UI:
{
......@@ -2072,6 +2115,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RG8:
{
......@@ -2082,6 +2126,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RG8I:
{
......@@ -2092,6 +2137,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RG8UI:
{
......@@ -2102,6 +2148,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RG8_SNORM:
{
......@@ -2112,6 +2159,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RGB:
return RGB_to_default;
......@@ -2124,6 +2172,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RGB10_A2UI:
{
......@@ -2134,6 +2183,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RGB16F:
{
......@@ -2144,6 +2194,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RGB16I:
{
......@@ -2154,6 +2205,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RGB16UI:
{
......@@ -2164,6 +2216,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RGB16_EXT:
{
......@@ -2174,6 +2227,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RGB16_SNORM_EXT:
{
......@@ -2184,6 +2238,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RGB32F:
{
......@@ -2194,6 +2249,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RGB32I:
{
......@@ -2204,6 +2260,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RGB32UI:
{
......@@ -2214,6 +2271,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RGB565:
{
......@@ -2226,6 +2284,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RGB5_A1:
{
......@@ -2238,6 +2297,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RGB8:
{
......@@ -2248,6 +2308,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RGB8I:
{
......@@ -2258,6 +2319,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RGB8UI:
{
......@@ -2268,6 +2330,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RGB8_SNORM:
{
......@@ -2278,6 +2341,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RGB9_E5:
{
......@@ -2288,6 +2352,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RGBA:
return RGBA_to_default;
......@@ -2300,6 +2365,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RGBA16I:
{
......@@ -2310,6 +2376,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RGBA16UI:
{
......@@ -2320,6 +2387,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RGBA16_EXT:
{
......@@ -2330,6 +2398,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RGBA16_SNORM_EXT:
{
......@@ -2340,6 +2409,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RGBA32F:
{
......@@ -2350,6 +2420,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RGBA32I:
{
......@@ -2360,6 +2431,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RGBA32UI:
{
......@@ -2370,6 +2442,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RGBA4:
{
......@@ -2382,6 +2455,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RGBA8:
{
......@@ -2392,6 +2466,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RGBA8I:
{
......@@ -2402,6 +2477,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RGBA8UI:
{
......@@ -2412,6 +2488,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_RGBA8_SNORM:
{
......@@ -2422,6 +2499,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_SRGB8:
{
......@@ -2432,6 +2510,7 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_SRGB8_ALPHA8:
{
......@@ -2442,17 +2521,17 @@ LoadFunctionMap GetLoadFunctionsMap(GLenum internalFormat, Format::ID angleForma
default:
break;
}
break;
}
case GL_STENCIL_INDEX8:
return STENCIL_INDEX8_to_default;
default:
{
static LoadFunctionMap emptyLoadFunctionsMap;
return emptyLoadFunctionsMap;
}
break;
}
// clang-format on
static LoadFunctionMap emptyLoadFunctionsMap;
return emptyLoadFunctionsMap;
} // GetLoadFunctionsMap
......
......@@ -445,6 +445,7 @@ Error ValidateGetPlatformDisplayCommon(EGLenum platform,
"platform type of EGL_PLATFORM_ANGLE_TYPE_D3D9_ANGLE or "
"EGL_PLATFORM_ANGLE_TYPE_D3D9_ANGLE.";
}
break;
default:
break;
}
......@@ -2473,6 +2474,7 @@ Error ValidateSurfaceAttrib(const Display *display,
default:
return EglBadAttribute() << "Invalid multisample resolve type.";
}
break;
case EGL_SWAP_BEHAVIOR:
switch (value)
......@@ -2491,6 +2493,7 @@ Error ValidateSurfaceAttrib(const Display *display,
default:
return EglBadAttribute() << "Invalid swap behaviour.";
}
break;
default:
return EglBadAttribute() << "Invalid surface attribute.";
......
......@@ -3328,6 +3328,7 @@ bool ValidatePathParameterfCHROMIUM(Context *context, GLuint path, GLenum pname,
context->handleError(InvalidEnum() << "Invalid join style.");
return false;
}
break;
case GL_PATH_MITER_LIMIT_CHROMIUM:
if (value < 0.0f)
{
......
Markdown is supported
0% or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment