In file included from ../src/i18n.cc:8: In file included from /usr/local/include/unicode/brkiter.h:47: In file included from /usr/local/include/unicode/unistr.h:33: /usr/local/include/unicode/char16ptr.h:90:19: error: deleted function definitions are a C++11 extension [-Werror,-Wc++11-extensions] Char16Ptr() = delete; ^ /usr/local/include/unicode/char16ptr.h:198:24: error: deleted function definitions are a C++11 extension [-Werror,-Wc++11-extensions] ConstChar16Ptr() = delete; ^ CXX(target) /wrkdirs/usr/ports/lang/v8-devel/work/v8-3.27.7/out/native/obj.target/v8_base/src/incremental-marking.o ../src/i18n.cc:160:32: error: pasting formed 'u"Etc/GMT"', an invalid preprocessing token if (canonical_time_zone == UNICODE_STRING_SIMPLE("Etc/GMT")) { ^ /usr/local/include/unicode/unistr.h:141:35: note: expanded from macro 'UNICODE_STRING_SIMPLE' #define UNICODE_STRING_SIMPLE(cs) UNICODE_STRING(cs, -1) ^ /usr/local/include/unicode/unistr.h:125:82: note: expanded from macro 'UNICODE_STRING' # define UNICODE_STRING(cs, _length) icu::UnicodeString(TRUE, (const char16_t*)u ## cs, _length) ^ ../src/i18n.cc:160:32: error: use of undeclared identifier 'u' /usr/local/include/unicode/unistr.h:141:35: note: expanded from macro 'UNICODE_STRING_SIMPLE' #define UNICODE_STRING_SIMPLE(cs) UNICODE_STRING(cs, -1) ^ /usr/local/include/unicode/unistr.h:125:80: note: expanded from macro 'UNICODE_STRING' # define UNICODE_STRING(cs, _length) icu::UnicodeString(TRUE, (const char16_t*)u ## cs, _length) ^ /usr/local/include/unicode/unistr.h:125:80: note: expanded from macro 'u' ../src/i18n.cc:257:18: error: pasting formed 'u"currency"', an invalid preprocessing token if (style == UNICODE_STRING_SIMPLE("currency")) { ^ /usr/local/include/unicode/unistr.h:141:35: note: expanded from macro 'UNICODE_STRING_SIMPLE' #define UNICODE_STRING_SIMPLE(cs) UNICODE_STRING(cs, -1) ^ /usr/local/include/unicode/unistr.h:125:82: note: expanded from macro 'UNICODE_STRING' # define UNICODE_STRING(cs, _length) icu::UnicodeString(TRUE, (const char16_t*)u ## cs, _length) ^ ../src/i18n.cc:257:18: error: use of undeclared identifier 'u' /usr/local/include/unicode/unistr.h:141:35: note: expanded from macro 'UNICODE_STRING_SIMPLE' #define UNICODE_STRING_SIMPLE(cs) UNICODE_STRING(cs, -1) ^ /usr/local/include/unicode/unistr.h:125:80: note: expanded from macro 'UNICODE_STRING' # define UNICODE_STRING(cs, _length) icu::UnicodeString(TRUE, (const char16_t*)u ## cs, _length) ^ /usr/local/include/unicode/unistr.h:125:80: note: expanded from macro 'u' ../src/i18n.cc:273:22: error: pasting formed 'u"code"', an invalid preprocessing token if (display == UNICODE_STRING_SIMPLE("code")) { ^ /usr/local/include/unicode/unistr.h:141:35: note: expanded from macro 'UNICODE_STRING_SIMPLE' #define UNICODE_STRING_SIMPLE(cs) UNICODE_STRING(cs, -1) ^ /usr/local/include/unicode/unistr.h:125:82: note: expanded from macro 'UNICODE_STRING' # define UNICODE_STRING(cs, _length) icu::UnicodeString(TRUE, (const char16_t*)u ## cs, _length) ^ ../src/i18n.cc:273:22: error: use of undeclared identifier 'u' /usr/local/include/unicode/unistr.h:141:35: note: expanded from macro 'UNICODE_STRING_SIMPLE' #define UNICODE_STRING_SIMPLE(cs) UNICODE_STRING(cs, -1) ^ /usr/local/include/unicode/unistr.h:125:80: note: expanded from macro 'UNICODE_STRING' # define UNICODE_STRING(cs, _length) icu::UnicodeString(TRUE, (const char16_t*)u ## cs, _length) ^ /usr/local/include/unicode/unistr.h:125:80: note: expanded from macro 'u' ../src/i18n.cc:275:29: error: pasting formed 'u"name"', an invalid preprocessing token } else if (display == UNICODE_STRING_SIMPLE("name")) { ^ /usr/local/include/unicode/unistr.h:141:35: note: expanded from macro 'UNICODE_STRING_SIMPLE' #define UNICODE_STRING_SIMPLE(cs) UNICODE_STRING(cs, -1) ^ /usr/local/include/unicode/unistr.h:125:82: note: expanded from macro 'UNICODE_STRING' # define UNICODE_STRING(cs, _length) icu::UnicodeString(TRUE, (const char16_t*)u ## cs, _length) ^ ../src/i18n.cc:275:29: error: use of undeclared identifier 'u' /usr/local/include/unicode/unistr.h:141:35: note: expanded from macro 'UNICODE_STRING_SIMPLE' #define UNICODE_STRING_SIMPLE(cs) UNICODE_STRING(cs, -1) ^ /usr/local/include/unicode/unistr.h:125:80: note: expanded from macro 'UNICODE_STRING' # define UNICODE_STRING(cs, _length) icu::UnicodeString(TRUE, (const char16_t*)u ## cs, _length) ^ /usr/local/include/unicode/unistr.h:125:80: note: expanded from macro 'u' ../src/i18n.cc:284:25: error: pasting formed 'u"percent"', an invalid preprocessing token } else if (style == UNICODE_STRING_SIMPLE("percent")) { ^ /usr/local/include/unicode/unistr.h:141:35: note: expanded from macro 'UNICODE_STRING_SIMPLE' #define UNICODE_STRING_SIMPLE(cs) UNICODE_STRING(cs, -1) ^ /usr/local/include/unicode/unistr.h:125:82: note: expanded from macro 'UNICODE_STRING' # define UNICODE_STRING(cs, _length) icu::UnicodeString(TRUE, (const char16_t*)u ## cs, _length) ^ ../src/i18n.cc:284:25: error: use of undeclared identifier 'u' /usr/local/include/unicode/unistr.h:141:35: note: expanded from macro 'UNICODE_STRING_SIMPLE' #define UNICODE_STRING_SIMPLE(cs) UNICODE_STRING(cs, -1) ^ /usr/local/include/unicode/unistr.h:125:80: note: expanded from macro 'UNICODE_STRING' # define UNICODE_STRING(cs, _length) icu::UnicodeString(TRUE, (const char16_t*)u ## cs, _length) ^ /usr/local/include/unicode/unistr.h:125:80: note: expanded from macro 'u' ../src/i18n.cc:509:23: error: pasting formed 'u"upper"', an invalid preprocessing token if (case_first == UNICODE_STRING_SIMPLE("upper")) { ^ /usr/local/include/unicode/unistr.h:141:35: note: expanded from macro 'UNICODE_STRING_SIMPLE' #define UNICODE_STRING_SIMPLE(cs) UNICODE_STRING(cs, -1) ^ /usr/local/include/unicode/unistr.h:125:82: note: expanded from macro 'UNICODE_STRING' # define UNICODE_STRING(cs, _length) icu::UnicodeString(TRUE, (const char16_t*)u ## cs, _length) ^ ../src/i18n.cc:509:23: error: use of undeclared identifier 'u' /usr/local/include/unicode/unistr.h:141:35: note: expanded from macro 'UNICODE_STRING_SIMPLE' #define UNICODE_STRING_SIMPLE(cs) UNICODE_STRING(cs, -1) ^ /usr/local/include/unicode/unistr.h:125:80: note: expanded from macro 'UNICODE_STRING' # define UNICODE_STRING(cs, _length) icu::UnicodeString(TRUE, (const char16_t*)u ## cs, _length) ^ /usr/local/include/unicode/unistr.h:125:80: note: expanded from macro 'u' ../src/i18n.cc:511:30: error: pasting formed 'u"lower"', an invalid preprocessing token } else if (case_first == UNICODE_STRING_SIMPLE("lower")) { ^ /usr/local/include/unicode/unistr.h:141:35: note: expanded from macro 'UNICODE_STRING_SIMPLE' #define UNICODE_STRING_SIMPLE(cs) UNICODE_STRING(cs, -1) ^ /usr/local/include/unicode/unistr.h:125:82: note: expanded from macro 'UNICODE_STRING' # define UNICODE_STRING(cs, _length) icu::UnicodeString(TRUE, (const char16_t*)u ## cs, _length) ^ CXX(target) /wrkdirs/usr/ports/lang/v8-devel/work/v8-3.27.7/out/native/obj.target/v8_base/src/interface.o ../src/i18n.cc:511:30: error: use of undeclared identifier 'u' /usr/local/include/unicode/unistr.h:141:35: note: expanded from macro 'UNICODE_STRING_SIMPLE' #define UNICODE_STRING_SIMPLE(cs) UNICODE_STRING(cs, -1) ^ /usr/local/include/unicode/unistr.h:125:80: note: expanded from macro 'UNICODE_STRING' # define UNICODE_STRING(cs, _length) icu::UnicodeString(TRUE, (const char16_t*)u ## cs, _length) ^ /usr/local/include/unicode/unistr.h:125:80: note: expanded from macro 'u' ../src/i18n.cc:521:24: error: pasting formed 'u"base"', an invalid preprocessing token if (sensitivity == UNICODE_STRING_SIMPLE("base")) { ^ /usr/local/include/unicode/unistr.h:141:35: note: expanded from macro 'UNICODE_STRING_SIMPLE' #define UNICODE_STRING_SIMPLE(cs) UNICODE_STRING(cs, -1) ^ /usr/local/include/unicode/unistr.h:125:82: note: expanded from macro 'UNICODE_STRING' # define UNICODE_STRING(cs, _length) icu::UnicodeString(TRUE, (const char16_t*)u ## cs, _length) ^ ../src/i18n.cc:521:24: error: use of undeclared identifier 'u' /usr/local/include/unicode/unistr.h:141:35: note: expanded from macro 'UNICODE_STRING_SIMPLE' #define UNICODE_STRING_SIMPLE(cs) UNICODE_STRING(cs, -1) ^ /usr/local/include/unicode/unistr.h:125:80: note: expanded from macro 'UNICODE_STRING' # define UNICODE_STRING(cs, _length) icu::UnicodeString(TRUE, (const char16_t*)u ## cs, _length) ^ /usr/local/include/unicode/unistr.h:125:80: note: expanded from macro 'u' ../src/i18n.cc:523:31: error: pasting formed 'u"accent"', an invalid preprocessing token } else if (sensitivity == UNICODE_STRING_SIMPLE("accent")) { ^ /usr/local/include/unicode/unistr.h:141:35: note: expanded from macro 'UNICODE_STRING_SIMPLE' #define UNICODE_STRING_SIMPLE(cs) UNICODE_STRING(cs, -1) ^ /usr/local/include/unicode/unistr.h:125:82: note: expanded from macro 'UNICODE_STRING' # define UNICODE_STRING(cs, _length) icu::UnicodeString(TRUE, (const char16_t*)u ## cs, _length) ^ fatal error: too many errors emitted, stopping now [-ferror-limit=] 20 errors generated. build log: http://sprunge.us/geSj
Either drop -Werror, pass -Wno-error=c++11-extensions (Clang-only) or switch to USES=compiler:c++11-lib + USE_CXXSTD=gnu++11.
Or add USES=localbase for -isystem to hide headers under /usr/local/include from -Werror.
Fixed by https://reviews.freebsd.org/differential/changeset/?ref=317293 and the following commit.
A commit references this bug: Author: jbeich Date: Thu Sep 14 21:46:30 UTC 2017 New revision: 449857 URL: https://svnweb.freebsd.org/changeset/ports/449857 Log: lang/v8-devel: unbreak with ICU >= 59 In file included from ../src/i18n.cc:8: In file included from /usr/local/include/unicode/brkiter.h:47: In file included from /usr/local/include/unicode/unistr.h:33: /usr/local/include/unicode/char16ptr.h:90:19: error: deleted function definitions are a C++11 extension [-Werror,-Wc++11-extensions] Char16Ptr() = delete; ^ /usr/local/include/unicode/char16ptr.h:198:24: error: deleted function definitions are a C++11 extension [-Werror,-Wc++11-extensions] ConstChar16Ptr() = delete; ^ ../src/runtime.cc:14238:3: error: no member named 'Normalizer' in namespace 'icu'; did you mean 'UNormalizer2'? icu::Normalizer::normalize(u_value, normalizationForms[form_id], 0, ^~~~~~~~~~~~~~~ UNormalizer2 /usr/local/include/unicode/unorm2.h:119:29: note: 'UNormalizer2' declared here typedef struct UNormalizer2 UNormalizer2; /**< C typedef for struct UNormalizer2. @stable ICU 4.4 */ ^ ../src/runtime.cc:14238:8: error: incomplete type 'UNormalizer2' named in nested name specifier icu::Normalizer::normalize(u_value, normalizationForms[form_id], 0, ~~~~~^~~~~~~~~~~~ /usr/local/include/unicode/unorm2.h:118:8: note: forward declaration of 'UNormalizer2' struct UNormalizer2; ^ PR: 222269 Changes: head/lang/v8-devel/Makefile head/lang/v8-devel/files/patch-src_runtime.cc