GeezerVison is showing github.com — deps: V8: cherry-pick 35888fee7bba · nodejs/node@f4a7ac5
File tree
Expand file treeCollapse file tree
Open diff view settings
Expand file treeCollapse file tree
Open diff view settings
Collapse file
Copy file name to clipboardExpand all lines: common.gypi +1-1Lines changed: 1 addition & 1 deletion | Original file line number | Diff line number | Diff line change |
|---|
|
36 | 36 |
|
37 | 37 | # Reset this number to 0 on major V8 upgrades. |
38 | 38 | # Increment by one for each non-official patch applied to deps/v8. |
39 | | - 'v8_embedder_string': '-node.17', |
| 39 | + 'v8_embedder_string': '-node.18', |
40 | 40 |
|
41 | 41 | ##### V8 defaults for Node.js ##### |
42 | 42 |
|
|
Collapse file
Copy file name to clipboardExpand all lines: deps/v8/src/base/macros.h +6-1Lines changed: 6 additions & 1 deletion | Original file line number | Diff line number | Diff line change |
|---|
@@ -173,14 +173,19 @@ namespace base { |
173 | 173 | // base::is_trivially_copyable will differ for these cases. |
174 | 174 | template <typename T> |
175 | 175 | struct is_trivially_copyable { |
176 | | -#if V8_CC_MSVC |
| 176 | +#if V8_CC_MSVC || (__GNUC__ == 12 && __GNUC_MINOR__ <= 2) |
177 | 177 | // Unfortunately, MSVC 2015 is broken in that std::is_trivially_copyable can |
178 | 178 | // be false even though it should be true according to the standard. |
179 | 179 | // (status at 2018-02-26, observed on the msvc waterfall bot). |
180 | 180 | // Interestingly, the lower-level primitives used below are working as |
181 | 181 | // intended, so we reimplement this according to the standard. |
182 | 182 | // See also https://developercommunity.visualstudio.com/content/problem/ |
183 | 183 | // 170883/msvc-type-traits-stdis-trivial-is-bugged.html. |
| 184 | + // |
| 185 | + // GCC 12.1 and 12.2 are broken too, they are shipped by some stable Linux |
| 186 | + // distributions, so the same polyfill is also used. |
| 187 | + // See |
| 188 | + // https://gcc.gnu.org/git/?p=gcc.git;a=commitdiff;h=aeba3e009b0abfccaf01797556445dbf891cc8dc |
184 | 189 | static constexpr bool value = |
185 | 190 | // Copy constructor is trivial or deleted. |
186 | 191 | (std::is_trivially_copy_constructible<T>::value || |
|