You signed in with another tab or window. Reload to refresh your session.You signed out in another tab or window. Reload to refresh your session.You switched accounts on another tab or window. Reload to refresh your session.Dismiss alert
… (while bypassing #19150 by avoiding iculslocs ) will exhibit the following error:
../../deps/v8/src/objects/intl-objects.cc:733:19: error: no member named 'toUTF8String' in 'icu_58::UnicodeString'
category->toUTF8String(keyword).data());
~~~~~~~~ ^
1 error generated.
The above is probably due to std::string now being used directly by v8 with ICU, and this might fix it (note a comment that's now wrong).
diff --git a/tools/icu/icu-generic.gyp b/tools/icu/icu-generic.gyp
index 8f29369255..a50f12d794 100644
--- a/tools/icu/icu-generic.gyp+++ b/tools/icu/icu-generic.gyp@@ -35,9 +35,7 @@
'UCONFIG_NO_REGULAR_EXPRESSIONS=1',
'U_ENABLE_DYLOAD=0',
'U_STATIC_IMPLEMENTATION=1',
- # Don't need std::string in API.- # Also, problematic: <http://bugs.icu-project.org/trac/ticket/11333>- 'U_HAVE_STD_STRING=0',+ 'U_HAVE_STD_STRING=1',
# TODO(srl295): reenable following pending
# https://code.google.com/p/v8/issues/detail?id=3345
# (saves some space)
On some systems, there's also an issue in v8 which I worked around at srl295@384ab7d - introduced into v8 at v8/v8@99e8963 (and into node later) - there is a call to icu::toUCharPtr() passed as an input to a reinterpret_cast. This seems to unnecessarily tie the code to ICU 59+, and in any event ICU uses char16_t and not UChar as the type for C++ going forward. So toUCharPtr() is not something to call going forward.edit split this off to #19656
The text was updated successfully, but these errors were encountered:
- node and v8 did not call into std::string previously,
so that access was shut off.
- this fixes compilation for ICU 58.2 (backlevel) but may
be expressed in other versions also.
Fixes: #19151
PR-URL: #19624
Reviewed-By: Anna Henningsen <[email protected]>
Reviewed-By: Richard Lau <[email protected]>
Reviewed-By: Daniel Bevenius <[email protected]>
Reviewed-By: Tiancheng "Timothy" Gu <[email protected]>
… (while bypassing #19150 by avoiding iculslocs ) will exhibit the following error:
The above is probably due to std::string now being used directly by v8 with ICU, and this might fix it (note a comment that's now wrong).
On some systems, there's also an issue in v8 which I worked around at srl295@384ab7d - introduced into v8 at v8/v8@99e8963 (and into node later) - there is a call toedit split this off to #19656icu::toUCharPtr()
passed as an input to areinterpret_cast
. This seems to unnecessarily tie the code to ICU 59+, and in any event ICU useschar16_t
and notUChar
as the type for C++ going forward. SotoUCharPtr()
is not something to call going forward.The text was updated successfully, but these errors were encountered: