Closed Bug 934981 Opened 11 years ago Closed 11 years ago

Clang fails to cross-compile on Linux : "error: array type 'va_list' (aka '__builtin_va_list') is not assignable"

Categories

(Firefox Build System :: General, defect)

24 Branch
x86_64
Linux
defect
Not set
normal

Tracking

(Not tracked)

RESOLVED DUPLICATE of bug 931043

People

(Reporter: gk, Unassigned)

Details

User Agent: Mozilla/5.0 (Windows NT 6.1; rv:17.0) Gecko/20100101 Firefox/17.0 (Beta/Release)
Build ID: 20100101

Steps to reproduce:

I tried to cross-compile Firefox ESR 24 on my Linux for Mac OS X.


Actual results:

The build failed with:

/home/firefox64/x-tools/x86_64-apple-darwin10/bin/x86_64-apple-darwin10-clang++ -arch x86_64 -isysroot /usr/lib/apple/SDKs/MacOSX10.6.sdk -msse2 -o jsprf.o -c  -fvisibility=hidden -DNO_NSPR_10_SUPPORT -DEXPORT_JS_API -DJS_HAS_CTYPES -DDLL_PREFIX=\"lib\" -DDLL_SUFFIX=\".dylib\" -DUSE_ZLIB -Ictypes/libffi/include -I.  -I/home/firefox64/Downloads/mozilla-esr24/js/src/../../mfbt/double-conversion -I/home/firefox64/Downloads/mozilla-esr24/js/src/../../intl/icu/source/common -I/home/firefox64/Downloads/mozilla-esr24/js/src/../../intl/icu/source/i18n  -I/home/firefox64/Downloads/mozilla-esr24/js/src -I. -I./../../dist/include  -I/home/firefox64/Downloads/mozilla-esr24/obj-macos/dist/include/nspr      -I/home/firefox64/Downloads/mozilla-esr24/js/src -I/home/firefox64/Downloads/mozilla-esr24/js/src/assembler -I/home/firefox64/Downloads/mozilla-esr24/js/src/yarr  -fPIC -Qunused-arguments  -Qunused-arguments -Wall -Wpointer-arith -Woverloaded-virtual -Werror=return-type -Wtype-limits -Wempty-body -Werror=conversion-null -Wsign-compare -Wno-invalid-offsetof -Wno-c++0x-extensions -Wno-extended-offsetof -Wno-unknown-warning-option -Wno-return-type-c-linkage -Wno-mismatched-tags -fno-common -fno-rtti -ffunction-sections -fdata-sections -fno-exceptions -pthread -pipe  -DNDEBUG -DTRIMMED -g -O3 -fno-stack-protector -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1  -Qunused-arguments  -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MP -MF .deps/jsprf.o.pp  /home/firefox64/Downloads/mozilla-esr24/js/src/jsprf.cpp
jspropertytree.cpp
/home/firefox64/Downloads/mozilla-esr24/js/src/jsprf.cpp:611:9: error: array type 'va_list' (aka '__builtin_va_list') is not assignable
        VARARGS_ASSIGN(nas[cn].ap, ap);
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
/home/firefox64/Downloads/mozilla-esr24/js/src/jsprf.cpp:33:47: note: expanded from macro 'VARARGS_ASSIGN'
#define VARARGS_ASSIGN(foo, bar)        (foo) = (bar)
                                        ~~~~~ ^
1 error generated.
make[5]: *** [jsprf.o] Error 1
make[5]: *** Waiting for unfinished jobs....
make[5]: Leaving directory `/home/firefox64/Downloads/mozilla-esr24/obj-macos/js/src'
make[4]: *** [default] Error 2
make[4]: Leaving directory `/home/firefox64/Downloads/mozilla-esr24/obj-macos/js/src'
make[3]: *** [tier_js] Error 2
make[3]: Leaving directory `/home/firefox64/Downloads/mozilla-esr24/obj-macos'
make[2]: *** [default] Error 2
make[2]: Leaving directory `/home/firefox64/Downloads/mozilla-esr24/obj-macos'
make[1]: *** [realbuild] Error 2
make[1]: Leaving directory `/home/firefox64/Downloads/mozilla-esr24'
make: *** [build] Error 2




Expected results:

The build should compile (cross-compiling 32bit works). Configuring a native 64bit build sets
#define HAVE_VA_LIST_AS_ARRAY 1
btw., which is not happening when cross-compiling.
OS: Windows 7 → Linux
Hardware: x86 → x86_64
Status: UNCONFIRMED → RESOLVED
Closed: 11 years ago
Resolution: --- → DUPLICATE
Product: Core → Firefox Build System
You need to log in before you can comment on or make changes to this bug.