HomeFreeBSD

lang/spidermonkey185: unbreak build with Clang 6 (C++14 by default)

Description

lang/spidermonkey185: unbreak build with Clang 6 (C++14 by default)

jsapi.cpp:3988:16: error: cannot initialize return object of type 'JSIdArray *' with an rvalue of type 'bool'

return false;
       ^~~~~

jsarray.cpp:497:1: error: non-constant-expression cannot be narrowed from type 'intptr_t' (aka 'long') to 'uintptr_t' (aka 'unsigned long') in initializer list [-Wc++11-narrowing]
JS_DEFINE_CALLINFO_3(extern, BOOL, js_EnsureDenseArrayCapacity, CONTEXT, OBJECT, INT32,
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
./jsbuiltins.h:350:5: note: expanded from macro 'JS_DEFINE_CALLINFO_3'

_JS_DEFINE_CALLINFO(linkage, op,                                                              \
^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

./jsbuiltins.h:294:11: note: expanded from macro '_JS_DEFINE_CALLINFO'

{ (intptr_t) &name, argtypes, nanojit::ABI_FASTCALL, isPure, storeAccSet _JS_CI_NAME(name) }; \
  ^~~~~~~~~~~~~~~~

./nanojit/RegAlloc.h:189:24: error: non-constant-expression cannot be narrowed from type 'int' to 'nanojit::Register' (aka 'unsigned int') in initializer list [-Wc++11-narrowing]

Register r = { (sizeof(RegisterMask) == 4) ? lsbSet32(mask) : lsbSet64(mask) };
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

./nanojit/RegAlloc.h:189:24: note: insert an explicit cast to silence this issue

Register r = { (sizeof(RegisterMask) == 4) ? lsbSet32(mask) : lsbSet64(mask) };
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
               static_cast<Register>(                                       )

Reported by: pkg-fallout (blocks 4 ports)
Approved by: portmgr blanket

Details

Provenance
jbeichAuthored on
Parents
rP459998: net-p2p/verlihub: unbreak build with Clang 6 (C++14 by default)
Branches
Unknown
Tags
Unknown