summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
Diffstat (limited to 'www-client/chromium/files/chromium-79-gcc-alignas.patch')
-rw-r--r--www-client/chromium/files/chromium-79-gcc-alignas.patch40
1 files changed, 0 insertions, 40 deletions
diff --git a/www-client/chromium/files/chromium-79-gcc-alignas.patch b/www-client/chromium/files/chromium-79-gcc-alignas.patch
index f7f1fe7ac5bc..1e031e2a6f23 100644
--- a/www-client/chromium/files/chromium-79-gcc-alignas.patch
+++ b/www-client/chromium/files/chromium-79-gcc-alignas.patch
@@ -1,46 +1,6 @@
Re-use chromium alignas workaround in protobuf.
---
-diff --git a/third_party/protobuf/src/google/protobuf/port_def.inc b/third_party/protobuf/src/google/protobuf/port_def.inc
-index f1bd85d..9c204a1 100644
---- a/third_party/protobuf/src/google/protobuf/port_def.inc
-+++ b/third_party/protobuf/src/google/protobuf/port_def.inc
-@@ -528,6 +528,35 @@ PROTOBUF_EXPORT_TEMPLATE_TEST(DEFAULT, __declspec(dllimport));
- #undef IN
- #endif // _MSC_VER
-
-+// Specify memory alignment for structs, classes, etc.
-+// Use like:
-+// class PROTOBUF_ALIGNAS(16) MyClass { ... }
-+// PROTOBUF_ALIGNAS(16) int array[4];
-+//
-+// In most places you can use the C++11 keyword "alignas", which is preferred.
-+//
-+// But compilers have trouble mixing __attribute__((...)) syntax with
-+// alignas(...) syntax.
-+//
-+// Doesn't work in clang or gcc:
-+// struct alignas(16) __attribute__((packed)) S { char c; };
-+// Works in clang but not gcc:
-+// struct __attribute__((packed)) alignas(16) S2 { char c; };
-+// Works in clang and gcc:
-+// struct alignas(16) S3 { char c; } __attribute__((packed));
-+//
-+// There are also some attributes that must be specified *before* a class
-+// definition: visibility (used for exporting functions/classes) is one of
-+// these attributes. This means that it is not possible to use alignas() with a
-+// class that is marked as exported.
-+#if defined(_MSC_VER)
-+#define PROTOBUF_ALIGNAS(byte_alignment) __declspec(align(byte_alignment))
-+#elif defined(__GNUC__)
-+#define PROTOBUF_ALIGNAS(byte_alignment) __attribute__((aligned(byte_alignment)))
-+#else
-+#define PROTOBUF_ALIGNAS(byte_alignment) alignas(byte_alignment)
-+#endif
-+
- #if defined(__clang__)
- #pragma clang diagnostic push
- // TODO(gerbens) ideally we cleanup the code. But a cursory try shows many
diff --git a/third_party/protobuf/src/google/protobuf/arena.h b/third_party/protobuf/src/google/protobuf/arena.h
index dedc221..a8515ce 100644
--- a/third_party/protobuf/src/google/protobuf/arena.h