Title: [256491] trunk/Source/ThirdParty/ANGLE
- Revision
- 256491
- Author
- [email protected]
- Date
- 2020-02-12 16:31:41 -0800 (Wed, 12 Feb 2020)
Log Message
Multiple GCC 10 build failures in ANGLE
https://bugs.webkit.org/show_bug.cgi?id=207365
Patch by Michael Catanzaro <[email protected]> on 2020-02-12
Reviewed by Carlos Alberto Lopez Perez.
* changes.diff: Updated.
* include/platform/Platform.h: Add missing #include to get size_t.
* src/common/PackedEnums.h: Remove problematic const_casts.
Modified Paths
Diff
Modified: trunk/Source/ThirdParty/ANGLE/ChangeLog (256490 => 256491)
--- trunk/Source/ThirdParty/ANGLE/ChangeLog 2020-02-13 00:24:44 UTC (rev 256490)
+++ trunk/Source/ThirdParty/ANGLE/ChangeLog 2020-02-13 00:31:41 UTC (rev 256491)
@@ -1,3 +1,14 @@
+2020-02-12 Michael Catanzaro <[email protected]>
+
+ Multiple GCC 10 build failures in ANGLE
+ https://bugs.webkit.org/show_bug.cgi?id=207365
+
+ Reviewed by Carlos Alberto Lopez Perez.
+
+ * changes.diff: Updated.
+ * include/platform/Platform.h: Add missing #include to get size_t.
+ * src/common/PackedEnums.h: Remove problematic const_casts.
+
2020-02-12 Dean Jackson <[email protected]>
ANGLE has unused bison and glmark2 code
Modified: trunk/Source/ThirdParty/ANGLE/changes.diff (256490 => 256491)
--- trunk/Source/ThirdParty/ANGLE/changes.diff 2020-02-13 00:24:44 UTC (rev 256490)
+++ trunk/Source/ThirdParty/ANGLE/changes.diff 2020-02-13 00:31:41 UTC (rev 256491)
@@ -9908,3 +9908,31 @@
@@ -1 +0,0 @@
-212a9ef90e21a98ff57ca301a60c84cbeca7be28
\ No newline at end of file
+diff --git a/include/platform/Platform.h b/include/platform/Platform.h
+index b603ff9bad2..f4ec4f8837c 100644
+--- a/include/platform/Platform.h
++++ b/include/platform/Platform.h
+@@ -9,6 +9,7 @@
+ #ifndef ANGLE_PLATFORM_H
+ #define ANGLE_PLATFORM_H
+
++#include <stdlib.h>
+ #include <stdint.h>
+ #include <array>
+
+diff --git a/src/common/PackedEnums.h b/src/common/PackedEnums.h
+index bd5fc340dcc..63368e25dfe 100644
+--- a/src/common/PackedEnums.h
++++ b/src/common/PackedEnums.h
+@@ -83,10 +83,7 @@ class PackedEnumMap
+ // We use a for loop instead of range-for to work around a limitation in MSVC.
+ for (const InitPair *it = init.begin(); it != init.end(); ++it)
+ {
+- // This horrible const_cast pattern is necessary to work around a constexpr limitation.
+- // See https://stackoverflow.com/q/34199774/ . Note that it should be fixed with C++17.
+- const_cast<T &>(const_cast<const Storage &>(
+- mPrivateData)[static_cast<UnderlyingType>(it->first)]) = it->second;
++ mPrivateData[static_cast<UnderlyingType>(it->first)] = it->second;
+ }
+ }
+
Modified: trunk/Source/ThirdParty/ANGLE/include/platform/Platform.h (256490 => 256491)
--- trunk/Source/ThirdParty/ANGLE/include/platform/Platform.h 2020-02-13 00:24:44 UTC (rev 256490)
+++ trunk/Source/ThirdParty/ANGLE/include/platform/Platform.h 2020-02-13 00:31:41 UTC (rev 256491)
@@ -9,6 +9,7 @@
#ifndef ANGLE_PLATFORM_H
#define ANGLE_PLATFORM_H
+#include <stdlib.h>
#include <stdint.h>
#include <array>
Modified: trunk/Source/ThirdParty/ANGLE/src/common/PackedEnums.h (256490 => 256491)
--- trunk/Source/ThirdParty/ANGLE/src/common/PackedEnums.h 2020-02-13 00:24:44 UTC (rev 256490)
+++ trunk/Source/ThirdParty/ANGLE/src/common/PackedEnums.h 2020-02-13 00:31:41 UTC (rev 256491)
@@ -83,10 +83,7 @@
// We use a for loop instead of range-for to work around a limitation in MSVC.
for (const InitPair *it = init.begin(); it != init.end(); ++it)
{
- // This horrible const_cast pattern is necessary to work around a constexpr limitation.
- // See https://stackoverflow.com/q/34199774/ . Note that it should be fixed with C++17.
- const_cast<T &>(const_cast<const Storage &>(
- mPrivateData)[static_cast<UnderlyingType>(it->first)]) = it->second;
+ mPrivateData[static_cast<UnderlyingType>(it->first)] = it->second;
}
}
_______________________________________________
webkit-changes mailing list
[email protected]
https://lists.webkit.org/mailman/listinfo/webkit-changes