MidnightBSD Magus

games/oolite

Trade and combat space simulator, clone of Elite

Flavor Version Run OSVersion Arch License Restricted Status
1.88_1 522 3.0 i386 CC-BY-NC-SA-3.0 gpl2 zlib 0 fail

Events

Machine Type Time Message
m3032 info 2023-03-26 18:00:37.884234 Test Started
m3032 fail 2023-03-26 18:02:03.35154 make build returned non-zero: 1
m3032 fail 2023-03-26 18:02:03.431012 Test complete.

Log

===>  Building for oolite-1.88_1
gmake[1]: Entering directory '/magus/work/usr/mports/games/oolite/work/oolite-source-1.88'
gmake[1]: git: No such file or directory
gmake[1]: git: No such file or directory
gmake -f libjs.make debug=no
gmake[2]: Entering directory '/magus/work/usr/mports/games/oolite/work/oolite-source-1.88'

Configuring Javascript library...

mkdir -p deps/mozilla/js/src/build-release
cd deps/mozilla/js/src/build-release && ../configure --disable-shared-js --enable-threadsafe --with-system-nspr --disable-tests --enable-trace-jscalls
creating cache ./config.cache
checking host system type... i386-unknown-midnightbsd3.0.0
checking target system type... i386-unknown-midnightbsd3.0.0
checking build system type... i386-unknown-midnightbsd3.0.0
checking for gawk... no
checking for mawk... no
checking for nawk... nawk
checking for perl5... no
checking for perl... /usr/bin/perl
checking for gcc... cc
checking whether the C compiler (cc -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -fuse-ld=) works... yes
checking whether the C compiler (cc -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -fuse-ld=) is a cross-compiler... no
checking whether we are using GNU C... yes
checking whether cc accepts -g... yes
checking for c++... c++
checking whether the C++ compiler (c++ -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fuse-ld=) works... yes
checking whether the C++ compiler (c++ -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fuse-ld=) is a cross-compiler... no
checking whether we are using GNU C++... yes
checking whether c++ accepts -g... yes
checking for ranlib... ranlib
checking for as... /usr/bin/as
checking for ar... ar
checking for ld... ld
checking for strip... strip
checking for windres... no
checking whether cc understands -c and -o together... yes
checking how to run the C preprocessor... cpp
checking how to run the C++ preprocessor... c++ -E
checking for sb-conf... no
checking for ve... no
checking for a BSD compatible install... /usr/bin/install -c
checking whether ln -s works... yes
checking for minimum required perl version >= 5.006... 5.036000
checking for full perl installation... yes
checking for python2.7... (cached) /usr/local/bin/python3.9
checking for doxygen... :
checking for autoconf... :
checking for unzip... /usr/bin/unzip
checking for zip... /usr/local/bin/zip
checking for makedepend... no
checking for xargs... /usr/bin/xargs
checking for gmake... /usr/local/bin/gmake
checking for X... no
checking whether the compiler supports -Wno-invalid-offsetof... yes
checking whether the compiler supports -Wno-variadic-macros... yes
checking whether the compiler supports -Werror=return-type... yes
checking whether ld has archive extraction flags... yes
checking that static assertion macros used in autoconf tests work... yes
checking for 64-bit OS... no
checking for Python version >= 2.5... yes
checking for ANSI C header files... yes
checking for working const... yes
checking for mode_t... yes
checking for off_t... yes
checking for pid_t... yes
checking for size_t... yes
checking for __stdcall... yes
checking for ssize_t... yes
checking for st_blksize in struct stat... yes
checking for siginfo_t... yes
checking for stdint.h... yes
checking for the size of void*... 4
checking for the alignment of void*... 4
checking for the size of double... 8
checking for int16_t... yes
checking for int32_t... yes
checking for int64_t... yes
checking for int64... no
checking for uint... yes
checking for uint_t... no
checking for uint16_t... yes
checking for uname.domainname... no
checking for uname.__domainname... no
checking for visibility(hidden) attribute... yes
checking for visibility(default) attribute... yes
checking for visibility pragma support... yes
checking For gcc visibility bug with class-level attributes (GCC bug 26905)... no
checking For x86_64 gcc visibility bug with builtins (GCC bug 20297)... no
test: MidnightBSD: unexpected operator
checking for __force_align_arg_pointer__ attribute... yes
checking for dirent.h that defines DIR... yes
checking for opendir in -ldir... no
checking for sys/byteorder.h... no
checking for compat.h... no
checking for getopt.h... yes
checking for sys/bitypes.h... no
checking for memory.h... yes
checking for unistd.h... yes
checking for gnu/libc-version.h... no
checking for nl_types.h... yes
checking for malloc.h... yes
checking for X11/XKBlib.h... no
checking for io.h... no
checking for sys/statvfs.h... yes
checking for sys/statfs.h... no
checking for sys/vfs.h... no
checking for sys/mount.h... yes
checking for sys/quota.h... no
checking for linux/quota.h... no
checking for mmintrin.h... yes
checking for new... yes
checking for sys/cdefs.h... yes
checking for linux/perf_event.h... no
checking for gethostbyname_r in -lc_r... no
checking for library containing dlopen... none required
checking for dlfcn.h... yes
checking for dladdr... yes
checking for socket in -lsocket... no
checking for ARM SIMD support in compiler... no
checking for ARM NEON support in compiler... no
checking for pthread_create in -lpthreads... no
checking for pthread_create in -lpthread... yes
checking whether cc accepts -pthread... yes
checking whether mmap() sees write()s... yes
checking whether cc needs -traditional... no
checking for 8-bit clean memcmp... yes
checking for fchmod... yes
checking for flockfile... yes
checking for getc_unlocked... yes
checking for _getc_nolock... no
checking for getpagesize... yes
checking for lchown... yes
checking for localtime_r... yes
checking for lstat64... no
checking for memmove... yes
checking for random... yes
checking for rint... no
checking for sbrk... yes
checking for snprintf... yes
checking for stat64... no
checking for statvfs... yes
checking for statvfs64... no
checking for strerror... yes
checking for strtok_r... yes
checking for truncate64... no
checking for clock_gettime(CLOCK_MONOTONIC) and -lrt... yes
checking for wcrtomb... yes
checking for mbrtowc... yes
checking for res_ninit()... no
checking for gnu_get_libc_version()... no
checking for iconv in -lc... yes
checking for iconv()... yes
checking for iconv() with const input... no
checking for an implementation of va_copy()... yes
checking for an implementation of __va_copy()... yes
checking whether va_lists can be copied by value... yes
checking for gcc 3.0 ABI... yes
checking for C++ "explicit" keyword... yes
checking for C++ "typename" keyword... yes
checking for modern C++ template specialization syntax support... yes
checking whether partial template specialization works... yes
checking whether operators must be re-defined for templates derived from templates... no
checking whether we need to cast a derived template to pass as its base class... no
checking whether the compiler can resolve const ambiguities for templates... yes
checking whether the C++ "using" keyword can change access... yes
checking whether the C++ "using" keyword resolves ambiguity... yes
checking for "std::" namespace... yes
checking whether standard template operator!=() is ambiguous... unambiguous
checking for C++ reinterpret_cast... yes
checking for C++ dynamic_cast to void*... yes
checking whether C++ requires implementation of unused virtual methods... no
checking for trouble comparing to zero near std::operator!=()... no
checking for __thread keyword for TLS variables... yes
checking for malloc.h... (cached) yes
checking for strndup... yes
checking for posix_memalign... yes
checking for memalign... yes
checking for valloc... yes
checking for __attribute__((always_inline))... no
checking for __attribute__((malloc))... yes
checking for __attribute__((warn_unused_result))... yes
checking for __attribute__((noreturn))... yes
checking for LC_MESSAGES... yes
checking for localeconv... yes
checking for nspr-config... /usr/local/bin/nspr-config
checking for NSPR - version >= 4.7.0... yes
checking for valid optimization flags... yes
checking for __cxa_demangle... yes
checking for unwind.h... no
checking for gcc -pipe support... no
checking whether C compiler supports -fprofile-generate... yes
checking whether C++ compiler has -pedantic long long bug... no
checking for correct temporary object destruction order... yes
checking for correct overload resolution with const and templates... no
checking for tm_zone tm_gmtoff in struct tm... yes
checking for posix_fallocate... yes
checking for setlocale... yes
checking for localeconv... (cached) yes
creating js-confdefs.h
==== js-confdefs.h =================================
/* List of defines generated by configure. Included with preprocessor flag,
 * -include, to avoid long list of -D defines on the compile command-line.
 * Do not edit.
 */

#ifndef _JS_CONFDEFS_H_
#define _JS_CONFDEFS_H_

#define AVMPLUS_IA32 1
#define AVMPLUS_UNIX 1
#define CPP_THROW_NEW throw()
#define D_INO d_ino
#define EDITLINE 1
#define FEATURE_NANOJIT 1
#define HAVE_CLOCK_MONOTONIC 1
#define HAVE_CPP_ACCESS_CHANGING_USING 1
#define HAVE_CPP_AMBIGUITY_RESOLVING_USING 1
#define HAVE_CPP_DYNAMIC_CAST_TO_VOID_PTR 1
#define HAVE_CPP_EXPLICIT 1
#define HAVE_CPP_MODERN_SPECIALIZE_TEMPLATE_SYNTAX 1
#define HAVE_CPP_NAMESPACE_STD 1
#define HAVE_CPP_NEW_CASTS 1
#define HAVE_CPP_PARTIAL_SPECIALIZATION 1
#define HAVE_CPP_TYPENAME 1
#define HAVE_CPP_UNAMBIGUOUS_STD_NOTEQUAL 1
#define HAVE_DIRENT_H 1
#define HAVE_DLADDR 1
#define HAVE_DLOPEN 1
#define HAVE_FCHMOD 1
#define HAVE_FLOCKFILE 1
#define HAVE_GETC_UNLOCKED 1
#define HAVE_GETOPT_H 1
#define HAVE_GETPAGESIZE 1
#define HAVE_I18N_LC_MESSAGES 1
#define HAVE_ICONV 1
#define HAVE_INT16_T 1
#define HAVE_INT32_T 1
#define HAVE_INT64_T 1
#define HAVE_LCHOWN 1
#define HAVE_LOCALECONV 1
#define HAVE_LOCALECONV 1
#define HAVE_LOCALTIME_R 1
#define HAVE_MALLOC_H 1
#define HAVE_MBRTOWC 1
#define HAVE_MEMALIGN 1
#define HAVE_MEMMOVE 1
#define HAVE_MEMORY_H 1
#define HAVE_MMINTRIN_H 1
#define HAVE_NL_TYPES_H 1
#define HAVE_POSIX_FALLOCATE 1
#define HAVE_POSIX_MEMALIGN 1
#define HAVE_RANDOM 1
#define HAVE_SBRK 1
#define HAVE_SETLOCALE 1
#define HAVE_SIGINFO_T 1
#define HAVE_SNPRINTF 1
#define HAVE_SSIZE_T 1
#define HAVE_STATVFS 1
#define HAVE_STDCALL 1
#define HAVE_STRERROR 1
#define HAVE_STRNDUP 1
#define HAVE_STRTOK_R 1
#define HAVE_ST_BLKSIZE 1
#define HAVE_SYS_CDEFS_H 1
#define HAVE_SYS_MOUNT_H 1
#define HAVE_SYS_STATVFS_H 1
#define HAVE_THREAD_TLS_KEYWORD 1
#define HAVE_TM_ZONE_TM_GMTOFF 1
#define HAVE_UINT 1
#define HAVE_UINT16_T 1
#define HAVE_UNISTD_H 1
#define HAVE_VALLOC 1
#define HAVE_VA_COPY 1
#define HAVE_VISIBILITY_ATTRIBUTE 1
#define HAVE_VISIBILITY_HIDDEN_ATTRIBUTE 1
#define HAVE_WCRTOMB 1
#define HAVE___CXA_DEMANGLE 1
#define JS_ALIGN_OF_POINTER 4
#define JS_BITS_PER_WORD_LOG2 5
#define JS_BYTES_PER_DOUBLE 8
#define JS_BYTES_PER_WORD 4
#define JS_CPU_X86 1
#define JS_HAVE_STDINT_H 1
#define JS_METHODJIT 1
#define JS_MONOIC 1
#define JS_NUNBOX32 1
#define JS_POLYIC 1
#define JS_POLYIC_TYPED_ARRAY 1
#define JS_THREADSAFE 1
#define JS_TRACER 1
#define MALLOC_H 
#define MOZ_DLL_SUFFIX ".so"
#define MOZ_TRACE_JSCALLS 1
#define NEW_H 
#define NS_ALWAYS_INLINE 
#define NS_ATTR_MALLOC __attribute__((malloc))
#define NS_NORETURN __attribute__((noreturn))
#define NS_WARN_UNUSED_RESULT __attribute__((warn_unused_result))
#define STATIC_EXPORTABLE_JS_API 1
#define STDC_HEADERS 1
#define UNIX_ASYNC_DNS 1
#define VA_COPY va_copy
#define XP_UNIX 1
#define X_DISPLAY_MISSING 1
#define _REENTRANT 1
#define _THREAD_SAFE 1

#endif /* _JS_CONFDEFS_H_ */

Creating directory shell
Creating directory lirasm
Creating directory jsapi-tests
Creating directory tests
Creating directory config
Creating directory config/mkdepend
Creating directory editline
creating Makefile
creating shell/Makefile
creating lirasm/Makefile
creating jsapi-tests/Makefile
creating tests/Makefile
creating config/Makefile
creating config/mkdepend/Makefile
creating editline/Makefile
updating cache ./config.cache
creating ./config.status
creating config/autoconf.mk
creating js-config.h
invoking make to create js-config script
gmake[3]: Entering directory '/magus/work/usr/mports/games/oolite/work/oolite-source-1.88/deps/mozilla/js/src/build-release'
rm -f js-config.tmp
sed < ../js-config.in > js-config.tmp \
-e 's|@prefix@|/usr/local|' \
-e 's|@exec_prefix@|/usr/local|' \
-e 's|@includedir@|/usr/local/include|' \
-e 's|@libdir@|/usr/local/lib|' \
-e 's|@MOZILLA_VERSION@||' \
-e 's|@LIBRARY_NAME@|mozjs|' \
-e 's|@NSPR_CFLAGS@|-I/usr/local/include/nspr|' \
-e 's|@JS_CONFIG_LIBS@|-L/usr/local/lib -lplds4 -lplc4 -lnspr4 -pthread -ldl  -lm |' \
-e 's|@MOZ_JS_LIBS@|-L/usr/local/lib -lmozjs|' \
&& mv js-config.tmp js-config && chmod +x js-config
gmake[3]: Leaving directory '/magus/work/usr/mports/games/oolite/work/oolite-source-1.88/deps/mozilla/js/src/build-release'
touch deps/mozilla/js/src/build-release/config_stamp

Building Javascript library...

gmake -C deps/mozilla/js/src/build-release 
gmake[3]: Entering directory '/magus/work/usr/mports/games/oolite/work/oolite-source-1.88/deps/mozilla/js/src/build-release'
gmake export
gmake[4]: Entering directory '/magus/work/usr/mports/games/oolite/work/oolite-source-1.88/deps/mozilla/js/src/build-release'
gmake -C config/ nsinstall
gmake[5]: Entering directory '/magus/work/usr/mports/games/oolite/work/oolite-source-1.88/deps/mozilla/js/src/build-release/config'
nsinstall.c
cc -o host_nsinstall.o -c  -Wall -W -Wno-unused -Wpointer-arith -Wcast-align -W -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -DXP_UNIX -O3  -DUNICODE -D_UNICODE  -I../../config -I. -I../dist/include -I../dist/include/nsprpub  -I/usr/local/include/nspr   -I/usr/local/include/nspr ../../config/nsinstall.c
pathsub.c
cc -o host_pathsub.o -c  -Wall -W -Wno-unused -Wpointer-arith -Wcast-align -W -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -DXP_UNIX -O3  -DUNICODE -D_UNICODE  -I../../config -I. -I../dist/include -I../dist/include/nsprpub  -I/usr/local/include/nspr   -I/usr/local/include/nspr ../../config/pathsub.c
../../config/pathsub.c:131:27: warning: unused parameter 'dir' [-Wunused-parameter]
ino2name(ino_t ino, char *dir)
                          ^
1 warning generated.
cc -o nsinstall  -Wall -W -Wno-unused -Wpointer-arith -Wcast-align -W -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -DXP_UNIX -O3  -DUNICODE -D_UNICODE -fuse-ld= host_nsinstall.o host_pathsub.o  
gmake[5]: Leaving directory '/magus/work/usr/mports/games/oolite/work/oolite-source-1.88/deps/mozilla/js/src/build-release/config'
Creating /magus/work/usr/mports/games/oolite/work/oolite-source-1.88/deps/mozilla/js/src/build-release/.deps
gmake[5]: Entering directory '/magus/work/usr/mports/games/oolite/work/oolite-source-1.88/deps/mozilla/js/src/build-release/config'
rm -f nfspwd
cp ../../config/nfspwd.pl nfspwd
chmod +x nfspwd
/magus/work/usr/mports/games/oolite/work/oolite-source-1.88/deps/mozilla/js/src/build-release/config/nsinstall -R nsinstall ../dist/bin
gmake[5]: Leaving directory '/magus/work/usr/mports/games/oolite/work/oolite-source-1.88/deps/mozilla/js/src/build-release/config'
gmake[5]: Entering directory '/magus/work/usr/mports/games/oolite/work/oolite-source-1.88/deps/mozilla/js/src/build-release/editline'
Creating /magus/work/usr/mports/games/oolite/work/oolite-source-1.88/deps/mozilla/js/src/build-release/editline/.deps
gmake[5]: Leaving directory '/magus/work/usr/mports/games/oolite/work/oolite-source-1.88/deps/mozilla/js/src/build-release/editline'
gmake[5]: Entering directory '/magus/work/usr/mports/games/oolite/work/oolite-source-1.88/deps/mozilla/js/src/build-release/shell'
Creating /magus/work/usr/mports/games/oolite/work/oolite-source-1.88/deps/mozilla/js/src/build-release/shell/.deps
gmake[5]: Leaving directory '/magus/work/usr/mports/games/oolite/work/oolite-source-1.88/deps/mozilla/js/src/build-release/shell'
c++  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1  -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS -I/usr/local/include/nspr -o jscpucfg ../jscpucfg.cpp
jskwgen.cpp
c++ -o host_jskwgen.o -c  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr -I/usr/local/include/nspr ../jskwgen.cpp
./jscpucfg > jsautocfg.tmp
mv jsautocfg.tmp jsautocfg.h
c++ -o host_jskwgen  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr host_jskwgen.o  
./host_jskwgen /magus/work/usr/mports/games/oolite/work/oolite-source-1.88/deps/mozilla/js/src/build-release/jsautokw.h
/magus/work/usr/mports/games/oolite/work/oolite-source-1.88/deps/mozilla/js/src/build-release/config/nsinstall -R -m 644 js-config.h jsautocfg.h /magus/work/usr/mports/games/oolite/work/oolite-source-1.88/deps/mozilla/js/src/build-release/jsautokw.h ../js.msg ../jsanalyze.h ../jsapi.h ../jsarray.h ../jsarena.h ../jsatom.h ../jsbit.h ../jsbool.h ../jsclist.h ../jsclone.h ../jscntxt.h ../jscompat.h ../jsdate.h ../jsdbgapi.h ../jsdhash.h ../jsdtoa.h ../jsemit.h ../jsfun.h ../jsfriendapi.h ../jsgc.h ../jscell.h ../jsgcchunk.h ../jsgcstats.h ../jscompartment.h ../jshash.h ../jsinterp.h ../jsinttypes.h ../jsiter.h ../jslock.h ../jslong.h ../jsmath.h ../jsobj.h ../jsobjinlines.h ../json.h ../jsopcode.tbl ../jsopcode.h ../jsopcodeinlines.h ../jsotypes.h ../jsparse.h ../jsproxy.h ../jsprf.h ../jsprobes.h ../jspropertycache.h ../jspropertycacheinlines.h ../jspropertytree.h ../jsproto.tbl ../jsprvtd.h ../jspubtd.h ../jsreflect.h ../jsregexp.h ../jsscan.h ../jsscope.h ../jsscript.h ../jsscriptinlines.h ../jsstaticcheck.h ../jsstdint.h ../jsstr.h ../jstracer.h ../jshotloop.h ../jstypedarray.h ../jstypes.h ../jsutil.h ../jsvector.h ../jstl.h ../jshashtable.h ../jsversion.h ../jswrapper.h ../jsxdrapi.h ../jsxml.h ../jsval.h ../jsvalue.h ../prmjtime.h ../jsbuiltins.h ../nanojit/Assembler.h ../nanojit/Allocator.h ../nanojit/CodeAlloc.h ../nanojit/Containers.h ../nanojit/LIR.h ../nanojit/LIRopcode.tbl ../nanojit/avmplus.h ../nanojit/Fragmento.h ../nanojit/Native.h ../nanojit/NativeCommon.h ../nanojit/Nativei386.h ../nanojit/njconfig.h ../nanojit/njcpudetect.h ../nanojit/RegAlloc.h ../nanojit/nanojit.h ../nanojit/VMPI.h ../tracejit/Writer.h ../perf/jsperf.h ./dist/include
mkdir -p nanojit
gmake[4]: Leaving directory '/magus/work/usr/mports/games/oolite/work/oolite-source-1.88/deps/mozilla/js/src/build-release'
gmake libs
gmake[4]: Entering directory '/magus/work/usr/mports/games/oolite/work/oolite-source-1.88/deps/mozilla/js/src/build-release'
jsoplengen.cpp
c++ -o host_jsoplengen.o -c  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr -I/usr/local/include/nspr ../jsoplengen.cpp
/usr/local/bin/python3.9 ../imacro_asm.py ../imacros.jsasm /magus/work/usr/mports/games/oolite/work/oolite-source-1.88/deps/mozilla/js/src/build-release/imacros.c.out
c++ -o host_jsoplengen  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr host_jsoplengen.o  
./host_jsoplengen /magus/work/usr/mports/games/oolite/work/oolite-source-1.88/deps/mozilla/js/src/build-release/jsautooplen.h
jsanalyze.cpp
c++ -o jsanalyze.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsanalyze.pp ../jsanalyze.cpp
jsapi.cpp
jsarena.cpp
c++ -o jsapi.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsapi.pp ../jsapi.cpp
c++ -o jsarena.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsarena.pp ../jsarena.cpp
jsarray.cpp
c++ -o jsarray.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsarray.pp ../jsarray.cpp
jsatom.cpp
c++ -o jsatom.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsatom.pp ../jsatom.cpp
In file included from ../jsarena.cpp:49:
In file included from ../jsbit.h:44:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
In file included from ../jsatom.cpp:47:
../jsutil.h:    if (!memory)
304:    ^
2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsanalyze.cpp:40:
In file included from ../jsanalyze.h:45:
In file included from ../jscntxt.h:55:
In file included from ../jsprvtd.h:57:
In file included from ../jspubtd.h:47:
In file included from ../jsval.h:48:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsarray.cpp:84:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsapi.cpp:52:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
1 warning generated.
jsbool.cpp
c++ -o jsbool.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsbool.pp ../jsbool.cpp
In file included from ../jsbool.cpp:45:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsatom.cppIn file included from ../jsanalyze.cpp:51:
In file included from ../jsatom.h:52:
../jsstr.h::40138::
In file included from 9:../jsanalyze.h: warning: 45:
In file included from anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
../jscntxt.h:59:
        struct {
In file included from ../jsatom.h:        ^
52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jsarray.cpp:86:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jsanalyze.cpp:40:
In file included from ../jsanalyze.h:45:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
In file included from ../jsatom.cpp:53:
../jscntxt.h:271:16:         return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]

        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
../jsatom.h:445:6: note:            ? COMMON_ATOMS_START(&cx->runtime->atomState)
expanded from macro 'COMMON_ATOMS_START'
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6:    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~ note: expanded from macro 'COMMON_ATOMS_START'

    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsapi.cpp:60:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jsapi.cpp:60:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jsarray.cpp:90:
In file included from ../jstracer.h:48:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jsarray.cpp:90:
In file included from ../jstracer.h:48:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jsbool.cpp:47:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jsatom.cpp:53:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsanalyze.cpp:40:
In file included from ../jsanalyze.h:45:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsatom.cpp:57:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsanalyze.cpp:40:
In file included from ../jsanalyze.h:45:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsanalyze.cpp:40:
In file included from ../jsanalyze.h:45:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsanalyze.cpp:40:
In file included from ../jsanalyze.h:45:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsanalyze.cpp:40:
In file included from ../jsanalyze.h:45:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsapi.cpp:61:
In file included from ../jsclone.h:43:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
In file included from ../jsanalyze.cpp:40:
In file included from ../jsanalyze.h:45:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsanalyze.cpp:40:
In file included from ../jsanalyze.h:45:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jsanalyze.cpp:40:
In file included from ../jsanalyze.h:45:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120In file included from ../jsarray.cpp:21: note: expanded from macro 'JS_STATIC_ASSERT'
:90:
In file included from ../jstracer.h:49:
../jscntxt.h:271        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40:16: warning: :cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
 note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsanalyze.cpp:40:
In file included from ../jsanalyze.h:45:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsanalyze.cpp:40:
In file included from ../jsanalyze.h:45:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jsanalyze.cpp:40:
In file included from ../jsanalyze.h:45:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsanalyze.cpp:40:
In file included from ../jsanalyze.h:45:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsanalyze.cpp:40:
In file included from ../jsanalyze.h:45:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jsanalyze.cpp:40:
In file included from ../jsanalyze.h:45:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsanalyze.cpp:40:
In file included from ../jsanalyze.h:45:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../jsanalyze.cpp:40:
In file included from ../jsanalyze.h:45:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../jsanalyze.cpp:40:
In file included from ../jsanalyze.h:45:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../jsanalyze.cpp:40:
In file included from ../jsanalyze.h:45:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../jsanalyze.cpp:40:
In file included from ../jsanalyze.h:45:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../jsanalyze.cpp:40:
In file included from ../jsanalyze.h:45:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../jsanalyze.cpp:40:
In file included from ../jsanalyze.h:45:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../jsanalyze.cpp:40:
In file included from ../jsanalyze.h:45:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsbool.cpp:49:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsapi.cpp:61:
In file included from ../jsclone.h:43:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsarray.cpp:90:
In file included from ../jstracer.h:49:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsbool.cpp:49:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsapi.cpp:65:
In file included from ../jsemit.h:49:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsatom.cpp:65:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
../jsatom.cpp:384:13: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
    atoms = COMMON_ATOMS_START(state);
            ^~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.cpp:954:12: warning: variable 'count' set but not used [-Wunused-but-set-variable]
    uint32 count;
           ^
In file included from ../jsatom.cpp:51:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsarray.cpp:102:
In file included from ../jsscope.h:59:
In file included from ../jsstrinlines.h:44:
In file included from ../jscntxtinlines.h:46:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]In file included from ../jsatom.cpp:51
:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~56:

In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsatom.cpp:51:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsatom.cpp:51:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsatom.cpp:51:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jsatom.cpp:51:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jsatom.cpp:51:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jsatom.cpp:51:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
In file included from ../jsbool.cpp:58:
In file included from ../jsobjinlines.h:53:
In file included from ../jsscope.h  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
:59:
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
In file included from ../jsstrinlines.h:44:
In file included from ../jscntxtinlines.h:46:
../jsparse.h:654:16      : stack(cx), cur(NULL)
: warning:         ^
cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsatom.cpp:65:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jsatom.cpp:51:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jsatom.cpp:51:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsatom.cpp:51:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jsatom.cpp:51:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsatom.cpp:51:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsatom.cpp:51:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jsatom.cpp:51:
In file included from ../jsatom.h:52:
../jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsatom.cpp:51:
In file included from ../jsatom.h:52:
../jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsatom.cpp:51:
In file included from ../jsatom.h:52:
../jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jsatom.cpp:51:
In file included from ../jsatom.h:52:
../jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsatom.cpp:53:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../jsatom.cpp:53:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../jsatom.cpp:53:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../jsatom.cpp:53:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../jsatom.cpp:53:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../jsatom.cpp:53:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../jsatom.cpp:53:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../jsatom.cpp:53:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../jsatom.cpp:63:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:176:1: note: expanded from here
js_static_assert63
^
In file included from ../jsatom.cpp:63:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:178:1: note: expanded from here
js_static_assert64
^
In file included from ../jsatom.cpp:65:
In file included from ../jsobjinlines.h:53:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:180:1: note: expanded from here
js_static_assert65
^
In file included from ../jsatom.cpp:51:
In file included from ../jsatom.h:52:
../jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jsatom.cpp:53:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
In file included from ../jsbool.cpp:58:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
In file included from ../jsarray.cpp:111:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
In file included from ../jsbool.cpp:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsbool.cpp:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsapi.cpp:95:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
In file included from ../jsbool.cpp:47:
In file included from ../jsatom.h:           + isFun ? sizeof(JSFunction) : sizeof(JSObject);52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:
           ~~~~~~~ ^
394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
        : AutoVectorRooter(cx, IDVECTOR)
                  )
          ^
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
In file included from ../jsbool.cpp:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsbool.cpp:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:205:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    ExecutableAllocator() {}
    ^
In file included from ../jsbool.cpp:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:412:24: note: in instantiation of member function 'js::Vector::Vector' requested here
inline ExecutablePool::ExecutablePool(size_t n) : m_refCount(1), m_destroy(false), m_gcNumber(0)
                       ^
In file included from ../jsbool.cpp:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jsbool.cpp:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
26 warnings generated.
In file included from ../jsbool.cpp:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
jsclone.cpp
c++ -o jsclone.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsclone.pp ../jsclone.cpp
In file included from ../jsbool.cpp:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jsbool.cpp:58:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jsbool.cpp:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jsbool.cpp:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsbool.cpp:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jsbool.cpp:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsbool.cpp:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsbool.cpp:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jsbool.cpp:47:
In file included from ../jsatom.h:52:
../jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsbool.cpp:47:
In file included from ../jsatom.h:52:
../jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jsbool.cpp:47:
In file included from ../jsatom.h:52:
../jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsbool.cpp:47:
In file included from ../jsatom.h:52:
../jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsbool.cpp:49:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../jsbool.cpp:49:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../jsbool.cpp:49:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../jsbool.cpp:49:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../jsbool.cpp:49:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../jsbool.cpp:49:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../jsbool.cpp:49:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../jsbool.cpp:49:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../jsbool.cpp:58:
In file included from ../jsobjinlines.h:53:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:176:1: note: expanded from here
js_static_assert63
^
In file included from ../jsbool.cpp:58:
In file included from ../jsobjinlines.h:53:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:178:1: note: expanded from here
js_static_assert64
^
In file included from ../jsbool.cpp:58:
In file included from ../jsobjinlines.h:53:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:180:1: note: expanded from here
js_static_assert65
^
In file included from ../jsbool.cpp:47:
In file included from ../jsatom.h:52:
../jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jsbool.cpp:49:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:42:
In file included from ../jsapi.h:49:
In file included from ../jspubtd.h:47:
In file included from ../jsval.h:48:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsarray.cpp:86:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsarray.cpp:86:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
./dist/include/jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
./dist/include/jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsapi.cpp:98:
In file included from ../jsregexpinlines.h:49:
In file included from ../yarr/yarr/RegexJIT.h:34:
../yarr/yarr/RegexPattern.h:136:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jsarray.cpp:86:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
./dist/include/jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
./dist/include/jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsarray.cpp:86:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
./dist/include/jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
./dist/include/jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsarray.cpp:86:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jsarray.cpp:86:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jsarray.cpp:86:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jsarray.cpp:86:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jsarray.cpp:86:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:205:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    ExecutableAllocator() {}
    ^
In file included from ../jsarray.cpp:86:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:412:24: note: in instantiation of member function 'js::Vector::Vector' requested here
inline ExecutablePool::ExecutablePool(size_t n) : m_refCount(1), m_destroy(false), m_gcNumber(0)
                       ^
In file included from ../jsarray.cpp:111:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jsarray.cpp:86:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jsarray.cpp:86:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsarray.cpp:86:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jsarray.cpp:86:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsarray.cpp:86:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsarray.cpp:86:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jsarray.cpp:86:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsarray.cpp:86:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jsarray.cpp:86:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsarray.cpp:86:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsarray.cpp:90:
In file included from ../jstracer.h:49:
In file included from ./dist/include/jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:262:1: note: expanded from here
js_static_assert45
^
In file included from ../jsarray.cpp:90:
In file included from ../jstracer.h:49:
In file included from ./dist/include/jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:264:1: note: expanded from here
js_static_assert46
^
In file included from ../jsarray.cpp:90:
In file included from ../jstracer.h:49:
In file included from ./dist/include/jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:268:1: note: expanded from here
js_static_assert48
^
In file included from ../jsarray.cpp:90:
In file included from ../jstracer.h:49:
In file included from ./dist/include/jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:266:1: note: expanded from here
js_static_assert47
^
In file included from ../jsarray.cpp:90:
In file included from ../jstracer.h:49:
In file included from ./dist/include/jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:284:1: note: expanded from here
js_static_assert56
^
In file included from ../jsarray.cpp:90:
In file included from ../jstracer.h:49:
In file included from ./dist/include/jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:286:1: note: expanded from here
js_static_assert57
^
In file included from ../jsarray.cpp:90:
In file included from ../jstracer.h:49:
In file included from ./dist/include/jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:290:1: note: expanded from here
js_static_assert59
^
In file included from ../jsarray.cpp:90:
In file included from ../jstracer.h:49:
In file included from ./dist/include/jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:292:1: note: expanded from here
js_static_assert60
^
In file included from ../jsarray.cpp:102:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:135:1: note: expanded from here
js_static_assert63
^
In file included from ../jsarray.cpp:102:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:137:1: note: expanded from here
js_static_assert64
^
In file included from ../jsarray.cpp:102:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:139:1: note: expanded from here
js_static_assert65
^
../jsarray.cpp:231:5: warning: unused typedef 'js_static_assert66' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(sizeof(jsuint) == sizeof(uint32_t));
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:141:1: note: expanded from here
js_static_assert66
^
../jsarray.cpp:257:5: warning: unused typedef 'js_static_assert67' [-Wunused-local-typedef]
    JS_STATIC_ASSERT((jsuint)-1 == 4294967295U);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:143:1: note: expanded from here
js_static_assert67
^
In file included from ../jsarray.cpp:86:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jsarray.cpp:90:
In file included from ../jstracer.h:49:
./dist/include/jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
../jsapi.cpp:1638:12: warning: cast from 'char *' to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
    atom = OFFSET_TO_ATOM(cx->runtime, offset);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:454:35: note: expanded from macro 'OFFSET_TO_ATOM'
#define OFFSET_TO_ATOM(rt,off)  (*(JSAtom **)((char*)&(rt)->atomState + (off)))
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsapi.cpp:1643:13: warning: cast from 'char *' to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
            OFFSET_TO_ATOM(cx->runtime, offset) = atom;
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:454:35: note: expanded from macro 'OFFSET_TO_ATOM'
#define OFFSET_TO_ATOM(rt,off)  (*(JSAtom **)((char*)&(rt)->atomState + (off)))
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsapi.cpp:1801:16: warning: cast from 'char *' to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
        atom = OFFSET_TO_ATOM(rt, standard_class_atoms[i].atomOffset);
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:454:35: note: expanded from macro 'OFFSET_TO_ATOM'
#define OFFSET_TO_ATOM(rt,off)  (*(JSAtom **)((char*)&(rt)->atomState + (off)))
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsapi.cpp:1882:16: warning: cast from 'char *' to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
        atom = OFFSET_TO_ATOM(rt, standard_class_atoms[i].atomOffset);
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:454:35: note: expanded from macro 'OFFSET_TO_ATOM'
#define OFFSET_TO_ATOM(rt,off)  (*(JSAtom **)((char*)&(rt)->atomState + (off)))
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsapi.cpp:1984:16: warning: cast from 'char *' to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
        atom = OFFSET_TO_ATOM(rt, standard_class_atoms[j].atomOffset);
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:454:35: note: expanded from macro 'OFFSET_TO_ATOM'
#define OFFSET_TO_ATOM(rt,off)  (*(JSAtom **)((char*)&(rt)->atomState + (off)))
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
41 warnings generated.
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
jscntxt.cpp
c++ -o jscntxt.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jscntxt.pp ../jscntxt.cpp
In file included from ../jscntxt.cpp:58:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsclone.h:147:42: note: in instantiation of member function 'js::Vector::Vector' requested here
        : out(out), objs(out.context()), counts(out.context()), ids(out.context()),
                                         ^
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsemit.h:550:36: note: in instantiation of member function 'js::Vector::Vector' requested here
    JSGCConstList(JSContext *cx) : list(cx) {}
                                   ^
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:205:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    ExecutableAllocator() {}
    ^
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:412:24: note: in instantiation of member function 'js::Vector::Vector' requested here
inline ExecutablePool::ExecutablePool(size_t n) : m_refCount(1), m_destroy(false), m_gcNumber(0)
                       ^
41 warnings generated.
In file included from ../jsapi.cpp:95:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
jscompartment.cpp
c++ -o jscompartment.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jscompartment.pp ../jscompartment.cpp
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../yarr/yarr/RegexPattern.h:93:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    CharacterClass(CharacterClassTable *table)
    ^
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../yarr/yarr/RegexPattern.h:93:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    CharacterClass(CharacterClassTable *table)
    ^
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../yarr/yarr/RegexPattern.h:233:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    PatternAlternative(PatternDisjunction* disjunction)
    ^
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../yarr/yarr/RegexPattern.h:282:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    PatternDisjunction(PatternAlternative* parent = 0)
    ^
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../yarr/yarr/RegexPattern.h:321:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    RegexPattern(bool ignoreCase, bool multiline)
    ^
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../yarr/yarr/RegexPattern.h:321:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    RegexPattern(bool ignoreCase, bool multiline)
    ^
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsapi.cpp:625:12: note: in instantiation of member function 'js::Vector::Vector' requested here
JSRuntime::JSRuntime()
           ^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:55:
In file included from ../jsprvtd.h:57:
In file included from ../jspubtd.h:47:
In file included from ../jsval.h:48:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsapi.cpp:61:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
In file included from ../jsclone.cpp:44:
In file included from         typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:../jsregexpinlines.h:118:4045:
In file included from ../jsobjinlines.h: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
:53:
In file included from ../jsscope.h:59:
In file included from ../jsstrinlines.h:44:
In file included from ../jscntxtinlines.h:46:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'

    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:262:1: note: expanded from here
js_static_assert45
^
In file included from ../jsapi.cpp:61:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:264:1: note: expanded from here
js_static_assert46
^
In file included from ../jsapi.cpp:61:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:268:1: note: expanded from here
js_static_assert48
^
In file included from ../jsapi.cpp:61:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:266:1: note: expanded from here
js_static_assert47
^
In file included from ../jsapi.cpp:61:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:284:1: note: expanded from here
js_static_assert56
^
In file included from ../jsapi.cpp:61:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:286:1: note: expanded from here
js_static_assert57
^
In file included from ../jsapi.cpp:61:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:292:1: note: expanded from here
js_static_assert60
^
In file included from ../jsapi.cpp:61:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:290:1: note: expanded from here
js_static_assert59
^
In file included from ../jsapi.cpp:61:
../jsclone.h:101:9: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(uint32_t) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:300:1: note: expanded from here
js_static_assert64
^
In file included from ../jsapi.cpp:61:
../jsclone.h:100:9: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jschar) == 2);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:298:1: note: expanded from here
js_static_assert63
^
In file included from ../jsapi.cpp:61:
../jsclone.h:102:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsdouble) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:302:1: note: expanded from here
js_static_assert65
^
In file included from ../jsapi.cpp:81:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert66' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert66
^
In file included from ../jsapi.cpp:81:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert67' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:76:1: note: expanded from here
js_static_assert67
^
In file included from ../jsapi.cpp:81:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert68' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert68
^
In file included from ../jsapi.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jsapi.cpp:61:
In file included from ../jsclone.h:43:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
In file included from ../jscntxt.cpp:61:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jsclone.cpp:44:
In file included from ../jsregexpinlines.h:45:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
In file included from ../jscntxt.cpp:62:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jscntxt.cpp:62:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsclone.cpp:44:
In file included from ../jsregexpinlines.h:49:
In file included from ../yarr/yarr/RegexJIT.h:34:
../yarr/yarr/RegexPattern.h:136:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jscntxt.cpp:77:
In file included from ../jsscope.h:59:
In file included from ../jsstrinlines.h:44:
In file included from ../jscntxtinlines.h:46:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsclone.h:147:42: note: in instantiation of member function 'js::Vector::Vector' requested here
        : out(out), objs(out.context()), counts(out.context()), ids(out.context()),
                                         ^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jsclone.cpp:44:
In file included from ../jsregexpinlines.h:45:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:205:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    ExecutableAllocator() {}
    ^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:412:24: note: in instantiation of member function 'js::Vector::Vector' requested here
inline ExecutablePool::ExecutablePool(size_t n) : m_refCount(1), m_destroy(false), m_gcNumber(0)
                       ^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../yarr/yarr/RegexPattern.h:93:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    CharacterClass(CharacterClassTable *table)
    ^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../yarr/yarr/RegexPattern.h:93:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    CharacterClass(CharacterClassTable *table)
    ^
In file included from ../jscompartment.cpp:41:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../yarr/yarr/RegexPattern.h:233:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    PatternAlternative(PatternDisjunction* disjunction)
    ^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../yarr/yarr/RegexPattern.h:282:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    PatternDisjunction(PatternAlternative* parent = 0)
    ^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../yarr/yarr/RegexPattern.h:321:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    RegexPattern(bool ignoreCase, bool multiline)
    ^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../yarr/yarr/RegexPattern.h:321:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    RegexPattern(bool ignoreCase, bool multiline)
    ^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsclone.cpp:238:45: note: in instantiation of member function 'js::Vector::Vector' requested here
SCOutput::SCOutput(JSContext *cx) : cx(cx), buf(cx) {}
                                            ^
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../jsclone.cpp:39:
../jsclone.h:102:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsdouble) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:90:1: note: expanded from here
js_static_assert65
^
In file included from ../jsclone.cpp:39:
../jsclone.h:100:9: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jschar) == 2);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:86:1: note: expanded from here
js_static_assert63
^
In file included from ../jsclone.cpp:39:
../jsclone.h:101:9: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(uint32_t) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:88:1: note: expanded from here
js_static_assert64
^
In file included from ../jsclone.cpp:44:
In file included from ../jsregexpinlines.h:45:
In file included from ../jsobjinlines.h:53:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert66' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
In file included from ../jscompartment.cpp::41:
182:1: ../jscntxt.h:2963note: expanded from here:12: 
warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]js_static_assert66
^

In file included from ../jsclone.cpp:44:
In file included from ../jsregexpinlines.h:45:
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));In file included from ../jsobjinlines.h:
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~53:
In file included from ../jsscope.h
:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert67' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:184:1: note: expanded from here
js_static_assert67
^
In file included from ../jsclone.cpp:44:
In file included from ../jsregexpinlines.h:45:
In file included from ../jsobjinlines.h:53:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert68' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:186:1: note: expanded from here
js_static_assert68
^
../jsclone.cpp:203:5: warning: unused typedef 'js_static_assert71' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(sizeof(uint64_t) % sizeof(T) == 0);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:201:1: note: expanded from here
js_static_assert71
^
../jsclone.cpp:414:5: warning: unused typedef 'js_static_assert79' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(TypedArray::TYPE_FLOAT32 == 6);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:217:1: note: expanded from here
js_static_assert79
^
../jsclone.cpp:413:5: warning: unused typedef 'js_static_assert78' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(TypedArray::TYPE_UINT32 == 5);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:215:1: note: expanded from here
js_static_assert78
^
../jsclone.cpp:408:5: warning: unused typedef 'js_static_assert73' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(TypedArray::TYPE_INT8 == 0);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:205:1: note: expanded from here
js_static_assert73
^
../jsclone.cpp:412:5: warning: unused typedef 'js_static_assert77' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(TypedArray::TYPE_INT32 == 4);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:213:1: note: expanded from here
js_static_assert77
^
../jsclone.cpp:409:5: warning: unused typedef 'js_static_assert74' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(TypedArray::TYPE_UINT8 == 1);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:207:1: note: expanded from here
js_static_assert74
^
../jsclone.cpp:410:5: warning: unused typedef 'js_static_assert75' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(TypedArray::TYPE_INT16 == 2);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:209:1: note: expanded from here
js_static_assert75
^
../jsclone.cpp:411:5: warning: unused typedef 'js_static_assert76' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(TypedArray::TYPE_UINT16 == 3);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:211:1: note: expanded from here
js_static_assert76
^
../jsclone.cpp:416:5: warning: unused typedef 'js_static_assert81' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(TypedArray::TYPE_UINT8_CLAMPED == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:221:1: note: expanded from here
js_static_assert81
^
../jsclone.cpp:417:5: warning: unused typedef 'js_static_assert82' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(TypedArray::TYPE_MAX == TypedArray::TYPE_UINT8_CLAMPED + 1);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:223:1: note: expanded from here
js_static_assert82
^
../jsclone.cpp:415:5: warning: unused typedef 'js_static_assert80' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(TypedArray::TYPE_FLOAT64 == 7);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:219:1: note: expanded from here
js_static_assert80
^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jsclone.cpp:39:
In file included from ../jsclone.h:43:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
In file included from ../jscntxt.cpp:81:
In file included from ../jstracer.h:48:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jscntxt.cpp:81:
In file included from ../jstracer.h:48:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jscompartment.cpp:46:
In file included from ../jsscope.h:59:
In file included from ../jsstrinlines.h:44:
In file included from ../jscntxtinlines.h:46:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jscompartment.cpp:47:
In file included from ../jstracer.h:48:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jscompartment.cpp:47:
In file included from ../jstracer.h:48:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jscntxt.cpp:90:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
../jscntxt.cpp:253:15: warning: cast from 'js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        end = (Value *)seg;
              ^~~~~~~~~~~~
In file included from ../jscntxt.cpp:61:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jscntxt.cpp:61:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jscntxt.cpp:61:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jscntxt.cpp:61:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jscntxt.cpp:61:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jscntxt.cpp:61:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jscntxt.cpp:61:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jscntxt.cpp:61:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jscntxt.cpp:61:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:205:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    ExecutableAllocator() {}
    ^
In file included from ../jscntxt.cpp:61:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:412:24: note: in instantiation of member function 'js::Vector::Vector' requested here
inline ExecutablePool::ExecutablePool(size_t n) : m_refCount(1), m_destroy(false), m_gcNumber(0)
                       ^
In file included from ../jscntxt.cpp:90:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jscntxt.cpp:61:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jscntxt.cpp:61:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.cpp:1986:12: note: in instantiation of member function 'js::Vector::Vector' requested here
JSContext::JSContext(JSRuntime *rt)
           ^
In file included from ../jscntxt.cpp:61:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jscntxt.cpp:61:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jscntxt.cpp:61:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jscntxt.cpp:61:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jscntxt.cpp:61:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jscntxt.cpp:61:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jscntxt.cpp:61:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jscntxt.cpp:61:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jscntxt.cpp:61:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jscntxt.cpp:62:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../jscntxt.cpp:62:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../jscntxt.cpp:62:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../jscntxt.cpp:62:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../jscntxt.cpp:62:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../jscntxt.cpp:62:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../jscntxt.cpp:62:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../jscntxt.cpp:62:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../jscntxt.cpp:77:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:176:1: note: expanded from here
js_static_assert63
^
In file included from ../jscntxt.cpp:77:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:178:1: note: expanded from here
js_static_assert64
^
In file included from ../jscntxt.cpp:77:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:180:1: note: expanded from here
js_static_assert65
^
../jscntxt.cpp:746:5: warning: unused typedef 'js_static_assert66' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSVERSION_DEFAULT == 0);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:106:1: note: expanded from here
js_static_assert66
^
In file included from ../jscntxt.cpp:61:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jscntxt.cpp:62:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
In file included from ../jscompartment.cpp:51:
In file included from ../methodjit/PolyIC.h:50:
In file included from ../methodjit/BaseAssembler.h:53:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:205:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    ExecutableAllocator() {}
    ^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:412:24: note: in instantiation of member function 'js::Vector::Vector' requested here
inline ExecutablePool::ExecutablePool(size_t n) : m_refCount(1), m_destroy(false), m_gcNumber(0)
                       ^
In file included from ../jscompartment.cpp:51:
In file included from ../methodjit/PolyIC.h:50:
In file included from ../methodjit/BaseAssembler.h:53:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../methodjit/BaseAssembler.h:206:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : callPatches(SystemAllocPolicy()),
        ^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsutil.h:260:17: note: in instantiation of member function 'js::Vector::Vector' requested here
    JS_NEW_BODY(T, (p1))
                ^
../methodjit/PolyIC.h:195:41: note: in instantiation of function template specialization 'js_new, js::SystemAllocPolicy>' requested here
            ExecPoolVector *execPools = js_new(SystemAllocPolicy()); 
                                        ^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../jscompartment.cpp:46:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:176:1: note: expanded from here
js_static_assert63
^
In file included from ../jscompartment.cpp:46:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:178:1: note: expanded from here
js_static_assert64
^
In file included from ../jscompartment.cpp:46:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:180:1: note: expanded from here
js_static_assert65
^
In file included from ../jscompartment.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jscompartment.cpp:41:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
64 warnings generated.
jsdate.cpp
c++ -o jsdate.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsdate.pp ../jsdate.cpp
In file included from ../jsdate.cpp:63:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsdate.cpp:66:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jsdate.cpp:66:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jsdate.cpp:67:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
46 warnings generated.
jsdbgapi.cpp
c++ -o jsdbgapi.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsdbgapi.pp ../jsdbgapi.cpp
In file included from ../jsdbgapi.cpp:45:
In file included from ../jsprvtd.h:57:
In file included from ../jspubtd.h:47:
In file included from ../jsval.h:48:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsdate.cpp:67:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsdate.cpp:67:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsdate.cpp:74:
In file included from ../jsobjinlines.h:53:
In file included from ../jsscope.h:59:
In file included from ../jsstrinlines.h:44:
In file included from ../jscntxtinlines.h:46:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsdate.cpp:74:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
45 warnings generated.
jsdhash.cpp
c++ -o jsdhash.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsdhash.pp ../jsdhash.cpp
In file included from ../jsdbgapi.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jsdhash.cpp:48:
In file included from ../jsbit.h:44:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
../jsdhash.cpp:393:17: warning: cast from 'char *' to 'JSDHashEntryHdr *' increases required alignment from 1 to 4 [-Wcast-align]
        entry = (JSDHashEntryHdr *)entryAddr;
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsdhash.cpp:424:13: warning: cast from 'char *' to 'JSDHashEntryHdr *' increases required alignment from 1 to 4 [-Wcast-align]
    entry = ADDRESS_ENTRY(table, hash1);
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsdhash.cpp:362:6: note: expanded from macro 'ADDRESS_ENTRY'
    ((JSDHashEntryHdr *)((table)->entryStore + (index) * (table)->entrySize))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsdhash.cpp:460:17: warning: cast from 'char *' to 'JSDHashEntryHdr *' increases required alignment from 1 to 4 [-Wcast-align]
        entry = ADDRESS_ENTRY(table, hash1);
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsdhash.cpp:362:6: note: expanded from macro 'ADDRESS_ENTRY'
    ((JSDHashEntryHdr *)((table)->entryStore + (index) * (table)->entrySize))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsdhash.cpp:501:13: warning: cast from 'char *' to 'JSDHashEntryHdr *' increases required alignment from 1 to 4 [-Wcast-align]
    entry = ADDRESS_ENTRY(table, hash1);
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsdhash.cpp:362:6: note: expanded from macro 'ADDRESS_ENTRY'
    ((JSDHashEntryHdr *)((table)->entryStore + (index) * (table)->entrySize))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsdhash.cpp:522:17: warning: cast from 'char *' to 'JSDHashEntryHdr *' increases required alignment from 1 to 4 [-Wcast-align]
        entry = ADDRESS_ENTRY(table, hash1);
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsdhash.cpp:362:6: note: expanded from macro 'ADDRESS_ENTRY'
    ((JSDHashEntryHdr *)((table)->entryStore + (index) * (table)->entrySize))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsdhash.cpp:580:20: warning: cast from 'char *' to 'JSDHashEntryHdr *' increases required alignment from 1 to 4 [-Wcast-align]
        oldEntry = (JSDHashEntryHdr *)oldEntryAddr;
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsdhash.cpp:741:17: warning: cast from 'char *' to 'JSDHashEntryHdr *' increases required alignment from 1 to 4 [-Wcast-align]
        entry = (JSDHashEntryHdr *)entryAddr;
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsdate.cpp:67:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsdate.cpp:67:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsdate.cpp:67:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsdate.cpp:67:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsdate.cpp:67:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jsdate.cpp:67:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jsdate.cpp:67:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jsdate.cpp:67:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jsdate.cpp:74:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
45 warnings generated.
In file included from ../jsdate.cpp:67:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
jsdtoa.cpp
c++ -o jsdtoa.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsdtoa.pp ../jsdtoa.cpp
In file included from ../jsdate.cpp:66:
In file included from ../jsbuiltins.h:46:
../jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:10:1: note: expanded from here
js_static_assert6
^
In file included from ../jsdate.cpp:66:
In file included from ../jsbuiltins.h:46:
../jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:8:1: note: expanded from here
js_static_assert5
^
In file included from ../jsdate.cpp:66:
In file included from ../jsbuiltins.h:46:
../jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:6:1: note: expanded from here
js_static_assert4
^
In file included from ../jsdate.cpp:66:
In file included from ../jsbuiltins.h:46:
../jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:14:1: note: expanded from here
js_static_assert8
^
In file included from ../jsdate.cpp:66:
In file included from ../jsbuiltins.h:46:
../jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:12:1: note: expanded from here
js_static_assert7
^
In file included from ../jsdate.cpp:67:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:137:1: note: expanded from here
js_static_assert37
^
In file included from ../jsdate.cpp:67:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:147:1: note: expanded from here
js_static_assert42
^
In file included from ../jsdate.cpp:67:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:145:1: note: expanded from here
js_static_assert41
^
In file included from ../jsdate.cpp:67:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:149:1: note: expanded from here
js_static_assert43
^
In file included from ../jsdate.cpp:67:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:231:1: note: expanded from here
js_static_assert45
^
In file included from ../jsdate.cpp:67:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:233:1: note: expanded from here
js_static_assert46
^
In file included from ../jsdate.cpp:67:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:235:1: note: expanded from here
js_static_assert47
^
In file included from ../jsdate.cpp:67:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:237:1: note: expanded from here
js_static_assert48
^
In file included from ../jsdate.cpp:67:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:253:1: note: expanded from here
js_static_assert56
^
In file included from ../jsdate.cpp:67:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:255:1: note: expanded from here
js_static_assert57
^
In file included from ../jsdate.cpp:67:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:261:1: note: expanded from here
js_static_assert60
^
In file included from ../jsdate.cpp:67:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:259:1: note: expanded from here
js_static_assert59
^
In file included from ../jsdate.cpp:74:
In file included from ../jsobjinlines.h:53:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:66:1: note: expanded from here
js_static_assert63
^
In file included from ../jsdate.cpp:74:
In file included from ../jsobjinlines.h:53:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:68:1: note: expanded from here
js_static_assert64
^
In file included from ../jsdate.cpp:74:
In file included from ../jsobjinlines.h:53:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:70:1: note: expanded from here
js_static_assert65
^
In file included from ../jsdate.cpp:67:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jsdate.cpp:67:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
In file included from ../jsdbgapi.cpp:52:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
In file included from ../jsdtoa.cpp:47:
In file included from ../jsapi.h:49:
In file included from ../jspubtd.h:47:
In file included from ../jsval.h:48:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsdbgapi.cpp:52:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsdbgapi.cpp:55:
In file included from ../jsemit.h:49:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
8 warnings generated.
jsemit.cpp
c++ -o jsemit.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsemit.pp ../jsemit.cpp
In file included from ../jsemit.cpp:52:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsdbgapi.cpp:72:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
In file included from ../jsdtoa.cpp:49:
In file included from ../jsnum.h:53:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jsemit.cpp:56:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jsdtoa.cpp:52:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsdtoa.cpp:52:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsdbgapi.cpp:79:
In file included from ../methodjit/Retcon.h:52:
In file included from ../methodjit/Compiler.h:49:
In file included from ../methodjit/StubCompiler.h:47:
In file included from ../methodjit/FrameState.h:45:
../methodjit/FrameEntry.h:69:25: warning: passing 4-byte aligned argument to 8-byte aligned parameter 1 of 'Valueify' may result in an unaligned pointer access [-Walign-mismatch]
        return Valueify(JSVAL_FROM_LAYOUT(v_));
                        ^
../jsval.h:823:30: note: expanded from macro 'JSVAL_FROM_LAYOUT'
#define JSVAL_FROM_LAYOUT(l) ((l).asBits)
                             ^
In file included from ../jsemit.cpp:58:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
In file included from ../jsdtoa.cpp:54:
In file included from ../jsobjinlines.h:53:
In file included from ../jsscope.h:59:
In file included from ../jsstrinlines.h:44:
In file included from ../jscntxtinlines.h:46:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsemit.cpp:58:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsdbgapi.cpp:250:17: warning: cast from 'struct JSCListStr *' to 'JSTrap *' increases required alignment from 4 to 8 [-Wcast-align]
    for (trap = (JSTrap *)rt->trapList.next;
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsdbgapi.cpp:252:17: warning: cast from 'struct JSCListStr *' to 'JSTrap *' increases required alignment from 4 to 8 [-Wcast-align]
         trap = (JSTrap *)trap->links.next) {
                ^~~~~~~~~~~~~~~~~~~~~~~~~~
../jsdbgapi.cpp:269:17: warning: cast from 'struct JSCListStr *' to 'JSTrap *' increases required alignment from 4 to 8 [-Wcast-align]
    for (trap = (JSTrap *)rt->trapList.next;
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsdbgapi.cpp:272:17: warning: cast from 'struct JSCListStr *' to 'JSTrap *' increases required alignment from 4 to 8 [-Wcast-align]
         trap = (JSTrap *)trap->links.next) {
                ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsemit.cpp:60:
In file included from ../jsemit.h:49:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsdbgapi.cpp:416:17: warning: cast from 'struct JSCListStr *' to 'JSTrap *' increases required alignment from 4 to 8 [-Wcast-align]
    for (trap = (JSTrap *)rt->trapList.next;
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsdbgapi.cpp:419:16: warning: cast from 'struct JSCListStr *' to 'JSTrap *' increases required alignment from 4 to 8 [-Wcast-align]
        next = (JSTrap *)trap->links.next;
               ^~~~~~~~~~~~~~~~~~~~~~~~~~
../jsdbgapi.cpp:425:24: warning: cast from 'struct JSCListStr *' to 'JSTrap *' increases required alignment from 4 to 8 [-Wcast-align]
                next = (JSTrap *)rt->trapList.next;
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsdbgapi.cpp:440:17: warning: cast from 'struct JSCListStr *' to 'JSTrap *' increases required alignment from 4 to 8 [-Wcast-align]
    for (trap = (JSTrap *)rt->trapList.next;
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsdbgapi.cpp:443:16: warning: cast from 'struct JSCListStr *' to 'JSTrap *' increases required alignment from 4 to 8 [-Wcast-align]
        next = (JSTrap *)trap->links.next;
               ^~~~~~~~~~~~~~~~~~~~~~~~~~
../jsdbgapi.cpp:448:20: warning: cast from 'struct JSCListStr *' to 'JSTrap *' increases required alignment from 4 to 8 [-Wcast-align]
            next = (JSTrap *)rt->trapList.next;
                   ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsdbgapi.cpp:463:25: warning: cast from 'struct JSCListStr *' to 'JSTrap *' increases required alignment from 4 to 8 [-Wcast-align]
    for (JSTrap *trap = (JSTrap *) rt->trapList.next;
                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsdbgapi.cpp:465:17: warning: cast from 'struct JSCListStr *' to 'JSTrap *' increases required alignment from 4 to 8 [-Wcast-align]
         trap = (JSTrap *) trap->links.next) {
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsdtoa.cpp:54:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
In file included from ../jsdtoa.cpp:83:
../dtoa.c:2522:25: warning: cast from 'char *' to 'int *' increases required alignment from 1 to 4 [-Wcast-align]
        Bigint *b = (Bigint *)((int *)s - 1);
                               ^~~~~~~~
In file included from ../jsdbgapi.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsdbgapi.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsdbgapi.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsdbgapi.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsdbgapi.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jsdbgapi.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsemit.h:550:36: note: in instantiation of member function 'js::Vector::Vector' requested here
    JSGCConstList(JSContext *cx) : list(cx) {}
                                   ^
In file included from ../jsdbgapi.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jsdtoa.cpp:49:
In file included from ../jsnum.h:53:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsdbgapi.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jsdtoa.cpp:49:
In file included from ../jsnum.h:53:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsdtoa.cpp:49:
In file included from ../jsnum.h:53:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsdtoa.cpp:49:
In file included from ../jsnum.h:53:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsdtoa.cpp:49:
In file included from ../jsnum.h:53:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65In file included from ../jsdbgapi.cpp:
../jsvector.h:394:52:34: warning: :
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:field 'storage' is uninitialized when used here [-Wuninitialized]
52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
:65:
../jsvector.h                                 ^
:394:34../jsparse.h:: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jsdbgapi.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:205:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    ExecutableAllocator() {}
    ^
In file included from ../jsdtoa.cpp:49:
In file included from ../jsnum.h:53:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jsdbgapi.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:412:24: note: in instantiation of member function 'js::Vector::Vector' requested here
inline ExecutablePool::ExecutablePool(size_t n) : m_refCount(1), m_destroy(false), m_gcNumber(0)
                       ^
In file included from ../jsdbgapi.cpp:72:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jsdtoa.cpp:49:
In file included from ../jsnum.h:53:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jsdbgapi.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jsemit.cpp:73:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
In file included from ../jsdtoa.cpp:49:
In file included from ../jsnum.h:53:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jsdtoa.cpp:54:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jsdbgapi.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../methodjit/BaseAssembler.h:206:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : callPatches(SystemAllocPolicy()),
        ^
In file included from ../jsdtoa.cpp:49:
In file included from ../jsnum.h:53:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jsdtoa.cpp:49:
In file included from ../jsnum.h:50:
../jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:238:1: note: expanded from here
js_static_assert5
^
In file included from ../jsdtoa.cpp:49:
In file included from ../jsnum.h:50:
../jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:244:1: note: expanded from here
js_static_assert8
^
In file included from ../jsdtoa.cpp:49:
In file included from ../jsnum.h:50:
../jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120In file included from ../jsdbgapi.cpp::21: note: expanded from macro 'JS_STATIC_ASSERT'
52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from         typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h../jsstr.h::11856:
In file included from ../jsobj.h::4065:
../jsvector.h:: 394:34:note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
 warning: field 'storage' is uninitialized when used here [-Wuninitialized]
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
../jsutil.h:117:41: note:                                  ^
expanded from macro 'JS_STATIC_ASSERT_GLUE1'
../jsutil.h:260:17:    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
 note: :236:in instantiation of member function 'js::Vector::Vector' requested here
1: note:     JS_NEW_BODY(T, (p1))expanded from here

                ^js_static_assert4

^
In file included from ../jsdtoa.cpp:49../methodjit/PolyIC.h:195::
In file included from ../jsnum.h:41:50:
../jsvalue.h: 740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
note: in instantiation of function template specialization 'js_new, js::SystemAllocPolicy>' requested here
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120            ExecPoolVector *execPools = js_new(SystemAllocPolicy()); 
:21: note: expanded from macro 'JS_STATIC_ASSERT'
                                        ^
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:242:1: note: expanded from here
js_static_assert7
^
In file included from ../jsdtoa.cpp:49:
In file included from ../jsnum.h:50:
../jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:240:1: note: expanded from here
js_static_assert6
^
In file included from ../jsdtoa.cpp:49:
In file included from ../jsnum.h:53:
../jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsdtoa.cpp:49:
In file included from ../jsnum.h:53:
../jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:In file included from 1:../jsdbgapi.cpp note: expanded from here
:52:
js_static_assert41
^
In file included from ../jscntxt.hIn file included from ../jsdtoa.cpp:49:
:59:
In file included from In file included from ../jsatom.h:52../jsnum.h:53:
../jsstr.h:570:9::
In file included from ../jsstr.h:56:
 warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
In file included from ../jsobj.h:65:
../jsvector.h:394:34:         JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
warning: ../jsutil.hfield 'storage' is uninitialized when used here [-Wuninitialized]
:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../methodjit/Retcon.h:67        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
:35                    ^
:../jsutil.h:118 note: in instantiation of member function 'js::Vector::Vector' requested here
:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'        cx(cx1), script(script1), traps(cx) {};
                                  ^

    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsdtoa.cpp:49:
In file included from ../jsnum.h:53:
../jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsdtoa.cpp:52:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: In file included from ../jsdbgapi.cppexpanded from here
:52:
js_static_assert45
In file included from ../jscntxt.h:59^
:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsdtoa.cpp:52:
In file included from In file included from ../jsobj.h../jscntxt.h:62:
In file included from ../jsfun.h:64:
:49:
../jsscript.h:84../jsvalue.h:737:9::9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
 warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);../jsutil.h:120
        ^
:../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]../jsutil.h:118:40: note: 
                    ^
expanded from macro 'JS_STATIC_ASSERT_GLUE'../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'

    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)                                       ^

../jsutil.h:117                                       ^:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'

../jsutil.h:117:    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^41
: note: :expanded from macro 'JS_STATIC_ASSERT_GLUE1'334:1: note: expanded from here

js_static_assert4
^
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
In file included from ../jsdbgapi.cpp:52:
In file included from ../jscntxt.h:                                        ^59:

In file included from ../jsatom.h:52:
In file included from :../jsstr.h:5652:
In file included from ../jsobj.h::64:
../jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
1: note: expanded from here
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
js_static_assert46../jsutil.h:
120^:
21: note: In file included from expanded from macro 'JS_STATIC_ASSERT'../jsdtoa.cpp
:52:
In file included from ../jscntxt.h:62:
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]../jsfun.h
:                    ^228
:../jsutil.h9::118 :warning: 40unused typedef 'js_static_assert47' [-Wunused-local-typedef]:
 note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)

        ^                                       ^

../jsutil.h../jsutil.h::117120::4121::  note: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'expanded from macro 'JS_STATIC_ASSERT'

    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]:336
:                    ^1
: ../jsutil.hnote: :expanded from here118
:40:js_static_assert5 
note: ^expanded from macro 'JS_STATIC_ASSERT_GLUE'

In file included from ../jsdbgapi.cpp:52    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y):

In file included from                                        ^../jscntxt.h
:../jsutil.h59::
117In file included from :../jsatom.h41::52 :
note: In file included from expanded from macro 'JS_STATIC_ASSERT_GLUE1'../jsstr.h
:56:
In file included from ../jsobj.h:64    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y:

../jsvalue.h                                        ^:
739::954:: 1warning: :unused typedef 'js_static_assert6' [-Wunused-local-typedef] 
note: expanded from here
js_static_assert47        JS_STATIC_ASSERT(sizeof(JSBool) == 4);

^        ^

../jsutil.hIn file included from :../jsdtoa.cpp120::5221:
:In file included from  ../jscntxt.hnote: :expanded from macro 'JS_STATIC_ASSERT'62
:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note:         JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));expanded from macro 'JS_STATIC_ASSERT_GLUE'

        ^
../jsutil.h:120:21    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y):
                                        ^note: 
expanded from macro 'JS_STATIC_ASSERT'../jsutil.h
:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y../jsutil.h
:                                        ^118
:40::338 :note: 1expanded from macro 'JS_STATIC_ASSERT_GLUE':
 note: expanded from here
js_static_assert6
^    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)

In file included from                                        ^../jsdbgapi.cpp
:../jsutil.h52::
117In file included from :../jscntxt.h41::59 :
note: In file included from expanded from macro 'JS_STATIC_ASSERT_GLUE1'../jsatom.h
:52:
In file included from ../jsstr.h:    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y56
:
                                        ^In file included from 
../jsobj.h::6456:
:../jsvalue.h1::740 :note: 9expanded from here:
 warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]js_static_assert48

^
In file included from         JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
../jsdtoa.cpp        ^:
52../jsutil.h:
:In file included from 120../jscntxt.h::2163::
 ../jsgc.hnote: :expanded from macro 'JS_STATIC_ASSERT'514
:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);../jsutil.h
:    ^118
:40../jsutil.h:: 120note: :expanded from macro 'JS_STATIC_ASSERT_GLUE'21
: note: expanded from macro 'JS_STATIC_ASSERT'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]

                    ^
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
../jsutil.h                                        ^:
118::40340:: 1note: :expanded from macro 'JS_STATIC_ASSERT_GLUE' 
note: expanded from here
js_static_assert7
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)^

                                       ^
In file included from ../jsutil.h../jsdbgapi.cpp::11752::
41In file included from :../jscntxt.h :note: 59expanded from macro 'JS_STATIC_ASSERT_GLUE1':

In file included from ../jsatom.h:52:
In file included from     #define JS_STATIC_ASSERT_GLUE1(x,y) x##y../jsstr.h
:                                        ^56
:
In file included from :../jsobj.h72::641:
:../jsvalue.h :note: 741expanded from here:
9: js_static_assert56warning: 
unused typedef 'js_static_assert8' [-Wunused-local-typedef]^

In file included from ../jsdtoa.cpp:        JS_STATIC_ASSERT(sizeof(jsval) == 8);52
:
        ^In file included from 
../jscntxt.h:../jsutil.h63::
120../jsgc.h::21550:: 5note: :expanded from macro 'JS_STATIC_ASSERT' 
warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]

                    ^
../jsutil.h:118:40:     JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);note: 
expanded from macro 'JS_STATIC_ASSERT_GLUE'
    ^
../jsutil.h:120:21    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y):
                                        ^note: 
expanded from macro 'JS_STATIC_ASSERT'../jsutil.h
:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y

../jsutil.h                                        ^:
118::40342:: 1note: :expanded from macro 'JS_STATIC_ASSERT_GLUE' 
note: expanded from here
js_static_assert8
^
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^In file included from 
../jsdbgapi.cpp../jsutil.h::52117:
:In file included from 41../jscntxt.h:: 59note: :
expanded from macro 'JS_STATIC_ASSERT_GLUE1'In file included from 
../jsatom.h:52:
../jsstr.h:459    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y:
9                                        ^:
 warning: :unused typedef 'js_static_assert37' [-Wunused-local-typedef]74
:1: note: expanded from here
js_static_assert57        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>

^        ^

../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
In file included from ../jsdtoa.cpp:52:
In file included from ../jscntxt.h:        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]66
:
                    ^../jsinterp.h
:../jsutil.h779::1189::40 :warning:  unused typedef 'js_static_assert60' [-Wunused-local-typedef]note: 
expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);

                                       ^        ^

../jsutil.h:../jsutil.h117::12041::21 :note:  expanded from macro 'JS_STATIC_ASSERT_GLUE1'note: 
expanded from macro 'JS_STATIC_ASSERT'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]1
:                    ^ 
note: ../jsutil.hexpanded from here:
118:40js_static_assert37:
 ^note: 
expanded from macro 'JS_STATIC_ASSERT_GLUE'
In file included from ../jsdbgapi.cpp:52:
In file included from ../jscntxt.h    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y):
59                                       ^:

In file included from ../jsutil.h../jsatom.h::11752::
41../jsstr.h:: 571:note: 9expanded from macro 'JS_STATIC_ASSERT_GLUE1':
 warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +

        ^
:../jsutil.h80::1201::21 :note:  expanded from herenote: 
expanded from macro 'JS_STATIC_ASSERT'
js_static_assert60
^
In file included from ../jsdtoa.cpp:52:
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]In file included from 
../jscntxt.h                    ^:
66:
../jsutil.h../jsinterp.h::118778::409:: note:  expanded from macro 'JS_STATIC_ASSERT_GLUE'warning: 
unused typedef 'js_static_assert59' [-Wunused-local-typedef]
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);../jsutil.h
:        ^117
:41../jsutil.h:: 120note: :expanded from macro 'JS_STATIC_ASSERT_GLUE1'21
: note: expanded from macro 'JS_STATIC_ASSERT'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1:         typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]note: 
expanded from here                    ^

../jsutil.hjs_static_assert43:
118^:
40:In file included from ../jsdbgapi.cpp :note: 52expanded from macro 'JS_STATIC_ASSERT_GLUE':

In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)../jsstr.h
:                                       ^568
:../jsutil.h9::117 :warning: 41unused typedef 'js_static_assert41' [-Wunused-local-typedef]:
 note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y        ^

                                        ^
../jsutil.h::12078::211::  note: note: expanded from macro 'JS_STATIC_ASSERT'
expanded from here
js_static_assert59
^
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^In file included from 
../jsdtoa.cpp../jsutil.h::54118:
:In file included from 40../jsobjinlines.h:: 53note: :
expanded from macro 'JS_STATIC_ASSERT_GLUE'In file included from 
../jsscope.h:59:
../jsstrinlines.h:202:5    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y):
                                        ^warning: 
unused typedef 'js_static_assert63' [-Wunused-local-typedef]../jsutil.h
:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y../jsutil.h
:                                        ^120
:21::408 :1note: :expanded from macro 'JS_STATIC_ASSERT' 
note: expanded from here
js_static_assert41
^
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]In file included from 
../jsdbgapi.cpp                    ^:
52../jsutil.h:
:In file included from 118../jscntxt.h::4059::
 In file included from note: ../jsatom.hexpanded from macro 'JS_STATIC_ASSERT_GLUE':
52:
../jsstr.h:570:9:     #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)warning: 
unused typedef 'js_static_assert42' [-Wunused-local-typedef]                                       ^

../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));

        ^
../jsutil.h:120:    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y21
:                                        ^ 
note: expanded from macro 'JS_STATIC_ASSERT':
176:1: note: expanded from here
js_static_assert63        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]

^                    ^

../jsutil.h:In file included from 118../jsdtoa.cpp::4054::
 In file included from note: ../jsobjinlines.hexpanded from macro 'JS_STATIC_ASSERT_GLUE':
53:
In file included from ../jsscope.h:59    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y):

../jsstrinlines.h                                       ^:
280../jsutil.h::5117::41 :warning:  unused typedef 'js_static_assert64' [-Wunused-local-typedef]note: 
expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);

                                        ^    ^

:../jsutil.h410::1201::21 :note:  expanded from herenote: 
expanded from macro 'JS_STATIC_ASSERT'
js_static_assert42
^
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
In file included from                     ^../jsdbgapi.cpp
:52../jsutil.h:
:In file included from 118../jscntxt.h::4062::
 In file included from note: ../jsfun.hexpanded from macro 'JS_STATIC_ASSERT_GLUE':
49:
../jsscript.h:84:9:    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y) 
warning:                                        ^unused typedef 'js_static_assert46' [-Wunused-local-typedef]

../jsutil.h:117:41: note:         JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);expanded from macro 'JS_STATIC_ASSERT_GLUE1'

        ^
../jsutil.h:120    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y:
21                                        ^:
 note: expanded from macro 'JS_STATIC_ASSERT':
178:1: note: expanded from here
js_static_assert64        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]

^                    ^

../jsutil.hIn file included from :../jsdtoa.cpp118::5440:
:In file included from  ../jsobjinlines.hnote: :expanded from macro 'JS_STATIC_ASSERT_GLUE'53
:
../jsscope.h:431:9: warning:     #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)unused typedef 'js_static_assert65' [-Wunused-local-typedef]

                                       ^
../jsutil.h:117:41:         JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));note: 
expanded from macro 'JS_STATIC_ASSERT_GLUE1'        ^

../jsutil.h:    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y120
:                                        ^21
: note: expanded from macro 'JS_STATIC_ASSERT':
52:1: note: expanded from here
js_static_assert46        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]

^                    ^

../jsutil.hIn file included from :../jsdbgapi.cpp118::5240:
:In file included from  ../jscntxt.hnote: :expanded from macro 'JS_STATIC_ASSERT_GLUE'62
:
In file included from ../jsfun.h:49:
../jsscript.h:83:    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)9
:                                       ^ 
warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]../jsutil.h
:117:41: note:         JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));expanded from macro 'JS_STATIC_ASSERT_GLUE1'

        ^
../jsutil.h:120:    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y21
:                                        ^ 
note: expanded from macro 'JS_STATIC_ASSERT':
180:1: note: expanded from here
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]js_static_assert65

                    ^^

../jsutil.h:118:40: In file included from note: ../jsdtoa.cppexpanded from macro 'JS_STATIC_ASSERT_GLUE':
49:
In file included from ../jsnum.h:53:
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)../jsstr.h
:                                       ^525
:../jsutil.h14::117 :warning: 41private field 'mDummy' is not used [-Wunused-private-field]:
 note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    JSString mDummy;
             ^
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^In file included from 
../jsdtoa.cpp::5250:
:../jscntxt.h1::250 :note: 26expanded from here:
 warning: private field 'padding' is not used [-Wunused-private-field]js_static_assert45

^
    void                *padding;In file included from 
../jsdbgapi.cpp                         ^:
52:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../jsdbgapi.cpp:52:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../jsdbgapi.cpp:52:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../jsdbgapi.cpp:52:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../jsdbgapi.cpp:52:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../jsdbgapi.cpp:52:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../jsdbgapi.cpp:63:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:176:1: note: expanded from here
js_static_assert63
^
In file included from ../jsdbgapi.cpp:63:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:178:1: note: expanded from here
js_static_assert64
^
In file included from ../jsdbgapi.cpp:63:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:180:1: note: expanded from here
js_static_assert65
^
In file included from ../jsdbgapi.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jsdbgapi.cpp:52:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
../jsemit.cpp:4100:10: warning: variable 'forInLet' set but not used [-Wunused-but-set-variable]
    bool forInLet, popScope;
         ^
../jsemit.cpp:5675:19: warning: variable 'blockObj' set but not used [-Wunused-but-set-variable]
        JSObject *blockObj;
                  ^
In file included from ../jsemit.cpp:56:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsemit.cpp:56:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsemit.cpp:56:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsemit.cpp:56:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsemit.cpp:56:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jsemit.cpp:56:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsemit.h:550:36: note: in instantiation of member function 'js::Vector::Vector' requested here
    JSGCConstList(JSContext *cx) : list(cx) {}
                                   ^
In file included from ../jsemit.cpp:56:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jsemit.cpp:56:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jsemit.cpp:56:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jsemit.cpp:73:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jsemit.cpp:56:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jsemit.cpp:56:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsemit.cpp:120:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    globalUses(ContextAllocPolicy(parser->context)),
    ^
In file included from ../jsemit.cpp:56:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsemit.cpp:121:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    closedArgs(ContextAllocPolicy(parser->context)),
    ^
In file included from ../jsemit.cpp:56:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsemit.cpp:56:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jsemit.cpp:56:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsemit.cpp:56:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsemit.cpp:56:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jsemit.cpp:56:
In file included from ../jsatom.h:52:
../jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsemit.cpp:56:
In file included from ../jsatom.h:52:
../jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsemit.cpp:56:
In file included from ../jsatom.h:52:
../jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jsemit.cpp:56:
In file included from ../jsatom.h:52:
../jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsemit.cpp:58:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../jsemit.cpp:58:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../jsemit.cpp:58:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../jsemit.cpp:58:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../jsemit.cpp:58:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../jsemit.cpp:58:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../jsemit.cpp:58:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../jsemit.cpp:58:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../jsemit.cpp:67:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:176:1: note: expanded from here
js_static_assert63
^
In file included from ../jsemit.cpp:67:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:178:1: note: expanded from here
js_static_assert64
^
In file included from ../jsemit.cpp:67:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:180:1: note: expanded from here
js_static_assert65
^
../jsemit.cpp:1318:5: warning: unused typedef 'js_static_assert67' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(SHARP_NSLOTS == 2);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:184:1: note: expanded from here
js_static_assert67
^
../jsemit.cpp:1774:5: warning: unused typedef 'js_static_assert69' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INDEX_LIMIT >=
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:188:1: note: expanded from here
js_static_assert69
^
../jsemit.cpp:1773:5: warning: unused typedef 'js_static_assert68' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INDEX_LIMIT <= JS_BIT(24));
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:186:1: note: expanded from here
js_static_assert68
^
In file included from ../jsemit.cpp:56:
In file included from ../jsatom.h:52:
../jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jsemit.cpp:58:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
41 warnings generated.
jsexn.cpp
c++ -o jsexn.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsexn.pp ../jsexn.cpp
In file included from ../jsexn.cpp:48:
In file included from ../jsbit.h:44:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
61 warnings generated.
jsfriendapi.cpp
c++ -o jsfriendapi.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsfriendapi.pp ../jsfriendapi.cpp
In file included from ../jsfriendapi.cpp:40:
In file included from ../jscntxt.h:55:
In file included from ../jsprvtd.h:57:
In file included from ../jspubtd.h:47:
In file included from ../jsval.h:48:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsexn.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jsexn.cpp:52:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsexn.cpp:52:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
40 warnings generated.
jsfun.cpp
c++ -o jsfun.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsfun.pp ../jsfun.cpp
In file included from ../jsexn.cpp:61:
In file included from ../jsscope.h:59:
In file included from ../jsstrinlines.h:44:
In file included from ../jscntxtinlines.h:46:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsfriendapi.cpp:40:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jsfun.cpp:47:
In file included from ../jsbit.h:44:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
58 warnings generated.
jsgc.cpp
c++ -o jsgc.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsgc.pp ../jsgc.cpp
In file included from ../jsexn.cpp:68:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
In file included from ../jsfriendapi.cpp:40:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
../jsexn.cpp:189:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSErrorReport *' increases required alignment from 1 to 4 [-Wcast-align]
    copy = (JSErrorReport *)cursor;
           ^~~~~~~~~~~~~~~~~~~~~~~
../jsexn.cpp:194:29: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'const jschar **' (aka 'const unsigned short **') increases required alignment from 1 to 4 [-Wcast-align]
        copy->messageArgs = (const jschar **)cursor;
                            ^~~~~~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsexn.cpp:../jsatom.h:197:36: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'const jschar *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
445:6: note: expanded from macro 'COMMON_ATOMS_START'
            copy->messageArgs[i] = (const jschar *)cursor;
                                   ^~~~~~~~~~~~~~~~~~~~~~
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsexn.cpp:207:27: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'const jschar *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
        copy->ucmessage = (const jschar *)cursor;
                          ^~~~~~~~~~~~~~~~~~~~~~
../jsexn.cpp:213:27: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'const jschar *' (aka 'const unsigned short *') increases required alignment from 1 to 2 [-Wcast-align]
        copy->uclinebuf = (const jschar *)cursor;
                          ^~~~~~~~~~~~~~~~~~~~~~
../jsexn.cpp:260:12: warning: cast from 'JSStackTraceElem *' to 'jsval *' (aka 'unsigned long long *') increases required alignment from 4 to 8 [-Wcast-align]
    return (jsval *)(priv->stackElems + priv->stackDepth);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsexn.cpp:451:17: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
        atom = *(JSAtom **)((uint8 *)atomState + offsets[i]);
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsfriendapi.cpp:40:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsgc.cpp:56:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsfriendapi.cpp:40:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsfriendapi.cpp:40:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsfriendapi.cpp:40:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsfriendapi.cpp:40:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsfriendapi.cpp:40:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsfriendapi.cpp:40:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jsfriendapi.cpp:40:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsfriendapi.cpp:40:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsfriendapi.cpp:40:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jsfriendapi.cpp:40:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsfriendapi.cpp:40:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jsfriendapi.cpp:40:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsfriendapi.cpp:40:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsfriendapi.cpp:40:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../jsfriendapi.cpp:40:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../jsfriendapi.cpp:40:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../jsfriendapi.cpp:40:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../jsfriendapi.cpp:40:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../jsfriendapi.cpp:40:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../jsfriendapi.cpp:40:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../jsfriendapi.cpp:40:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../jsexn.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
26 warnings generated.
In file included from ../jsexn.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^jsgcchunk.cpp

../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11:c++ -o jsgcchunk.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsgcchunk.pp ../jsgcchunk.cpp
 note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsexn.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsexn.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsexn.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jsexn.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jsexn.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jsexn.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jsexn.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:205:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    ExecutableAllocator() {}
    ^
In file included from ../jsexn.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:412:24: note: in instantiation of member function 'js::Vector::Vector' requested here
inline ExecutablePool::ExecutablePool(size_t n) : m_refCount(1), m_destroy(false), m_gcNumber(0)
                       ^
In file included from ../jsexn.cpp:68:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jsexn.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jsexn.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsexn.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
In file included from ../jsgcchunk.cpp:37:
In file included from ../jsgcchunk.h:43:
In file included from ../jsprvtd.h:57        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
:
In file included from ../jspubtd.h:../jsutil.h:118:40: 47:
In file included from ../jsval.hnote: expanded from macro 'JS_STATIC_ASSERT_GLUE'
:48:
../jsutil.h:304:2:    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
 warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
../jsutil.h:117:        *(size_t *)memory = n;
        ^
41:../jsutil.h: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
302:5:    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                         ^
note: previous statement is here:336:
1:     if (!memory)
    ^
note: expanded from here
js_static_assert5
^
In file included from ../jsexn.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsexn.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsexn.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jsexn.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsexn.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsexn.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsexn.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jsexn.cpp:52:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../jsexn.cpp:52:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../jsexn.cpp:52:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../jsexn.cpp:52:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../jsexn.cpp:52:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../jsexn.cpp:52:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../jsexn.cpp:52:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../jsexn.cpp:52:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../jsexn.cpp:61:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:176:1: note: expanded from here
js_static_assert63
^
In file included from ../jsexn.cpp:61:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:178:1: note: expanded from here
js_static_assert64
^
In file included from ../jsexn.cpp:61:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:180:1: note: expanded from here
js_static_assert65
^
../jsexn.cpp:147:5: warning: unused typedef 'js_static_assert66' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(sizeof(JSErrorReport) % sizeof(const char *) == 0);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:182:1: note: expanded from here
js_static_assert66
^
../jsexn.cpp:148:5: warning: unused typedef 'js_static_assert67' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(sizeof(const char *) % sizeof(jschar) == 0);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:184:1: note: expanded from here
js_static_assert67
^
../jsexn.cpp:258:5: warning: unused typedef 'js_static_assert68' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(sizeof(JSStackTraceElem) % sizeof(jsval) == 0);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:186:1: note: expanded from here
js_static_assert68
^
../jsexn.cpp:441:5: warning: unused typedef 'js_static_assert69' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(sizeof(JSAtomState) <= (size_t)(uint16)-1);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:188:1: note: expanded from here
js_static_assert69
^
In file included from ../jsexn.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jsexn.cpp:52:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
In file included from ../jsfun.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
1 warning generated.
jsgcstats.cpp
c++ -o jsgcstats.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsgcstats.pp ../jsgcstats.cpp
In file included from ../jsgc.cpp:62:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jsgcstats.cpp:40:
In file included from ../jscntxt.h:55:
In file included from ../jsprvtd.h:57:
In file included from ../jspubtd.h:47:
In file included from ../jsval.h:48:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsfun.cpp:53:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jsfun.cpp:53:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jsgc.cpp:63:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
In file included from ../jsfun.cpp:54:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsgc.cpp:63:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsfun.cpp:54:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsgc.cpp:75:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsfun.cpp:57:
In file included from ../jsemit.h:49:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsgcstats.cpp:40:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jsgc.cpp:81:
In file included from ../jstracer.h:48:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jsgc.cpp:81:
In file included from ../jstracer.h:48:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jsgcstats.cpp:40:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsgcstats.cpp:40:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsfun.cpp:92:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
In file included from ../jsgc.cpp:91:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
In file included from ../jsgcstats.cpp:44:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jsgcstats.cpp:44:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jsgcstats.cpp:40:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsgcstats.cpp:40:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsgcstats.cpp:40:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsgcstats.cpp:40:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsgcstats.cpp:40:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsgcstats.cpp:40:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jsgcstats.cpp:40:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsgcstats.cpp:40:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsgcstats.cpp:40:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jsgcstats.cpp:40:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsgcstats.cpp:40:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsgcstats.cpp:40:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jsgcstats.cpp:40:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsgcstats.cpp:40:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../jsgcstats.cpp:40:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../jsgcstats.cpp:40:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../jsgcstats.cpp:40:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../jsgcstats.cpp:40:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
../jsfun.cpp:1692:        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
27: ../jsutil.h:118:40: warning: cast from 'char *' to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
        id = ATOM_TO_JSID(OFFSET_TO_ATOM(cx->runtime, lfp.atomOffset));
                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)../jsatom.h:454:35: note: 
expanded from macro 'OFFSET_TO_ATOM'
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
#define OFFSET_TO_ATOM(rt,off)  (*(JSAtom **)((char*)&(rt)->atomState + (off)))
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../jsgcstats.cpp:40:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: ../jsfun.cpp:expanded from macro 'JS_STATIC_ASSERT_GLUE'
1699:27: warning: cast from 'char *' to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^

../jsutil.h:117:41: note:         id = ATOM_TO_JSID(OFFSET_TO_ATOM(cx->runtime, p.atomOffset));
                          ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
expanded from macro 'JS_STATIC_ASSERT_GLUE1'../jsatom.h:454
:35:     #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
note: expanded from macro 'OFFSET_TO_ATOM'                                        ^

:74:1: note: expanded from here
#define OFFSET_TO_ATOM(rt,off)  (*(JSAtom **)((char*)&(rt)->atomState + (off)))
js_static_assert57
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
^
In file included from ../jsgcstats.cpp:40:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../jsgcstats.cpp:40:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
../jsfun.cpp:1795:30: warning: cast from 'char *' to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
        if (JSID_IS_ATOM(id, OFFSET_TO_ATOM(cx->runtime, lfp->atomOffset))) {
                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:454:35: note: expanded from macro 'OFFSET_TO_ATOM'
#define OFFSET_TO_ATOM(rt,off)  (*(JSAtom **)((char*)&(rt)->atomState + (off)))
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsfun.cpp:1812:30: warning: cast from 'char *' to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
        if (JSID_IS_ATOM(id, OFFSET_TO_ATOM(cx->runtime, p.atomOffset))) {
                             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:454:35: note: expanded from macro 'OFFSET_TO_ATOM'
#define OFFSET_TO_ATOM(rt,off)  (*(JSAtom **)((char*)&(rt)->atomState + (off)))
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
28 warnings generated.
jshash.cpp
c++ -o jshash.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jshash.pp ../jshash.cpp
In file included from ../jshash.cpp:47:
In file included from ../jsbit.h:44:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsfun.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsfun.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
./dist/include/jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
./dist/include/jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsfun.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
./dist/include/jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
./dist/include/jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsfun.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
./dist/include/jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
./dist/include/jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsfun.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34:In file included from ../jsgc.cpp:62:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56 warning: field 'storage' is uninitialized when used here [-Wuninitialized]
:
In file included from ./dist/include/jsobj.h:65:
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
../jsvector.h                                 ^
:394:../jsparse.h:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
308:39:   : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
note: in instantiation of member function 'js::Vector::Vector' requested here
../jsgc.h:926:5:       : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsfun.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsemit.h:550:36: note: in instantiation of member function 'js::Vector::Vector' requested here
    JSGCConstList(JSContext *cx) : list(cx) {}
                                   ^
In file included from ../jsgc.cpp:62:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsgc.cpp:62:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsgc.cpp:62:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
In file included from ../jsfun.cpp:50:
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
In file included from ../jsarray.h:47:
In file included from ../jsatom.h                                 ^
:../jscntxt.h:3236:34: note: 52in instantiation of member function 'js::Vector::Vector' requested here
:
In file included from ./dist/include/jsstr.h:56        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jsgc.cpp:62:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jsfun.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jsgc.cpp:62:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jsfun.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jsgc.cpp:62:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jsfun.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:205:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    ExecutableAllocator() {}
    ^
In file included from ../jsgc.cpp:62:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jsfun.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:412:24: note: in instantiation of member function 'js::Vector::Vector' requested here
inline ExecutablePool::ExecutablePool(size_t n) : m_refCount(1), m_destroy(false), m_gcNumber(0)
                       ^
In file included from ../jsfun.cpp:92:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jsgc.cpp:62:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:205:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    ExecutableAllocator() {}
    ^
In file included from ../jsfun.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jsgc.cpp:62:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:412:24: note: in instantiation of member function 'js::Vector::Vector' requested here
inline ExecutablePool::ExecutablePool(size_t n) : m_refCount(1), m_destroy(false), m_gcNumber(0)
                       ^
In file included from ../jsgc.cpp:91:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jsgc.cpp:62:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jsfun.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsfun.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jsfun.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsfun.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsfun.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jsfun.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsfun.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jsfun.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsfun.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsfun.cpp:54:
In file included from ./dist/include/jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:262:1: note: expanded from here
js_static_assert45
^
In file included from ../jsfun.cpp:54:
In file included from ./dist/include/jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:264:1: note: expanded from here
js_static_assert46
^
In file included from ../jsfun.cpp:54:
In file included from ./dist/include/jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:268:1: note: expanded from here
js_static_assert48
^
In file included from ../jsfun.cpp:54:
In file included from ./dist/include/jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:266:1: note: expanded from here
js_static_assert47
^
In file included from ../jsfun.cpp:54:
In file included from ./dist/include/jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:284:1: note: expanded from here
js_static_assert56
^
In file included from ../jsfun.cpp:54:
In file included from ./dist/include/jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:286:1: note: expanded from here
js_static_assert57
^
In file included from ../jsfun.cpp:54:
In file included from ./dist/include/jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:290:1: note: expanded from here
js_static_assert59
^
In file included from ../jsfun.cpp:54:
In file included from ./dist/include/jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:292:1: note: expanded from here
js_static_assert60
^
In file included from ../jsfun.cpp:69:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:67:1: note: expanded from here
js_static_assert63
^
In file included from ../jsfun.cpp:69:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:69:1: note: expanded from here
js_static_assert64
^
In file included from ../jsfun.cpp:69:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:71:1: note: expanded from here
js_static_assert65
^
../jsfun.cpp:187:5: warning: unused typedef 'js_static_assert66' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSObject::ARGS_CLASS_RESERVED_SLOTS == 2);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:97:1: note: expanded from here
js_static_assert66
^
In file included from ../jsfun.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jsfun.cpp:54:
./dist/include/jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
../jsgc.cpp:581:36: warning: cast from 'js::gc::Cell *' to 'JSString *' increases required alignment from 1 to 4 [-Wcast-align]
    return GetArena(cell)->mark((T *)cell, trc);
                                   ^~~~~~~~~
../jsgc.cpp:662:20: note: in instantiation of function template specialization 'js::MarkCell' requested here
            test = MarkCell(cell, trc);
                   ^
../jsgc.cpp:581:36: warning: cast from 'js::gc::Cell *' to 'JSExternalString *' increases required alignment from 1 to 4 [-Wcast-align]
    return GetArena(cell)->mark((T *)cell, trc);
                                   ^~~~~~~~~
../jsgc.cpp:665:20: note: in instantiation of function template specialization 'js::MarkCell' requested here
            test = MarkCell(cell, trc);
                   ^
In file included from ../jsgc.cpp:63:
In file included from ../jscntxt.h:63:
../jsgc.h:312:13: warning: cast from 'Arena *' to 'Arena *' increases required alignment from 4 to 8 [-Wcast-align]
    arena = (Arena *)getOtherArena();
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsgc.cpp:328:44: note: in instantiation of function template specialization 'js::gc::EmptyArenaLists::getNext' requested here
    Arena *arena = info.emptyArenaLists.getNext(comp, thingKind);
                                           ^
../jsgc.cpp:486:19: note: in instantiation of function template specialization 'js::gc::Chunk::allocateArena' requested here
    return chunk->allocateArena(cx->compartment, thingKind);
                  ^
../jsgc.cpp:1160:13: note: in instantiation of function template specialization 'AllocateArena' requested here
        a = AllocateArena(cx, thingKind);
            ^
../jsgc.cpp:1181:16: note: in instantiation of function template specialization 'RefillTypedFreeList' requested here
        return RefillTypedFreeList(cx, thingKind);
               ^
In file included from ../jsgc.cpp:63:
In file included from ../jscntxt.h:63:
../jsgc.h:292:23: warning: cast from 'Arena *' to 'Arena *' increases required alignment from 4 to 8 [-Wcast-align]
    Arena *arena = (Arena*) freeLists[thingKind];
                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsgc.h:303:23: note: in instantiation of function template specialization 'js::gc::EmptyArenaLists::getTypedFreeList' requested here
    Arena *arena = getTypedFreeList(thingKind);
                      ^
../jsgc.cpp:328:44: note: in instantiation of function template specialization 'js::gc::EmptyArenaLists::getNext' requested here
    Arena *arena = info.emptyArenaLists.getNext(comp, thingKind);
                                           ^
../jsgc.cpp:486:19: note: in instantiation of function template specialization 'js::gc::Chunk::allocateArena' requested here
    return chunk->allocateArena(cx->compartment, thingKind);
                  ^
../jsgc.cpp:1160:13: note: in instantiation of function template specialization 'AllocateArena' requested here
        a = AllocateArena(cx, thingKind);
            ^
../jsgc.cpp:1181:16: note: in instantiation of function template specialization 'RefillTypedFreeList' requested here
        return RefillTypedFreeList(cx, thingKind);
               ^
In file included from ../jsgc.cpp:63:
In file included from ../jscntxt.h:63:
../jsgc.h:312:13: warning: cast from 'Arena *' to 'Arena *' increases required alignment from 4 to 8 [-Wcast-align]
    arena = (Arena *)getOtherArena();
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsgc.cpp:328:44: note: in instantiation of function template specialization 'js::gc::EmptyArenaLists::getNext' requested here
    Arena *arena = info.emptyArenaLists.getNext(comp, thingKind);
                                           ^
../jsgc.cpp:486:19: note: in instantiation of function template specialization 'js::gc::Chunk::allocateArena' requested here
    return chunk->allocateArena(cx->compartment, thingKind);
                  ^
../jsgc.cpp:1160:13: note: in instantiation of function template specialization 'AllocateArena' requested here
        a = AllocateArena(cx, thingKind);
            ^
../jsgc.cpp:1183:16: note: in instantiation of function template specialization 'RefillTypedFreeList' requested here
        return RefillTypedFreeList(cx, thingKind);
               ^
In file included from ../jsgc.cpp:63:
In file included from ../jscntxt.h:63:
../jsgc.h:292:23: warning: cast from 'Arena *' to 'Arena *' increases required alignment from 4 to 8 [-Wcast-align]
    Arena *arena = (Arena*) freeLists[thingKind];
                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsgc.h:303:23: note: in instantiation of function template specialization 'js::gc::EmptyArenaLists::getTypedFreeList' requested here
    Arena *arena = getTypedFreeList(thingKind);
                      ^
../jsgc.cpp:328:44: note: in instantiation of function template specialization 'js::gc::EmptyArenaLists::getNext' requested here
    Arena *arena = info.emptyArenaLists.getNext(comp, thingKind);
                                           ^
../jsgc.cpp:486:19: note: in instantiation of function template specialization 'js::gc::Chunk::allocateArena' requested here
    return chunk->allocateArena(cx->compartment, thingKind);
                  ^
../jsgc.cpp:1160:13: note: in instantiation of function template specialization 'AllocateArena' requested here
        a = AllocateArena(cx, thingKind);
            ^
../jsgc.cpp:1183:16: note: in instantiation of function template specialization 'RefillTypedFreeList' requested here
        return RefillTypedFreeList(cx, thingKind);
               ^
In file included from ../jsgc.cpp:63:
In file included from ../jscntxt.h:63:
../jsgc.h:312:13: warning: cast from 'Arena *' to 'Arena *' increases required alignment from 4 to 8 [-Wcast-align]
    arena = (Arena *)getOtherArena();
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsgc.cpp:328:44: note: in instantiation of function template specialization 'js::gc::EmptyArenaLists::getNext' requested here
    Arena *arena = info.emptyArenaLists.getNext(comp, thingKind);
                                           ^
../jsgc.cpp:486:19: note: in instantiation of function template specialization 'js::gc::Chunk::allocateArena' requested here
    return chunk->allocateArena(cx->compartment, thingKind);
                  ^
../jsgc.cpp:1160:13: note: in instantiation of function template specialization 'AllocateArena' requested here
        a = AllocateArena(cx, thingKind);
            ^
../jsgc.cpp:1185:16: note: in instantiation of function template specialization 'RefillTypedFreeList' requested here
        return RefillTypedFreeList(cx, thingKind);
               ^
In file included from ../jsgc.cpp:63:
In file included from ../jscntxt.h:63:
../jsgc.h:292:23: warning: cast from 'Arena *' to 'Arena *' increases required alignment from 4 to 8 [-Wcast-align]
    Arena *arena = (Arena*) freeLists[thingKind];
                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsgc.h:303:23: note: in instantiation of function template specialization 'js::gc::EmptyArenaLists::getTypedFreeList' requested here
    Arena *arena = getTypedFreeList(thingKind);
                      ^
../jsgc.cpp:328:44: note: in instantiation of function template specialization 'js::gc::EmptyArenaLists::getNext' requested here
    Arena *arena = info.emptyArenaLists.getNext(comp, thingKind);
                                           ^
../jsgc.cpp:486:19: note: in instantiation of function template specialization 'js::gc::Chunk::allocateArena' requested here
    return chunk->allocateArena(cx->compartment, thingKind);
                  ^
../jsgc.cpp:1160:13: note: in instantiation of function template specialization 'AllocateArena' requested here
        a = AllocateArena(cx, thingKind);
            ^
../jsgc.cpp:1185:16: note: in instantiation of function template specialization 'RefillTypedFreeList' requested here
        return RefillTypedFreeList(cx, thingKind);
               ^
In file included from ../jsgc.cpp:63:
In file included from ../jscntxt.h:63:
../jsgc.h:312:13: warning: cast from 'Arena *' to 'Arena *' increases required alignment from 4 to 8 [-Wcast-align]
    arena = (Arena *)getOtherArena();
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsgc.cpp:328:44: note: in instantiation of function template specialization 'js::gc::EmptyArenaLists::getNext' requested here
    Arena *arena = info.emptyArenaLists.getNext(comp, thingKind);
                                           ^
../jsgc.cpp:486:19: note: in instantiation of function template specialization 'js::gc::Chunk::allocateArena' requested here
    return chunk->allocateArena(cx->compartment, thingKind);
                  ^
../jsgc.cpp:1160:13: note: in instantiation of function template specialization 'AllocateArena' requested here
        a = AllocateArena(cx, thingKind);
            ^
../jsgc.cpp:1187:16: note: in instantiation of function template specialization 'RefillTypedFreeList' requested here
        return RefillTypedFreeList(cx, thingKind);
               ^
In file included from ../jsgc.cpp:63:
In file included from ../jscntxt.h:63:
../jsgc.h:292:23: warning: cast from 'Arena *' to 'Arena *' increases required alignment from 4 to 8 [-Wcast-align]
    Arena *arena = (Arena*) freeLists[thingKind];
                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsgc.h:303:23: note: in instantiation of function template specialization 'js::gc::EmptyArenaLists::getTypedFreeList' requested here
    Arena *arena = getTypedFreeList(thingKind);
                      ^
../jsgc.cpp:328:44: note: in instantiation of function template specialization 'js::gc::EmptyArenaLists::getNext' requested here
    Arena *arena = info.emptyArenaLists.getNext(comp, thingKind);
                                           ^
../jsgc.cpp:486:19: note: in instantiation of function template specialization 'js::gc::Chunk::allocateArena' requested here
    return chunk->allocateArena(cx->compartment, thingKind);
                  ^
../jsgc.cpp:1160:13: note: in instantiation of function template specialization 'AllocateArena' requested here
        a = AllocateArena(cx, thingKind);
            ^
../jsgc.cpp:1187:16: note: in instantiation of function template specialization 'RefillTypedFreeList' requested here
        return RefillTypedFreeList(cx, thingKind);
               ^
In file included from ../jsgc.cpp:63:
In file included from ../jscntxt.h:63:
../jsgc.h:312:13: warning: cast from 'Arena *' to 'Arena *' increases required alignment from 4 to 8 [-Wcast-align]
    arena = (Arena *)getOtherArena();
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsgc.cpp:328:44: note: in instantiation of function template specialization 'js::gc::EmptyArenaLists::getNext' requested here
    Arena *arena = info.emptyArenaLists.getNext(comp, thingKind);
                                           ^
../jsgc.cpp:486:19: note: in instantiation of function template specialization 'js::gc::Chunk::allocateArena' requested here
    return chunk->allocateArena(cx->compartment, thingKind);
                  ^
../jsgc.cpp:1160:13: note: in instantiation of function template specialization 'AllocateArena' requested here
        a = AllocateArena(cx, thingKind);
            ^
../jsgc.cpp:1189:16: note: in instantiation of function template specialization 'RefillTypedFreeList' requested here
        return RefillTypedFreeList(cx, thingKind);
               ^
In file included from ../jsgc.cpp:63:
In file included from ../jscntxt.h:63:
../jsgc.h:292:23: warning: cast from 'Arena *' to 'Arena *' increases required alignment from 4 to 8 [-Wcast-align]
    Arena *arena = (Arena*) freeLists[thingKind];
                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsgc.h:303:23: note: in instantiation of function template specialization 'js::gc::EmptyArenaLists::getTypedFreeList' requested here
    Arena *arena = getTypedFreeList(thingKind);
                      ^
../jsgc.cpp:328:44: note: in instantiation of function template specialization 'js::gc::EmptyArenaLists::getNext' requested here
    Arena *arena = info.emptyArenaLists.getNext(comp, thingKind);
                                           ^
../jsgc.cpp:486:19: note: in instantiation of function template specialization 'js::gc::Chunk::allocateArena' requested here
    return chunk->allocateArena(cx->compartment, thingKind);
                  ^
../jsgc.cpp:1160:13: note: in instantiation of function template specialization 'AllocateArena' requested here
        a = AllocateArena(cx, thingKind);
            ^
../jsgc.cpp:1189:16: note: in instantiation of function template specialization 'RefillTypedFreeList' requested here
        return RefillTypedFreeList(cx, thingKind);
               ^
In file included from ../jsgc.cpp:63:
In file included from ../jscntxt.h:63:
../jsgc.h:312:13: warning: cast from 'Arena *' to 'Arena *' increases required alignment from 4 to 8 [-Wcast-align]
    arena = (Arena *)getOtherArena();
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsgc.cpp:328:44: note: in instantiation of function template specialization 'js::gc::EmptyArenaLists::getNext' requested here
    Arena *arena = info.emptyArenaLists.getNext(comp, thingKind);
                                           ^
../jsgc.cpp:486:19: note: in instantiation of function template specialization 'js::gc::Chunk::allocateArena' requested here
    return chunk->allocateArena(cx->compartment, thingKind);
                  ^
../jsgc.cpp:1160:13: note: in instantiation of function template specialization 'AllocateArena' requested here
        a = AllocateArena(cx, thingKind);
            ^
../jsgc.cpp:1197:16: note: in instantiation of function template specialization 'RefillTypedFreeList' requested here
        return RefillTypedFreeList(cx, thingKind);
               ^
In file included from ../jsgc.cpp:63:
In file included from ../jscntxt.h:63:
../jsgc.h:292:23: warning: cast from 'Arena *' to 'Arena *' increases required alignment from 4 to 8 [-Wcast-align]
    Arena *arena = (Arena*) freeLists[thingKind];
                      ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsgc.h:303:23: note: in instantiation of function template specialization 'js::gc::EmptyArenaLists::getTypedFreeList' requested here
    Arena *arena = getTypedFreeList(thingKind);
                      ^
../jsgc.cpp:328:44: note: in instantiation of function template specialization 'js::gc::EmptyArenaLists::getNext' requested here
    Arena *arena = info.emptyArenaLists.getNext(comp, thingKind);
                                           ^
../jsgc.cpp:486:19: note: in instantiation of function template specialization 'js::gc::Chunk::allocateArena' requested here
    return chunk->allocateArena(cx->compartment, thingKind);
                  ^
../jsgc.cpp:1160:13: note: in instantiation of function template specialization 'AllocateArena' requested here
        a = AllocateArena(cx, thingKind);
            ^
../jsgc.cpp:1197:16: note: in instantiation of function template specialization 'RefillTypedFreeList' requested here
        return RefillTypedFreeList(cx, thingKind);
               ^
../jsgc.cpp:1896:19: warning: cast from 'Arena *' to 'Arena *' increases required alignment from 4 to 8 [-Wcast-align]
    Arena *a = (Arena *) *ap;
                  ^~~~~~~~~~~~~~~~
../jsgc.cpp:2006:5: note: in instantiation of function template specialization 'FinalizeArenaList' requested here
    FinalizeArenaList(this, cx, FINALIZE_OBJECT2);
    ^
../jsgc.cpp:1995:19: warning: cast from 'Arena *' to 'Arena *' increases required alignment from 4 to 8 [-Wcast-align]
        if (!(a = (Arena *) *ap))
                  ^~~~~~~~~~~~~~~~
../jsgc.cpp:1896:19: warning: cast from 'Arena *' to 'Arena *' increases required alignment from 4 to 8 [-Wcast-align]
    Arena *a = (Arena *) *ap;
                  ^~~~~~~~~~~~~~~~
../jsgc.cpp:2007:5: note: in instantiation of function template specialization 'FinalizeArenaList' requested here
    FinalizeArenaList(this, cx, FINALIZE_OBJECT4);
    ^
../jsgc.cpp:1995:19: warning: cast from 'Arena *' to 'Arena *' increases required alignment from 4 to 8 [-Wcast-align]
        if (!(a = (Arena *) *ap))
                  ^~~~~~~~~~~~~~~~
../jsgc.cpp:1896:19: warning: cast from 'Arena *' to 'Arena *' increases required alignment from 4 to 8 [-Wcast-align]
    Arena *a = (Arena *) *ap;
                  ^~~~~~~~~~~~~~~~
../jsgc.cpp:2008:5: note: in instantiation of function template specialization 'FinalizeArenaList' requested here
    FinalizeArenaList(this, cx, FINALIZE_OBJECT8);
    ^
../jsgc.cpp:1995:19: warning: cast from 'Arena *' to 'Arena *' increases required alignment from 4 to 8 [-Wcast-align]
        if (!(a = (Arena *) *ap))
                  ^~~~~~~~~~~~~~~~
../jsgc.cpp:1896:19: warning: cast from 'Arena *' to 'Arena *' increases required alignment from 4 to 8 [-Wcast-align]
    Arena *a = (Arena *) *ap;
                  ^~~~~~~~~~~~~~~~
../jsgc.cpp:2009:5: note: in instantiation of function template specialization 'FinalizeArenaList' requested here
    FinalizeArenaList(this, cx, FINALIZE_OBJECT12);
    ^
../jsgc.cpp:1995:19: warning: cast from 'Arena *' to 'Arena *' increases required alignment from 4 to 8 [-Wcast-align]
        if (!(a = (Arena *) *ap))
                  ^~~~~~~~~~~~~~~~
../jsgc.cpp:1896:19: warning: cast from 'Arena *' to 'Arena *' increases required alignment from 4 to 8 [-Wcast-align]
    Arena *a = (Arena *) *ap;
                  ^~~~~~~~~~~~~~~~
../jsgc.cpp:2010:5: note: in instantiation of function template specialization 'FinalizeArenaList' requested here
    FinalizeArenaList(this, cx, FINALIZE_OBJECT16);
    ^
../jsgc.cpp:1995:19: warning: cast from 'Arena *' to 'Arena *' increases required alignment from 4 to 8 [-Wcast-align]
        if (!(a = (Arena *) *ap))
                  ^~~~~~~~~~~~~~~~
../jsgc.cpp:1896:19: warning: cast from 'Arena *' to 'Arena *' increases required alignment from 4 to 8 [-Wcast-align]
    Arena *a = (Arena *) *ap;
                  ^~~~~~~~~~~~~~~~
../jsgc.cpp:2011:5: note: in instantiation of function template specialization 'FinalizeArenaList' requested here
    FinalizeArenaList(this, cx, FINALIZE_FUNCTION);
    ^
../jsgc.cpp:1995:19: warning: cast from 'Arena *' to 'Arena *' increases required alignment from 4 to 8 [-Wcast-align]
        if (!(a = (Arena *) *ap))
                  ^~~~~~~~~~~~~~~~
1 warning generated.
jsinterp.cpp
c++ -o jsinterp.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsinterp.pp ../jsinterp.cpp
In file included from ../jsgc.cpp:62:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jsgc.cpp:62:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsgc.cpp:62:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsgc.cpp:62:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jsgc.cpp:62:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsgc.cpp:62:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsgc.cpp:62:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsgc.cpp:62:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jsgc.cpp:62:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsgc.cpp:63:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../jsgc.cpp:63:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../jsgc.cpp:63:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../jsgc.cpp:63:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../jsgc.cpp:63:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../jsgc.cpp:63:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../jsgc.cpp:63:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../jsgc.cpp:63:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../jsgc.cpp:77:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:176:1: note: expanded from here
js_static_assert63
^
In file included from ../jsgc.cpp:77:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:178:1: note: expanded from here
js_static_assert64
^
In file included from ../jsgc.cpp:77:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:180:1: note: expanded from here
js_static_assert65
^
../jsgc.cpp:610:5: warning: unused typedef 'js_static_assert81' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSID_TYPE_STRING == 0 && JSID_TYPE_OBJECT == 4);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:127:1: note: expanded from here
js_static_assert81
^
../jsgc.cpp:1893:5: warning: unused typedef 'js_static_assert82' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(!(sizeof(T) & Cell::CellMask));
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:129:1: note: expanded from here
js_static_assert82
^
In file included from ../jsgc.cpp:62:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jsgc.cpp:63:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
52 warnings generated.
jsinvoke.cpp
c++ -o jsinvoke.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsinvoke.pp ../jsinvoke.cpp
In file included from ../jsinterp.cpp:50:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:50:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jsinterp.cpp:56:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:56:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
In file included from ../jsinterp.cpp:56:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:56:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsinterp.cpp:70:
In file included from ../jsemit.h:49:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:70:
In file included from ../jsemit.h:49:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsinterp.cpp:75:
In file included from ../jstracer.h:48:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jsinterp.cpp:75:
In file included from ../jstracer.h:48:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:75:
In file included from ../jstracer.h:48:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:75:
In file included from ../jstracer.h:48:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jsinterp.cpp:85:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:85:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
../jsinterp.cpp:2587:17: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
        atoms = COMMON_ATOMS_START(&rt->atomState);
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsinterp.cpp:2753:25: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
                atoms = COMMON_ATOMS_START(&rt->atomState);
                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsemit.h:550:36: note: in instantiation of member function 'js::Vector::Vector' requested here
    JSGCConstList(JSContext *cx) : list(cx) {}
                                   ^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:205:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    ExecutableAllocator() {}
    ^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:412:24: note: in instantiation of member function 'js::Vector::Vector' requested here
inline ExecutablePool::ExecutablePool(size_t n) : m_refCount(1), m_destroy(false), m_gcNumber(0)
                       ^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:85:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../methodjit/BaseAssembler.h:206:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : callPatches(SystemAllocPolicy()),
        ^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:56:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:56:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:56:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:56:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:56:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:56:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:56:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:56:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:71:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:176:1: note: expanded from here
js_static_assert63
^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:71:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:178:1: note: expanded from here
js_static_assert64
^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:71:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:180:1: note: expanded from here
js_static_assert65
^
In file included from ../jsinvoke.cpp:42:
../jsinterp.cpp:993:5: warning: unused typedef 'js_static_assert66' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(SHARP_NSLOTS == 2);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:106:1: note: expanded from here
js_static_assert66
^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jsinvoke.cpp:42:
In file included from ../jsinterp.cpp:56:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
47 warnings generated.
jsiter.cpp
c++ -o jsiter.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsiter.pp ../jsiter.cpp
In file included from ../jsiter.cpp:47:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsiter.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jsiter.cpp:53:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jsiter.cpp:53:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
49 warnings generated.
jslock.cpp
In file included from ../jsiter.cpp:54:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
c++ -o jslock.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jslock.pp ../jslock.cpp
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jslock.cpp:47:
In file included from ../jspubtd.h:47:
In file included from ../jsval.h:48:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsiter.cpp:54:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsiter.cpp:68:
In file included from ../jsscope.h:59:
In file included from ../jsstrinlines.h:44:
In file included from ../jscntxtinlines.h:46:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
46 warnings generated.
jslog2.cpp
c++ -o jslog2.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jslog2.pp ../jslog2.cpp
In file included from ../jslock.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^In file included from ../jsiter.cpp:80:
../jsobjinlines.h:
302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
In file included from ../jslog2.cpp:40:
In file included from ../jsbit.h:44:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
../jsiter.cpp:270:16: warning: implicit conversion of NULL constant to 'bool' [-Wnull-conversion]
        return NULL;
        ~~~~~~ ^~~~
               false
1 warning generated.
jsmath.cpp
c++ -o jsmath.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsmath.pp ../jsmath.cpp
In file included from ../jsiter.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsiter.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsiter.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsiter.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsiter.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jsmath.cpp:48:
In file included from ../jsapi.h:49:
In file included from ../jspubtd.h:47:
In file included from ../jsval.h:48:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsiter.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jsiter.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jsiter.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jslock.cpp:52:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
In file included from ../jsiter.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:205:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    ExecutableAllocator() {}
    ^
In file included from ../jsiter.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:412:24: note: in instantiation of member function 'js::Vector::Vector' requested here
inline ExecutablePool::ExecutablePool(size_t n) : m_refCount(1), m_destroy(false), m_gcNumber(0)
                       ^
In file included from ../jsiter.cpp:80:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jsiter.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jsiter.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsiter.cpp:566:23: note: in instantiation of member function 'js::Vector::Vector' requested here
    Vector shapes(cx);
                      ^
In file included from ../jsiter.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
../jscntxt.h:2179:14:        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
 warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]        ^

../jsutil.h:120:21: note:            ? COMMON_ATOMS_START(&cx->runtime->atomState)
expanded from macro 'JS_STATIC_ASSERT'
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note:         typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
expanded from macro 'COMMON_ATOMS_START'
../jsutil.h:118:40:     ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
note: expanded from macro 'JS_STATIC_ASSERT_GLUE'     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~

    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsiter.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jsiter.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsiter.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsiter.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jsiter.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsiter.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsiter.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jsiter.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsiter.cpp:54:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:262:1: note: expanded from here
js_static_assert45
^
In file included from ../jsiter.cpp:54:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:264:1: note: expanded from here
js_static_assert46
^
In file included from ../jsiter.cpp:54:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:266:1: note: expanded from here
js_static_assert47
^
In file included from ../jsiter.cpp:54:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:268:1: note: expanded from here
js_static_assert48
^
In file included from ../jsiter.cpp:54:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:284:1: note: expanded from here
js_static_assert56
^
In file included from ../jsiter.cpp:54:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:286:1: note: expanded from here
js_static_assert57
^
In file included from ../jsiter.cpp:54:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:292:1: note: expanded from here
js_static_assert60
^
In file included from ../jsiter.cpp:54:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:290:1: note: expanded from here
js_static_assert59
^
In file included from ../jsiter.cpp:68:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:67:1: note: expanded from here
js_static_assert63
^
In file included from ../jsiter.cpp:68:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:69:1: note: expanded from here
js_static_assert64
^
In file included from ../jsiter.cpp:68:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:71:1: note: expanded from here
js_static_assert65
^
../jsiter.cpp:339:5: warning: unused typedef 'js_static_assert66' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(sizeof(JSIdArray) > sizeof(jsid));
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:97:1: note: expanded from here
js_static_assert66
^
In file included from ../jsiter.cpp:50:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jsiter.cpp:54:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
In file included from ../jslock.cpp:52:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jslock.cpp:55:
In file included from ../jsscope.h:59:
In file included from ../jsstrinlines.h:44:
In file included from ../jscntxtinlines.h:46:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jslock.cpp:585:14: warning: variable 'stat' set but not used [-Wunused-but-set-variable]
    PRStatus stat;
             ^
../jslock.cpp:615:14: warning: variable 'stat' set but not used [-Wunused-but-set-variable]
    PRStatus stat;
             ^
In file included from ../jslock.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jslock.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jslock.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jslock.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jslock.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jslock.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jslock.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jslock.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jslock.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jslock.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jslock.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jslock.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jslock.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jslock.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jslock.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jslock.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jslock.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jslock.cpp:52:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../jslock.cpp:52:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../jslock.cpp:52:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../jslock.cpp:52:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../jslock.cpp:52:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../jslock.cpp:52:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../jslock.cpp:52:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../jslock.cpp:52:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../jslock.cpp:55:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:176:1: note: expanded from here
js_static_assert63
^
In file included from ../jslock.cpp:55:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:178:1: note: expanded from here
js_static_assert64
^
In file included from ../jslock.cpp:55:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:180:1: note: expanded from here
js_static_assert65
^
In file included from ../jslock.cpp:52:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jslock.cpp:52:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
In file included from ../jsmath.cpp:49:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jsmath.cpp:50:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jsmath.cpp:50:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
38 warnings generated.
jsnativestack.cpp
c++ -o jsnativestack.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsnativestack.pp ../jsnativestack.cpp
In file included from ../jsnativestack.cpp:41:
In file included from ../jsnativestack.h:42:
In file included from ../jspubtd.h:47:
In file included from ../jsval.h:48:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsmath.cpp:51:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
1 warning generated.
jsnum.cpp
c++ -o jsnum.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsnum.pp ../jsnum.cpp
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsmath.cpp:51:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsmath.cpp:49:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsnum.cpp:56:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsmath.cpp:49:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsmath.cpp:49:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsmath.cpp:49:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsmath.cpp:49:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsmath.cpp:49:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jsmath.cpp:49:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsmath.cpp:49:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsmath.cpp:49:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jsmath.cpp:49:
In file included from ../jsatom.h:52:
../jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsmath.cpp:49:
In file included from ../jsatom.h:52:
../jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsmath.cpp:49:
In file included from ../jsatom.h:52:
../jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jsmath.cpp:49:
In file included from ../jsatom.h:52:
../jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsmath.cpp:51:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:264:1: note: expanded from here
js_static_assert46
^
In file included from ../jsmath.cpp:51:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:262:1: note: expanded from here
js_static_assert45
^
In file included from ../jsmath.cpp:51:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:266:1: note: expanded from here
js_static_assert47
^
In file included from ../jsmath.cpp:51:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:268:1: note: expanded from here
js_static_assert48
^
In file included from ../jsmath.cpp:51:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:284:1: note: expanded from here
js_static_assert56
^
In file included from ../jsmath.cpp:51:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:286:1: note: expanded from here
js_static_assert57
^
In file included from ../jsmath.cpp:51:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:290:1: note: expanded from here
js_static_assert59
^
In file included from ../jsmath.cpp:51:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:292:1: note: expanded from here
js_static_assert60
^
In file included from ../jsnum.cpp:58:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jsnum.cpp:59:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jsnum.cpp:59:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jsnum.cpp:60:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
28 warnings generated.
jsobj.cpp
c++ -o jsobj.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsobj.pp ../jsobj.cpp
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsnum.cpp:60:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsobj.cpp:49:
In file included from ../jsbit.h:44:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsnum.cpp:69:
In file included from ../jsscope.h:59:
In file included from ../jsstrinlines.h:44:
In file included from ../jscntxtinlines.h:46:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsnum.cpp:75:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
In file included from ../jsobj.cpp:55:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jsnum.cpp:58:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsnum.cpp:58:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
./dist/include/jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
./dist/include/jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsnum.cpp:58:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
./dist/include/jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
./dist/include/jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsnum.cpp:58:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
./dist/include/jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
./dist/include/jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsnum.cpp:58:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jsnum.cpp:58:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jsnum.cpp:58:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jsnum.cpp:58:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jsnum.cpp:58:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:205:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    ExecutableAllocator() {}
    ^
In file included from ../jsnum.cpp:58:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:412:24: note: in instantiation of member function 'js::Vector::Vector' requested here
inline ExecutablePool::ExecutablePool(size_t n) : m_refCount(1), m_destroy(false), m_gcNumber(0)
                       ^
In file included from ../jsnum.cpp:75:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jsnum.cpp:58:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jsnum.cpp:58:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jsnum.cpp:58:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jsnum.cpp:58:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsnum.cpp:58:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsnum.cpp:58:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsnum.cpp:58:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsnum.cpp:58:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsnum.cpp:58:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jsnum.cpp:58:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsnum.cpp:60:
In file included from ./dist/include/jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:264:1: note: expanded from here
js_static_assert46
^
In file included from ../jsnum.cpp:60:
In file included from ./dist/include/jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:262:1: note: expanded from here
js_static_assert45
^
In file included from ../jsnum.cpp:60:
In file included from ./dist/include/jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:266:1: note: expanded from here
js_static_assert47
^
In file included from ../jsnum.cpp:60:
In file included from ./dist/include/jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:268:1: note: expanded from here
js_static_assert48
^
In file included from ../jsnum.cpp:60:
In file included from ./dist/include/jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:284:1: note: expanded from here
js_static_assert56
^
In file included from ../jsnum.cpp:60:
In file included from ./dist/include/jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:286:1: note: expanded from here
js_static_assert57
^
In file included from ../jsnum.cpp:60:
In file included from ./dist/include/jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:290:1: note: expanded from here
js_static_assert59
^
In file included from ../jsnum.cpp:60:
In file included from ./dist/include/jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:292:1: note: expanded from here
js_static_assert60
^
In file included from ../jsnum.cpp:69:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:67:1: note: expanded from here
js_static_assert63
^
In file included from ../jsnum.cpp:69:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:69:1: note: expanded from here
js_static_assert64
^
In file included from ../jsnum.cpp:69:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:71:1: note: expanded from here
js_static_assert65
^
../jsnum.cpp:594:5: warning: unused typedef 'js_static_assert69' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(sbufSize >= DTOSTR_STANDARD_BUFFER_SIZE);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:170:1: note: expanded from here
js_static_assert69
^
../jsnum.cpp:625:5: warning: unused typedef 'js_static_assert70' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSShortString::MAX_SHORT_STRING_LENGTH + 1 >= sizeof("-2147483648"));
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:172:1: note: expanded from here
In file included from js_static_assert70
^
../jsobj.cpp:58:
In file included from ../jsnum.cpp:58:
In file included from In file included from ../jsbuiltins.h:../jsatom.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
52:
./dist/include/jsstr.h:525:14            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
: warning: private field 'mDummy' is not used [-Wunused-private-field]
../nanojit/Nativei386.h:219:    JSString mDummy;
15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
             ^
            *((int16_t*)_nIns) = int16_t(i); \
In file included from ../jsnum.cpp              ^~~~~~~~~~~~~~~
:60:
./dist/include/jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
In file included from ../jsobj.cpp:58:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
46 warnings generated.
json.cpp
c++ -o json.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/json.pp ../json.cpp
In file included from ../json.cpp:43:
In file included from ../jsapi.h:49:
In file included from ../jspubtd.h:47:
In file included from ../jsval.h:48:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsobj.cpp:59:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsobj.cpp:59:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsobj.cpp:61:
In file included from ../jsemit.h:49:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../json.cpp:45:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
71 warnings generated.
jsopcode.cpp
c++ -o jsopcode.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsopcode.pp ../jsopcode.cpp
In file included from ../jsopcode.cpp:54:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsobj.cpp:85:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
In file included from ../json.cpp:48:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../json.cpp:48:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsobj.cpp:3080:13: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
            GET_ATOM_FROM_BYTECODE(script, pc, 0, atom);
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.h:345:9: note: expanded from macro 'GET_ATOM_FROM_BYTECODE'
        JS_GET_SCRIPT_ATOM(script, pc, index_, atom);                         \
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsscript.h:603:22: note: expanded from macro 'JS_GET_SCRIPT_ATOM'
            (atom) = COMMON_ATOMS_START(&cx->runtime->atomState)[index];      \
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../json.cpp:66:
In file included from ../jsobjinlines.h:53:
In file included from ../jsscope.h:59:
In file included from ../jsstrinlines.h:44:
In file included from ../jscntxtinlines.h:46:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsopcode.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../json.cpp:66:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
In file included from ../jsobj.cpp:55:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsobj.cpp:55:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsobj.cpp:55:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsobj.cpp:55:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsobj.cpp:55:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jsobj.cpp:55:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsemit.h:550:36: note: in instantiation of member function 'js::Vector::Vector' requested here
    JSGCConstList(JSContext *cx) : list(cx) {}
                                   ^
In file included from ../jsobj.cpp:55:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jsobj.cpp:55:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jsobj.cpp:55:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jsobj.cpp:55:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:205:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    ExecutableAllocator() {}
    ^
In file included from ../jsobj.cpp:55:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:412:24: note: in instantiation of member function 'js::Vector::Vector' requested here
inline ExecutablePool::ExecutablePool(size_t n) : m_refCount(1), m_destroy(false), m_gcNumber(0)
                       ^
In file included from ../jsobj.cpp:85:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jsobj.cpp:55:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../json.cpp:45:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsobj.cpp:55:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsobj.cpp:55:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:In file included from ../json.cpp:451::
In file included from  note: ../jsarray.h:47:
In file included from expanded from here
../jsatom.h:js_static_assert5
^
52:
In file included from ../jsobj.cppIn file included from ../jsstr.h:55:56:
In file included from ../jsobj.h:65:
:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52../jsvector.h:394:34::
In file included from  warning: field 'storage' is uninitialized when used here [-Wuninitialized]
./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:739  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]../jscntxt.h:3236
:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
        : AutoGCRooter(cx, tag), vector(cx)
../jsutil.h:                                 ^
120:21: ../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
note: expanded from macro 'JS_STATIC_ASSERT'
        : AutoVectorRooter(cx, VALVECTOR)
          ^
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsobj.cpp:55:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsobj.cpp:55:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41:In file included from  note: ../json.cpp:45:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
expanded from macro 'JS_STATIC_ASSERT_GLUE1'
../jsvector.h:394:34: warning:     #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
field 'storage' is uninitialized when used here [-Wuninitialized]
                                        ^
:342:1  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
: ../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested herenote: expanded from here

js_static_assert8
^
        : AutoGCRooter(cx, tag), vector(cx)
In file included from ../jsobj.cpp                                 ^
:55:
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
In file included from ../jsarray.h:47:
In file included from ../jsatom.h        : AutoVectorRooter(cx, IDVECTOR)
          ^
:52:
./dist/include/jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsobj.cpp:55:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsobj.cpp:55:
In file included from In file included from ../jsarray.h../json.cpp:45:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
:47../jsvector.h:394:34::
In file included from  ../jsatom.h:52:
./dist/include/jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
warning: field 'storage' is uninitialized when used here [-Wuninitialized]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'

../jscntxt.h:3236:34        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
:                    ^ 
note: ../jsutil.h:118in instantiation of member function 'js::Vector::Vector' requested here:
40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
:                                       ^3326
:../jsutil.h:117:41: note: 11expanded from macro 'JS_STATIC_ASSERT_GLUE1'
: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y

                                        ^
:408:1        : AutoVectorRooter(cx, SHAPEVECTOR): note: expanded from here

          ^js_static_assert41

^
In file included from ../jsobj.cpp:55:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsobj.cpp:59:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:262:1: note: expanded from here
js_static_assert45
^
In file included from ../jsobj.cpp:59:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
In file included from                                         ^
../json.cpp::26445:1:
: note: expanded from hereIn file included from 
../jsarray.h:js_static_assert46
^
47:
In file included from ../jsobj.cpp:59:
In file included from ../jscntxt.h:62:
../jsfun.hIn file included from :229:9: warning: ../jsatom.hunused typedef 'js_static_assert48' [-Wunused-local-typedef]:
52:
In file included from ../jsstr.h:56:
In file included from         JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));../jsobj.h
:        ^65
:
../jsutil.h../jsvector.h::120394::2134::  note: warning: expanded from macro 'JS_STATIC_ASSERT'field 'storage' is uninitialized when used here [-Wuninitialized]

  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]

                                 ^                    ^

../jsutil.h:../jsparse.h118::30840::39 :note:  expanded from macro 'JS_STATIC_ASSERT_GLUE'note: 
in instantiation of member function 'js::Vector::Vector' requested here
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))

                                       ^                                      ^

../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:268:1: note: expanded from here
js_static_assert48
^
In file included from ../jsobj.cpp:59:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:266:1: note: expanded from here
js_static_assert47
^
In file included from ../jsobj.cpp:59:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:284:1: note: expanded from here
js_static_assert56
^
In file included from ../jsobj.cpp:59:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:286:1: note: expanded from here
js_static_assert57
^
In file included from ../jsobj.cpp:59:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:292:1: note: expanded from here
js_static_assert60
^
In file included from ../jsobj.cpp:59:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:290:1: note: expanded from here
js_static_assert59
^
In file included from ../jsobj.cpp:72:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:67:1: note: expanded from here
js_static_assert63
^
In file included from ../jsobj.cpp:72:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:69:1: note: expanded from here
js_static_assert64
^
In file included from In file included from ../json.cpp../jsobj.cpp::4572:
:
In file included from ../jsscope.h../jsarray.h::43147::
9In file included from :../jsatom.h :warning: 52unused typedef 'js_static_assert65' [-Wunused-local-typedef]:

In file included from ../jsstr.h:56:
In file included from ../jsobj.h:        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));65
:
        ^../jsvector.h
:../jsutil.h394::12034::21 :warning:  field 'storage' is uninitialized when used here [-Wuninitialized]note: 
expanded from macro 'JS_STATIC_ASSERT'
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:../jsregexp.h40::167 :note: 14expanded from macro 'JS_STATIC_ASSERT_GLUE':
 note: in instantiation of member function 'js::Vector::Vector' requested here
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}117
:             ^41
: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:71:1: note: expanded from here
js_static_assert65
^
In file included from ../jsobj.cpp:55:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jsobj.cpp:59:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
In file included from ../jsopcode.cpp:59:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
In file included from ../json.cpp:45:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../json.cpp:45:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../json.cpp:66:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../json.cpp:45:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../json.cpp:45:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../json.cpp:80:8: note: in instantiation of member function 'js::Vector::Vector' requested here
       objectKey(cx), buffer(cx), suppressErrors(false)
       ^
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../json.cpp:45:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../json.cpp:45:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../json.cpp:45:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../json.cpp:45:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../json.cpp:45:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../json.cpp:45:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../json.cpp:45:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../json.cpp:45:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../json.cpp:45:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../json.cpp:48:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../json.cpp:48:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../json.cpp:48:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: In file included from ../jsopcode.cpp:59:
../jscntxt.h:2963:note: expanded from macro 'JS_STATIC_ASSERT'
12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
:40           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../json.cpp:48:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../json.cpp:48:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../json.cpp:48:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../json.cpp:48:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../json.cpp:48:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../json.cpp:66:
In file included from ../jsobjinlines.h:53:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:176:1: note: expanded from here
js_static_assert63
^
In file included from ../json.cpp:66:
In file included from ../jsobjinlines.h:53:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:178:1: note: expanded from here
js_static_assert64
^
In file included from ../json.cpp:66:
In file included from ../jsobjinlines.h:53:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:180:1: note: expanded from here
js_static_assert65
^
In file included from ../json.cpp:45:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../json.cpp:48:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
In file included from ../jsopcode.cpp:62:
In file included from ../jsemit.h:49:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
45 warnings generated.
jsparse.cpp
c++ -o jsparse.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsparse.pp ../jsparse.cpp
In file included from ../jsparse.cpp:60:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsopcode.cpp:74:
In file included from ../jstracer.h:48:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jsopcode.cpp:74:
In file included from ../jstracer.h:48:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jsopcode.cpp:78:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
In file included from ../jsparse.cpp:62:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
../jsopcode.cpp:1659:13: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
            LOAD_ATOM(0);
            ^~~~~~~~~~~~
../jsopcode.cpp:1429:5: note: expanded from macro 'LOAD_ATOM'
    GET_ATOM_FROM_BYTECODE(jp->script, pc, PCOFF, atom)
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.h:345:9: note: expanded from macro 'GET_ATOM_FROM_BYTECODE'
        JS_GET_SCRIPT_ATOM(script, pc, index_, atom);                         \
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsscript.h:603:22: note: expanded from macro 'JS_GET_SCRIPT_ATOM'
            (atom) = COMMON_ATOMS_START(&cx->runtime->atomState)[index];      \
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.cpp:1573:14: warning: variable 'saveop' set but not used [-Wunused-but-set-variable]
    JSOp op, saveop;
             ^
In file included from ../jsparse.cpp:64:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.cpp:3445:17: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
                LOAD_ATOM(0);
                ^~~~~~~~~~~~
../jsopcode.cpp:1429:5: note: expanded from macro 'LOAD_ATOM'
    GET_ATOM_FROM_BYTECODE(jp->script, pc, PCOFF, atom)
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.h:345:9: note: expanded from macro 'GET_ATOM_FROM_BYTECODE'
        JS_GET_SCRIPT_ATOM(script, pc, index_, atom);                         \
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsscript.h:603:22: note: expanded from macro 'JS_GET_SCRIPT_ATOM'
            (atom) = COMMON_ATOMS_START(&cx->runtime->atomState)[index];      \
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.cpp:3455:17: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
                LOAD_ATOM(0);
                ^~~~~~~~~~~~
../jsopcode.cpp:1429:5: note: expanded from macro 'LOAD_ATOM'
    GET_ATOM_FROM_BYTECODE(jp->script, pc, PCOFF, atom)
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.h:345:9: note: expanded from macro 'GET_ATOM_FROM_BYTECODE'
        JS_GET_SCRIPT_ATOM(script, pc, index_, atom);                         \
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsscript.h:603:22: note: expanded from macro 'JS_GET_SCRIPT_ATOM'
            (atom) = COMMON_ATOMS_START(&cx->runtime->atomState)[index];      \
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
In file included from     ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))../jsparse.cpp:64:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]

     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.cpp:3562:17: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
                LOAD_ATOM(0);
                ^~~~~~~~~~~~
../jsopcode.cpp:1429:5: note: expanded from macro 'LOAD_ATOM'
    GET_ATOM_FROM_BYTECODE(jp->script, pc, PCOFF, atom)
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.h:345:9: note: expanded from macro 'GET_ATOM_FROM_BYTECODE'
        JS_GET_SCRIPT_ATOM(script, pc, index_, atom);                         \
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsscript.h:603:22: note: expanded from macro 'JS_GET_SCRIPT_ATOM'
            (atom) = COMMON_ATOMS_START(&cx->runtime->atomState)[index];      \
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.cpp:3675:17: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
                LOAD_ATOM(0);
                ^~~~~~~~~~~~
../jsopcode.cpp:1429:5: note: expanded from macro 'LOAD_ATOM'
    GET_ATOM_FROM_BYTECODE(jp->script, pc, PCOFF, atom)
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.h:345:9: note: expanded from macro 'GET_ATOM_FROM_BYTECODE'
        JS_GET_SCRIPT_ATOM(script, pc, index_, atom);                         \
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsscript.h:603:22: note: expanded from macro 'JS_GET_SCRIPT_ATOM'
            (atom) = COMMON_ATOMS_START(&cx->runtime->atomState)[index];      \
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.cpp:3685:17: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
                GET_ATOM_QUOTE_AND_FMT("%s %s[%s]", "%s %s.%s", rval);
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.cpp:1958:9: note: expanded from macro 'GET_ATOM_QUOTE_AND_FMT'
        LOAD_ATOM(0);                                                         \
        ^~~~~~~~~~~~
../jsopcode.cpp:1429:5: note: expanded from macro 'LOAD_ATOM'
    GET_ATOM_FROM_BYTECODE(jp->script, pc, PCOFF, atom)
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.h:345:9: note: expanded from macro 'GET_ATOM_FROM_BYTECODE'
        JS_GET_SCRIPT_ATOM(script, pc, index_, atom);                         \
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsscript.h:603:22: note: expanded from macro 'JS_GET_SCRIPT_ATOM'
            (atom) = COMMON_ATOMS_START(&cx->runtime->atomState)[index];      \
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.cpp:3734:17: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
                LOAD_ATOM(0);
                ^~~~~~~~~~~~
../jsopcode.cpp:1429:5: note: expanded from macro 'LOAD_ATOM'
    GET_ATOM_FROM_BYTECODE(jp->script, pc, PCOFF, atom)
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.h:345:9: note: expanded from macro 'GET_ATOM_FROM_BYTECODE'
        JS_GET_SCRIPT_ATOM(script, pc, index_, atom);                         \
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsscript.h:603:22: note: expanded from macro 'JS_GET_SCRIPT_ATOM'
            (atom) = COMMON_ATOMS_START(&cx->runtime->atomState)[index];      \
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.cpp:3747:17: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
                GET_ATOM_QUOTE_AND_FMT(preindex_format, predot_format, rval);
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.cpp:1958:9: note: expanded from macro 'GET_ATOM_QUOTE_AND_FMT'
        LOAD_ATOM(0);                                                         \
        ^~~~~~~~~~~~
../jsopcode.cpp:1429:5: note: expanded from macro 'LOAD_ATOM'
    GET_ATOM_FROM_BYTECODE(jp->script, pc, PCOFF, atom)
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.h:345:9: note: expanded from macro 'GET_ATOM_FROM_BYTECODE'
        JS_GET_SCRIPT_ATOM(script, pc, index_, atom);                         \
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsscript.h:603:22: note: expanded from macro 'JS_GET_SCRIPT_ATOM'
            (atom) = COMMON_ATOMS_START(&cx->runtime->atomState)[index];      \
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.cpp:3790:17: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
                LOAD_ATOM(0);
                ^~~~~~~~~~~~
../jsopcode.cpp:1429:5: note: expanded from macro 'LOAD_ATOM'
    GET_ATOM_FROM_BYTECODE(jp->script, pc, PCOFF, atom)
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.h:345:9: note: expanded from macro 'GET_ATOM_FROM_BYTECODE'
        JS_GET_SCRIPT_ATOM(script, pc, index_, atom);                         \
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsscript.h:603:22: note: expanded from macro 'JS_GET_SCRIPT_ATOM'
            (atom) = COMMON_ATOMS_START(&cx->runtime->atomState)[index];      \
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.cpp:3803:17: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
                GET_ATOM_QUOTE_AND_FMT(postindex_format, postdot_format, rval);
                ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.cpp:1958:9: note: expanded from macro 'GET_ATOM_QUOTE_AND_FMT'
        LOAD_ATOM(0);                                                         \
        ^~~~~~~~~~~~
../jsopcode.cpp:1429:5: note: expanded from macro 'LOAD_ATOM'
    GET_ATOM_FROM_BYTECODE(jp->script, pc, PCOFF, atom)
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.h:345:9: note: expanded from macro 'GET_ATOM_FROM_BYTECODE'
        JS_GET_SCRIPT_ATOM(script, pc, index_, atom);                         \
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsscript.h:603:22: note: expanded from macro 'JS_GET_SCRIPT_ATOM'
            (atom) = COMMON_ATOMS_START(&cx->runtime->atomState)[index];      \
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.cpp:3848:17: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
                LOAD_ATOM(0);
                ^~~~~~~~~~~~
../jsopcode.cpp:1429:5: note: expanded from macro 'LOAD_ATOM'
    GET_ATOM_FROM_BYTECODE(jp->script, pc, PCOFF, atom)
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.h:345:9: note: expanded from macro 'GET_ATOM_FROM_BYTECODE'
        JS_GET_SCRIPT_ATOM(script, pc, index_, atom);                         \
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsscript.h:603:22: note: expanded from macro 'JS_GET_SCRIPT_ATOM'
            (atom) = COMMON_ATOMS_START(&cx->runtime->atomState)[index];      \
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.cpp:3859:17: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
                LOAD_ATOM(0);
                ^~~~~~~~~~~~
../jsopcode.cpp:1429:5: note: expanded from macro 'LOAD_ATOM'
    GET_ATOM_FROM_BYTECODE(jp->script, pc, PCOFF, atom)
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.h:345:9: note: expanded from macro 'GET_ATOM_FROM_BYTECODE'
        JS_GET_SCRIPT_ATOM(script, pc, index_, atom);                         \
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsscript.h:603:22: note: expanded from macro 'JS_GET_SCRIPT_ATOM'
            (atom) = COMMON_ATOMS_START(&cx->runtime->atomState)[index];      \
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.cpp:3876:17: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
                LOAD_ATOM(ARGNO_LEN);
                ^~~~~~~~~~~~~~~~~~~~
../jsopcode.cpp:1429:5: note: expanded from macro 'LOAD_ATOM'
    GET_ATOM_FROM_BYTECODE(jp->script, pc, PCOFF, atom)
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.h:345:9: note: expanded from macro 'GET_ATOM_FROM_BYTECODE'
        JS_GET_SCRIPT_ATOM(script, pc, index_, atom);                         \
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsscript.h:603:22: note: expanded from macro 'JS_GET_SCRIPT_ATOM'
            (atom) = COMMON_ATOMS_START(&cx->runtime->atomState)[index];      \
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsparse.cpp:66:
In file included from ../jsemit.h:49:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.cpp:3889:17: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
                LOAD_ATOM(2);
                ^~~~~~~~~~~~
../jsopcode.cpp:1429:5: note: expanded from macro 'LOAD_ATOM'
    GET_ATOM_FROM_BYTECODE(jp->script, pc, PCOFF, atom)
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.h:345:9: note: expanded from macro 'GET_ATOM_FROM_BYTECODE'
        JS_GET_SCRIPT_ATOM(script, pc, index_, atom);                         \
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsscript.h:603:22: note: expanded from macro 'JS_GET_SCRIPT_ATOM'
            (atom) = COMMON_ATOMS_START(&cx->runtime->atomState)[index];      \
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.cpp:3894:17: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
                LOAD_ATOM(0);
                ^~~~~~~~~~~~
../jsopcode.cpp:1429:5: note: expanded from macro 'LOAD_ATOM'
    GET_ATOM_FROM_BYTECODE(jp->script, pc, PCOFF, atom)
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.h:345:9: note: expanded from macro 'GET_ATOM_FROM_BYTECODE'
        JS_GET_SCRIPT_ATOM(script, pc, index_, atom);                         \
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsscript.h:603:22: note: expanded from macro 'JS_GET_SCRIPT_ATOM'
            (atom) = COMMON_ATOMS_START(&cx->runtime->atomState)[index];      \
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.cpp:4000:17: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
                LOAD_ATOM(0);
                ^~~~~~~~~~~~
../jsopcode.cpp:1429:5: note: expanded from macro 'LOAD_ATOM'
    GET_ATOM_FROM_BYTECODE(jp->script, pc, PCOFF, atom)
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.h:345:9: note: expanded from macro 'GET_ATOM_FROM_BYTECODE'
        JS_GET_SCRIPT_ATOM(script, pc, index_, atom);                         \
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsscript.h:603:22: note: expanded from macro 'JS_GET_SCRIPT_ATOM'
            (atom) = COMMON_ATOMS_START(&cx->runtime->atomState)[index];      \
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.cpp:4044:17: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
                LOAD_ATOM(0);
                ^~~~~~~~~~~~
../jsopcode.cpp:1429:5: note: expanded from macro 'LOAD_ATOM'
    GET_ATOM_FROM_BYTECODE(jp->script, pc, PCOFF, atom)
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.h:345:9: note: expanded from macro 'GET_ATOM_FROM_BYTECODE'
        JS_GET_SCRIPT_ATOM(script, pc, index_, atom);                         \
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsscript.h:603:22: note: expanded from macro 'JS_GET_SCRIPT_ATOM'
            (atom) = COMMON_ATOMS_START(&cx->runtime->atomState)[index];      \
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.cpp:4560:17: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
                LOAD_ATOM(0);
                ^~~~~~~~~~~~
../jsopcode.cpp:1429:5: note: expanded from macro 'LOAD_ATOM'
    GET_ATOM_FROM_BYTECODE(jp->script, pc, PCOFF, atom)
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.h:345:9: note: expanded from macro 'GET_ATOM_FROM_BYTECODE'
        JS_GET_SCRIPT_ATOM(script, pc, index_, atom);                         \
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsscript.h:603:22: note: expanded from macro 'JS_GET_SCRIPT_ATOM'
            (atom) = COMMON_ATOMS_START(&cx->runtime->atomState)[index];      \
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.cpp:4638:17: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
                LOAD_ATOM(0);
                ^~~~~~~~~~~~
../jsopcode.cpp:1429:5: note: expanded from macro 'LOAD_ATOM'
    GET_ATOM_FROM_BYTECODE(jp->script, pc, PCOFF, atom)
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.h:345:9: note: expanded from macro 'GET_ATOM_FROM_BYTECODE'
        JS_GET_SCRIPT_ATOM(script, pc, index_, atom);                         \
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsscript.h:603:22: note: expanded from macro 'JS_GET_SCRIPT_ATOM'
            (atom) = COMMON_ATOMS_START(&cx->runtime->atomState)[index];      \
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.cpp:4648:17: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
                LOAD_ATOM(0);
                ^~~~~~~~~~~~
../jsopcode.cpp:1429:5: note: expanded from macro 'LOAD_ATOM'
    GET_ATOM_FROM_BYTECODE(jp->script, pc, PCOFF, atom)
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.h:345:9: note: expanded from macro 'GET_ATOM_FROM_BYTECODE'
        JS_GET_SCRIPT_ATOM(script, pc, index_, atom);                         \
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsscript.h:603:22: note: expanded from macro 'JS_GET_SCRIPT_ATOM'
            (atom) = COMMON_ATOMS_START(&cx->runtime->atomState)[index];      \
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.cpp:4740:17: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
                LOAD_ATOM(0);
                ^~~~~~~~~~~~
../jsopcode.cpp:1429:5: note: expanded from macro 'LOAD_ATOM'
    GET_ATOM_FROM_BYTECODE(jp->script, pc, PCOFF, atom)
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.h:345:9: note: expanded from macro 'GET_ATOM_FROM_BYTECODE'
        JS_GET_SCRIPT_ATOM(script, pc, index_, atom);                         \
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsscript.h:603:22: note: expanded from macro 'JS_GET_SCRIPT_ATOM'
            (atom) = COMMON_ATOMS_START(&cx->runtime->atomState)[index];      \
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.cpp:4749:17: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
                LOAD_ATOM(0);
                ^~~~~~~~~~~~
../jsopcode.cpp:1429:5: note: expanded from macro 'LOAD_ATOM'
    GET_ATOM_FROM_BYTECODE(jp->script, pc, PCOFF, atom)
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.h:345:9: note: expanded from macro 'GET_ATOM_FROM_BYTECODE'
        JS_GET_SCRIPT_ATOM(script, pc, index_, atom);                         \
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsscript.h:603:22: note: expanded from macro 'JS_GET_SCRIPT_ATOM'
            (atom) = COMMON_ATOMS_START(&cx->runtime->atomState)[index];      \
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.cpp:4758:17: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
                LOAD_ATOM(0);
                ^~~~~~~~~~~~
../jsopcode.cpp:1429:5: note: expanded from macro 'LOAD_ATOM'
    GET_ATOM_FROM_BYTECODE(jp->script, pc, PCOFF, atom)
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.h:345:9: note: expanded from macro 'GET_ATOM_FROM_BYTECODE'
        JS_GET_SCRIPT_ATOM(script, pc, index_, atom);                         \
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsscript.h:603:22: note: expanded from macro 'JS_GET_SCRIPT_ATOM'
            (atom) = COMMON_ATOMS_START(&cx->runtime->atomState)[index];      \
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsopcode.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsopcode.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsopcode.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsopcode.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsopcode.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jsopcode.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsemit.h:550:36: note: in instantiation of member function 'js::Vector::Vector' requested here
    JSGCConstList(JSContext *cx) : list(cx) {}
                                   ^
In file included from ../jsopcode.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jsopcode.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jsopcode.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jsopcode.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:205:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    ExecutableAllocator() {}
    ^
In file included from ../jsopcode.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:412:24: note: in instantiation of member function 'js::Vector::Vector' requested here
inline ExecutablePool::ExecutablePool(size_t n) : m_refCount(1), m_destroy(false), m_gcNumber(0)
                       ^
In file included from ../jsopcode.cpp:78:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jsopcode.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jsopcode.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsopcode.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jsopcode.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsopcode.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsopcode.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jsopcode.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsopcode.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsopcode.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsopcode.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jsopcode.cpp:59:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../jsopcode.cpp:59:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../jsopcode.cpp:59:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../jsopcode.cpp:59:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../jsopcode.cpp:59:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../jsopcode.cpp:59:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../jsopcode.cpp:59:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../jsopcode.cpp:59:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../jsopcode.cpp:70:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:176:1: note: expanded from here
js_static_assert63
^
In file included from ../jsopcode.cpp:70:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:178:1: note: expanded from here
js_static_assert64
^
In file included from ../jsopcode.cpp:70:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:180:1: note: expanded from here
js_static_assert65
^
../jsopcode.cpp:1892:5: warning: unused typedef 'js_static_assert312' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(ARGNO_LEN == SLOTNO_LEN);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:94:1: note: expanded from here
js_static_assert312
^
In file included from ../jsopcode.cpp:57:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jsopcode.cpp:59:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
In file included from ../jsparse.cpp:93:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
In file included from ../jsparse.cpp:94:
In file included from ../jsregexpinlines.h:49:
In file included from ../yarr/yarr/RegexJIT.h:34:
../yarr/yarr/RegexPattern.h:136:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
../jsparse.cpp:1824:16: warning: implicit conversion of NULL constant to 'bool' [-Wnull-conversion]
        return NULL;
        ~~~~~~ ^~~~
               false
../jsparse.cpp:1831:16: warning: implicit conversion of NULL constant to 'bool' [-Wnull-conversion]
        return NULL;
        ~~~~~~ ^~~~
               false
../jsparse.cpp:1917:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
../jsparse.cpp:5061:32: warning: implicit conversion of NULL constant to 'bool' [-Wnull-conversion]
                        return NULL;
                        ~~~~~~ ^~~~
                               false
../jsparse.cpp:8540:16: warning: variable 'afterComma' set but not used [-Wunused-but-set-variable]
        JSBool afterComma;
               ^
In file included from ../jsparse.cpp:62:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsparse.cpp:62:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsparse.cpp:62:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsparse.cpp:62:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsparse.cpp:62:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jsparse.cpp:62:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsemit.h:550:36: note: in instantiation of member function 'js::Vector::Vector' requested here
    JSGCConstList(JSContext *cx) : list(cx) {}
                                   ^
In file included from ../jsparse.cpp:62:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jsparse.cpp:62:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jsparse.cpp:62:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jsparse.cpp:62:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:205:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    ExecutableAllocator() {}
    ^
In file included from ../jsparse.cpp:62:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:412:24: note: in instantiation of member function 'js::Vector::Vector' requested here
inline ExecutablePool::ExecutablePool(size_t n) : m_refCount(1), m_destroy(false), m_gcNumber(0)
                       ^
In file included from ../jsparse.cpp:93:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jsparse.cpp:62:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jsparse.cpp:62:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../yarr/yarr/RegexPattern.h:93:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    CharacterClass(CharacterClassTable *table)
    ^
In file included from ../jsparse.cpp:62:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../yarr/yarr/RegexPattern.h:93:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    CharacterClass(CharacterClassTable *table)
    ^
In file included from ../jsparse.cpp:62:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../yarr/yarr/RegexPattern.h:233:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    PatternAlternative(PatternDisjunction* disjunction)
    ^
In file included from ../jsparse.cpp:62:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../yarr/yarr/RegexPattern.h:282:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    PatternDisjunction(PatternAlternative* parent = 0)
    ^
In file included from ../jsparse.cpp:62:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../yarr/yarr/RegexPattern.h:321:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    RegexPattern(bool ignoreCase, bool multiline)
    ^
In file included from ../jsparse.cpp:62:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../yarr/yarr/RegexPattern.h:321:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    RegexPattern(bool ignoreCase, bool multiline)
    ^
In file included from ../jsparse.cpp:62:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.cpp:1201:52: note: in instantiation of member function 'js::Vector::Vector' requested here
    js::Vector worklist(cx);
                                                   ^
../jsparse.cpp:5008:1: warning: function 'RebindLets' is not needed and will not be emitted [-Wunneeded-internal-declaration]
RebindLets(JSParseNode *pn, JSTreeContext *tc)
^
In file included from ../jsparse.cpp:62:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsparse.cpp:62:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsparse.cpp:62:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsparse.cpp:62:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jsparse.cpp:62:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jsparse.cpp:62:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsparse.cpp:62:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsparse.cpp:62:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsparse.cpp:62:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jsparse.cpp:64:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../jsparse.cpp:64:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../jsparse.cpp:64:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../jsparse.cpp:64:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../jsparse.cpp:64:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../jsparse.cpp:64:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../jsparse.cpp:64:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../jsparse.cpp:64:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../jsparse.cpp:76:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:176:1: note: expanded from here
js_static_assert63
^
In file included from ../jsparse.cpp:76:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:178:1: note: expanded from here
js_static_assert64
^
In file included from ../jsparse.cpp:76:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:180:1: note: expanded from here
js_static_assert65
^
In file included from ../jsparse.cpp:62:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jsparse.cpp:64:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
40 warnings generated.
jsproxy.cpp
c++ -o jsproxy.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsproxy.pp ../jsproxy.cpp
In file included from ../jsproxy.cpp:43:
In file included from ../jsapi.h:49:
In file included from ../jspubtd.h:47:
In file included from ../jsval.h:48:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsproxy.cpp:44:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jsproxy.cpp:44:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsproxy.cpp:44:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsemit.h:550:36: note: in instantiation of member function 'js::Vector::Vector' requested here
    JSGCConstList(JSContext *cx) : list(cx) {}
                                   ^
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jsproxy.cpp:49:
In file included from ../jsscope.h:59:
In file included from ../jsstrinlines.h:44:
In file included from ../jscntxtinlines.h:46:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:205:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    ExecutableAllocator() {}
    ^
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:412:24: note: in instantiation of member function 'js::Vector::Vector' requested here
inline ExecutablePool::ExecutablePool(size_t n) : m_refCount(1), m_destroy(false), m_gcNumber(0)
                       ^
In file included from ../jsinterp.cpp:85:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../methodjit/BaseAssembler.h:206:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : callPatches(SystemAllocPolicy()),
        ^
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jsinterp.cpp:56:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../jsinterp.cpp:56:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../jsinterp.cpp:56:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../jsinterp.cpp:56:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../jsinterp.cpp:56:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../jsinterp.cpp:56:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../jsinterp.cpp:56:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../jsinterp.cpp:56:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../jsinterp.cpp:71:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:176:1: note: expanded from here
js_static_assert63
^
In file included from ../jsinterp.cpp:71:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:178:1: note: expanded from here
js_static_assert64
^
In file included from ../jsinterp.cpp:71:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:180:1: note: expanded from here
js_static_assert65
^
In file included from ../jsinterp.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jsinterp.cpp:56:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
In file included from ../jsproxy.cpp:51:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
In file included from ../jsproxy.cpp:44:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsproxy.cpp:44:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsproxy.cpp:44:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsproxy.cpp:44:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsproxy.cpp:44:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jsproxy.cpp:44:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jsproxy.cpp:44:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jsproxy.cpp:44:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jsproxy.cpp:51:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jsproxy.cpp:44:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jsproxy.cpp:44:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsproxy.cpp:44:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jsproxy.cpp:44:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsproxy.cpp:44:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsproxy.cpp:44:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jsproxy.cpp:44:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsproxy.cpp:44:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jsproxy.cpp:44:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsproxy.cpp:44:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsproxy.cpp:44:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../jsproxy.cpp:44:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../jsproxy.cpp:44:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../jsproxy.cpp:44:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../jsproxy.cpp:44:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../jsproxy.cpp:44:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../jsproxy.cpp:44:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../jsproxy.cpp:44:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../jsproxy.cpp:49:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:176:1: note: expanded from here
js_static_assert63
^
In file included from ../jsproxy.cpp:49:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:178:1: note: expanded from here
js_static_assert64
^
In file included from ../jsproxy.cpp:49:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:180:1: note: expanded from here
js_static_assert65
^
In file included from ../jsproxy.cpp:44:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jsproxy.cpp:44:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
39 warnings generated.
jsprf.cpp
c++ -o jsprf.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsprf.pp ../jsprf.cpp
In file included from ../jsprf.cpp:51:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsprf.cpp:53:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
69 warnings generated.
jsprobes.cpp
c++ -o jsprobes.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsprobes.pp ../jsprobes.cpp
In file included from ../jsprf.cpp:53:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsprf.cpp:53:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jsprf.cpp:53:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsprf.cpp:53:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsprf.cpp:53:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jsprf.cpp:53:
../jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsprf.cpp:53:
../jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsprf.cpp:53:
../jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsprf.cpp:53:
../jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jsprobes.cpp:36:
In file included from ../jsapi.h:49:
In file included from ../jspubtd.h:47:
In file included from ../jsval.h:48:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsprobes.cpp:38:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
11 warnings generated.
jspropertycache.cpp
c++ -o jspropertycache.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jspropertycache.pp ../jspropertycache.cpp
In file included from ../jsprobes.cpp:39:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsprobes.cpp:39:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jspropertycache.cpp:41:
In file included from ../jspropertycache.h:44:
In file included from ../jsapi.h:49:
In file included from ../jspubtd.h:47:
In file included from ../jsval.h:48:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsprobes.cpp:38:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsprobes.cpp:38:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsprobes.cpp:38:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsprobes.cpp:38:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsprobes.cpp:38:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsprobes.cpp:38:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jsprobes.cpp:38:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsprobes.cpp:38:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsprobes.cpp:38:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jsprobes.cpp:38:
In file included from ../jsatom.h:52:
../jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsprobes.cpp:38:
In file included from ../jsatom.h:52:
../jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jsprobes.cpp:38:
In file included from ../jsatom.h:52:
../jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsprobes.cpp:38:
In file included from ../jsatom.h:52:
../jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsprobes.cpp:39:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../jsprobes.cpp:39:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../jsprobes.cpp:39:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../jsprobes.cpp:39:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../jsprobes.cpp:39:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../jsprobes.cpp:39:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../jsprobes.cpp:39:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../jsprobes.cpp:39:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
26 warnings generated.
jspropertytree.cpp
c++ -o jspropertytree.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jspropertytree.pp ../jspropertytree.cpp
In file included from ../jspropertytree.cpp:45:
In file included from ../jsapi.h:49:
In file included from ../jspubtd.h:47:
In file included from ../jsval.h:48:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jspropertycache.cpp:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jspropertycache.cpp:42:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
45 warnings generated.
jsreflect.cpp
c++ -o jsreflect.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsreflect.pp ../jsreflect.cpp
In file included from ../jspropertytree.cpp:46:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jspropertycache.cpp:42:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsreflect.cpp:45:
In file included from ../jspubtd.h:47:
In file included from ../jsval.h:48:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from In file included from ../jspropertytree.cpp../jspropertycache.cpp:44:
:46:
In file included from ../jsobjinlines.h:53../jscntxt.h::
In file included from 271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
../jsscope.h:59:
In file included from ../jsstrinlines.h:        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~44:

In file included from ../jscntxtinlines.h:46:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jspropertytree.cpp:46:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jspropertycache.cpp:44:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
In file included from ../jspropertytree.cpp:49:
In file included from ../jsscope.h:59:
In file included from ../jsstrinlines.h:44:
In file included from ../jscntxtinlines.h:46:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jspropertycache.cpp:316:5: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
    GET_ATOM_FROM_BYTECODE(cx->fp()->script(), pc, pcoff, atom);
    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsopcode.h:345:9: note: expanded from macro 'GET_ATOM_FROM_BYTECODE'
        JS_GET_SCRIPT_ATOM(script, pc, index_, atom);                         \
        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsscript.h:603:22: note: expanded from macro 'JS_GET_SCRIPT_ATOM'
            (atom) = COMMON_ATOMS_START(&cx->runtime->atomState)[index];      \
                     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jspropertycache.cpp:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jspropertycache.cpp:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jspropertycache.cpp:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jspropertycache.cpp:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jspropertycache.cpp:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jspropertycache.cpp:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jspropertycache.cpp:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jspropertycache.cpp:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jspropertycache.cpp:44:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jspropertycache.cpp:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jspropertycache.cpp:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jspropertycache.cpp:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jspropertycache.cpp:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jspropertycache.cpp:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jspropertycache.cpp:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jspropertycache.cpp:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jspropertycache.cpp:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jspropertycache.cpp:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jspropertycache.cpp:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jspropertycache.cpp:42:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../jspropertycache.cpp:42:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../jspropertycache.cpp:42:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../jspropertycache.cpp:42:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../jspropertycache.cpp:42:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../jspropertycache.cpp:42:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../jspropertycache.cpp:42:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../jspropertycache.cpp:42:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../jspropertycache.cpp:44:
In file included from ../jsobjinlines.h:53:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:176:1: note: expanded from here
js_static_assert63
^
In file included from ../jspropertycache.cpp:44:
In file included from ../jsobjinlines.h:53:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:178:1: note: expanded from here
js_static_assert64
^
In file included from ../jspropertycache.cpp:44:
In file included from ../jsobjinlines.h:53:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:180:1: note: expanded from here
js_static_assert65
^
In file included from ../jspropertycache.cpp:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jspropertycache.cpp:42:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
In file included from ../jsreflect.cpp:46:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jspropertytree.cpp:51:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
In file included from ../jspropertytree.cpp:46:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jspropertytree.cpp:46:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jspropertytree.cpp:46:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jspropertytree.cpp:46:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jspropertytree.cpp:46:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jspropertytree.cpp:46:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jspropertytree.cpp:46:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jspropertytree.cpp:46:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jspropertytree.cpp:51:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jspropertytree.cpp:46:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jspropertytree.cpp:46:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jspropertytree.cpp:46:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jspropertytree.cpp:46:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jspropertytree.cpp:46:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jspropertytree.cpp:46:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jspropertytree.cpp:46:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jspropertytree.cpp:46:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jspropertytree.cpp:46:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jspropertytree.cpp:46:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jspropertytree.cpp:46:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../jspropertytree.cpp:46:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../jspropertytree.cpp:46:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../jspropertytree.cpp:46:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../jspropertytree.cpp:46:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../jspropertytree.cpp:46:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
In file included from ../jsreflect.cpp:49        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:
../jscntxt.h:271:16: warning: :118cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~

    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../jspropertytree.cpp:46:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../jspropertytree.cpp:46:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../jspropertytree.cpp:49:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:176:1: note: expanded from here
js_static_assert63
^
In file included from ../jspropertytree.cpp:49:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:178:1: note: expanded from here
js_static_assert64
^
In file included from ../jspropertytree.cpp:49:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:180:1: note: expanded from here
js_static_assert65
^
In file included from ../jspropertytree.cpp:46:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jspropertytree.cpp:46:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
40 warnings generated.
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
jsregexp.cpp
c++ -o jsregexp.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsregexp.pp ../jsregexp.cpp
In file included from ../jsreflect.cpp:49:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsregexp.cpp:48:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsreflect.cpp:53:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsreflect.cpp:63:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
39 warnings generated.
jsscan.cpp
c++ -o jsscan.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsscan.pp ../jsscan.cpp
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jsreflect.cpp:46:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsreflect.cpp:46:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsreflect.cpp:46:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsreflect.cpp:46:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsreflect.cpp:46:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jsreflect.cpp:46:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jsreflect.cpp:46:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsemit.h:550:36: note: in instantiation of member function 'js::Vector::Vector' requested here
    JSGCConstList(JSContext *cx) : list(cx) {}
                                   ^
In file included from ../jsreflect.cpp:46:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jsreflect.cpp:46:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jsreflect.cpp:63:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jsreflect.cpp:46:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jsreflect.cpp:46:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsreflect.cpp:2328:30: note: in instantiation of member function 'js::Vector::Vector' requested here
    Vector list(cx);
                             ^
In file included from ../jsreflect.cpp:46:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsreflect.cpp:46:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jsreflect.cpp:46:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsreflect.cpp:46:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsreflect.cpp:46:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jsreflect.cpp:46:
In file included from ../jsatom.h:52:
../jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.hIn file included from ../jsregexp.cpp:50:
../jscntxt.h:271::118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:        return (Value *)(this + 1);
41:               ^~~~~~~~~~~~~~~~~~~
 note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsreflect.cpp:46:
In file included from ../jsatom.h:52:
../jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jsreflect.cpp:46:
In file included from ../jsatom.h:52:
../jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsreflect.cpp:46:
In file included from ../jsatom.h:52:
../jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsreflect.cpp:49:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../jsreflect.cpp:49:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../jsreflect.cpp:49:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../jsreflect.cpp:49:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../jsreflect.cpp:49:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../jsreflect.cpp:49:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../jsreflect.cpp:49:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../jsreflect.cpp:49:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../jsreflect.cpp:63:
In file included from ../jsobjinlines.h:53:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:176:1: note: expanded from here
js_static_assert63
^
In file included from ../jsreflect.cpp:63:
In file included from ../jsobjinlines.h:53:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:178:1: note: expanded from here
js_static_assert64
^
In file included from ../jsreflect.cpp:63:
In file included from ../jsobjinlines.h:53:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:180:1: note: expanded from here
js_static_assert65
^
In file included from ../jsreflect.cpp:46:
In file included from ../jsatom.h:52:
../jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jsreflect.cpp:49:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
In file included from ../jsscan.cpp:57:
In file included from ../jsbit.h:44:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsregexp.cpp:50:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsregexp.cpp:58:
In file included from ../jsobjinlines.h:53:
In file included from ../jsscope.h:59:
In file included from ../jsstrinlines.h:44:
In file included from ../jscntxtinlines.h:46:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsscan.cpp:61:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jsregexp.cpp:58:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
In file included from ../jsscan.cpp:62:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsscan.cpp:62:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsregexp.cpp:59:
In file included from ../jsregexpinlines.h:49:
In file included from ../yarr/yarr/RegexJIT.h:34:
../yarr/yarr/RegexPattern.h:136:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jsscan.cpp:64:
In file included from ../jsemit.h:49:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsscan.cpp:190:13: warning: array subscript is of type 'char' [-Wchar-subscripts]
    maybeEOL['\n'] = true;
            ^~~~~
../jsscan.cpp:191:13: warning: array subscript is of type 'char' [-Wchar-subscripts]
    maybeEOL['\r'] = true;
            ^~~~~
../jsscan.cpp:197:20: warning: array subscript is of type 'char' [-Wchar-subscripts]
    maybeStrSpecial['"'] = true;
                   ^~~~
../jsscan.cpp:198:20: warning: array subscript is of type 'char' [-Wchar-subscripts]
    maybeStrSpecial['\''] = true;
                   ^~~~~
../jsscan.cpp:199:20: warning: array subscript is of type 'char' [-Wchar-subscripts]
    maybeStrSpecial['\\'] = true;
                   ^~~~~
../jsscan.cpp:200:20: warning: array subscript is of type 'char' [-Wchar-subscripts]
    maybeStrSpecial['\n'] = true;
                   ^~~~~
../jsscan.cpp:201:20: warning: array subscript is of type 'char' [-Wchar-subscripts]
    maybeStrSpecial['\r'] = true;
                   ^~~~~
In file included from ../jsregexp.cpp:64:
In file included from ../jstracer.h:48:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jsregexp.cpp:64:
In file included from ../jstracer.h:48:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
../jsregexp.cpp:371:24: warning: cast from 'char *' to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
        JSAtom *atom = OFFSET_TO_ATOM(cx->runtime, lazy.atomOffset);
                       ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:454:35: note: expanded from macro 'OFFSET_TO_ATOM'
#define OFFSET_TO_ATOM(rt,off)  (*(JSAtom **)((char*)&(rt)->atomState + (off)))
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsscan.cpp:61:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsscan.cpp:61:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsscan.cpp:61:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsscan.cpp:61:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
../jsregexp.cpp:547:32: warning: cast from 'char *' to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
        jsid id = ATOM_TO_JSID(OFFSET_TO_ATOM(cx->runtime, lazy.atomOffset));
                               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:454:35: note: expanded from macro 'OFFSET_TO_ATOM'
#define OFFSET_TO_ATOM(rt,off)  (*(JSAtom **)((char*)&(rt)->atomState + (off)))
                                  ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsscan.cpp:61:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jsscan.cpp:61:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsemit.h:550:36: note: in instantiation of member function 'js::Vector::Vector' requested here
    JSGCConstList(JSContext *cx) : list(cx) {}
                                   ^
In file included from ../jsscan.cpp:61:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jsscan.cpp:61:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsscan.cpp:61:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jsscan.cpp:61:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:
                    ^
59../jsutil.h:118:40: :
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
34../jsutil.h:117:41::  note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
warning: field 'storage' is uninitialized when used here [-Wuninitialized]
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
338:                                 ^
1: ../jscntxt.h:note: expanded from here
3236:js_static_assert6
^34: note: in instantiation of member function 'js::Vector::Vector' requested here

In file included from ../jsscan.cpp:61:
In file included from         : AutoGCRooter(cx, tag), vector(cx)
../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:                                 ^
740:../jscntxt.h:9: 3294warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
:11:         JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
note:         ^
in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here../jsutil.h:
120:21: note:         : AutoVectorRooter(cx, VALVECTOR)
          ^
expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsscan.cpp:61:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsscan.cpp:61:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^In file included from ../jsregexp.cpp:
50:
In file included from ../jsscan.cppIn file included from ../jscntxt.h:61::
In file included from 59../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^:
56../jsutil.h:120:
In file included from ./dist/include/jsobj.h:21: note: expanded from macro 'JS_STATIC_ASSERT'
:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
118:../jscntxt.h:40: note: 3236expanded from macro 'JS_STATIC_ASSERT_GLUE'
:34: note: in instantiation of member function 'js::Vector::Vector' requested here
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
        : AutoGCRooter(cx, tag), vector(cx)
../jsutil.h:                                 ^
117:../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
        : AutoVectorRooter(cx, IDVECTOR)
          ^    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y

                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jsscan.cpp:61:
In file included from ../jsatom.h:52:
../jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsscan.cpp:61:
In file included from ../jsatom.h:52:
../jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:59
../jsutil.h:
:117In file included from ../jsatom.h:52:41::
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
408:../jscntxt.h1: :note: expanded from here
3236:js_static_assert41
34: note: in instantiation of member function 'js::Vector::Vector' requested here
^
In file included from ../jsscan.cpp:61        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
:
In file included from ../jsatom.h:52:
../jsstr.h:570:9../jscntxt.h: :warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]3326
:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsscan.cpp:61:
In file included from ../jsatom.h:52:
../jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsscan.cpp:62:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../jsscan.cpp:62:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../jsscan.cpp:62:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../jsscan.cpp:62:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../jsscan.cpp:62:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../jsscan.cpp:62:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21In file included from :../jsregexp.cpp:50:
 In file included from ../jscntxt.h:59:
note: In file included from expanded from macro 'JS_STATIC_ASSERT'../jsatom.h
:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]:
65                    ^:

../jsvector.h../jsutil.h::394118::3440::  warning: note: field 'storage' is uninitialized when used here [-Wuninitialized]expanded from macro 'JS_STATIC_ASSERT_GLUE'

    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),                                       ^

                                 ^../jsutil.h
:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'../jsregexp.h
:167:14:     #define JS_STATIC_ASSERT_GLUE1(x,y) x##ynote: 
in instantiation of member function 'js::Vector::Vector' requested here                                        ^

:74:1: note:     explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}expanded from here

             ^
js_static_assert57
^
In file included from ../jsscan.cpp:62:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../jsscan.cpp:62:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../jsscan.cpp:75:
In file included from ../jsscriptinlines.h:49:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:176:1: note: expanded from here
js_static_assert63
^
In file included from ../jsscan.cpp:75:
In file included from ../jsscriptinlines.h:49:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
In file included from :../jsregexp.cpp178::501:
:In file included from  ../jscntxt.hnote: :expanded from here59
:
In file included from ../jsatom.hjs_static_assert64:
52^:

In file included from ./dist/include/jsstr.hIn file included from :../jsscan.cpp56::
75In file included from :
./dist/include/jsobj.hIn file included from :../jsscriptinlines.h65::
49../jsvector.h:
:../jsscope.h394::43134::9 :warning:  field 'storage' is uninitialized when used here [-Wuninitialized]warning: 
unused typedef 'js_static_assert65' [-Wunused-local-typedef]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));

        ^
../jsparse.h../jsutil.h::308120::3921::  note: note: in instantiation of member function 'js::Vector::Vector' requested hereexpanded from macro 'JS_STATIC_ASSERT'

      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:180:1: note: expanded from here
js_static_assert65
^
In file included from ../jsscan.cpp:61:
In file included from ../jsatom.h:52:
../jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jsscan.cpp:62:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
In file included from ../jsscan.cpp:64:
In file included from ../jsemit.h:49:
In file included from ../jsparse.h:50:
../jsscan.h:512:26: warning: private field 'listenerTSData' is not used [-Wunused-private-field]
    void                *listenerTSData;/* listener data for this TokenStream */
                         ^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jsregexp.cpp:58:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:205:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    ExecutableAllocator() {}
    ^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:412:24: note: in instantiation of member function 'js::Vector::Vector' requested here
inline ExecutablePool::ExecutablePool(size_t n) : m_refCount(1), m_destroy(false), m_gcNumber(0)
                       ^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../yarr/yarr/RegexPattern.h:93:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    CharacterClass(CharacterClassTable *table)
    ^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../yarr/yarr/RegexPattern.h:93:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    CharacterClass(CharacterClassTable *table)
    ^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../yarr/yarr/RegexPattern.h:233:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    PatternAlternative(PatternDisjunction* disjunction)
    ^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../yarr/yarr/RegexPattern.h:282:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    PatternDisjunction(PatternAlternative* parent = 0)
    ^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../yarr/yarr/RegexPattern.h:321:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    RegexPattern(bool ignoreCase, bool multiline)
    ^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../yarr/yarr/RegexPattern.h:321:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    RegexPattern(bool ignoreCase, bool multiline)
    ^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.cpp:645:29: note: in instantiation of member function 'js::Vector::Vector' requested here
    js::Vector newChars(cx);
                            ^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../jsregexp.cpp:58:
In file included from ../jsobjinlines.h:53:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:176:1: note: expanded from here
js_static_assert63
^
In file included from ../jsregexp.cpp:58:
In file included from ../jsobjinlines.h:53:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:178:1: note: expanded from here
js_static_assert64
^
In file included from ../jsregexp.cpp:58:
In file included from ../jsobjinlines.h:53:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:180:1: note: expanded from here
js_static_assert65
^
In file included from ../jsregexp.cpp:50:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jsregexp.cpp:50:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
56 warnings generated.
jsscope.cpp
c++ -o jsscope.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsscope.pp ../jsscope.cpp
In file included from ../jsscope.cpp:50:
In file included from ../jsbit.h:44:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsscope.cpp:55:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
45 warnings generated.
jsscript.cpp
c++ -o jsscript.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsscript.pp ../jsscript.cpp
In file included from ../jsscript.cpp:47:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsscope.cpp:56:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsscope.cpp:56:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
53 warnings generated.
jsstr.cpp
c++ -o jsstr.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsstr.pp ../jsstr.cpp
In file included from ../jsscope.cpp:62:
In file included from ../jsscope.h:59:
In file included from ../jsstrinlines.h:44:
In file included from ../jscntxtinlines.h:46:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsstr.cpp:55:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsscript.cpp:50:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jsscope.cpp:64:
In file included from ../jstracer.h:48:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jsscope.cpp:64:
In file included from ../jstracer.h:48:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jsscript.cpp:51:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsscope.cpp:67:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
In file included from ../jsscript.cpp:51:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsscript.cpp:54:
In file included from ../jsemit.h:49:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsstr.cpp:59:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jsscope.cpp:55:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsscope.cpp:55:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
./dist/include/jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
./dist/include/jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsscope.cpp:55:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
./dist/include/jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
./dist/include/jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsscope.cpp:55:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
./dist/include/jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
./dist/include/jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsscope.cpp:55:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jsscope.cpp:55:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jsscope.cpp:55:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jsscope.cpp:55:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jsscope.cpp:67:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jsscope.cpp:55:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jsscope.cpp:55:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsscope.cpp:55:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jsscope.cpp:55:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsscope.cpp:55:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsscope.cpp:55:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jsscope.cpp:55:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsscope.cpp:55:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsscope.cpp:55:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jsscope.cpp:55:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsscope.cpp:56:
In file included from ./dist/include/jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../jsscope.cpp:56:
In file included from ./dist/include/jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../jsscope.cpp:56:
In file included from ./dist/include/jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../jsscope.cpp:56:
In file included from ./dist/include/jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../jsscope.cpp:56:
In file included from ./dist/include/jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../jsscope.cpp:56:
In file included from ./dist/include/jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../jsscope.cpp:56:
In file included from ./dist/include/jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../jsscope.cpp:56:
In file included from ./dist/include/jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../jsscope.cpp:62:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:176:1: note: expanded from here
js_static_assert63
^
In file included from ../jsscope.cpp:62:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:178:1: note: expanded from here
js_static_assert64
^
In file included from ../jsscope.cpp:62:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:180:1: note: expanded from here
js_static_assert65
^
In file included from ../jsscope.cpp:55:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jsscope.cpp:56:
./dist/include/jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
In file included from ../jsstr.cpp:62:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jsstr.cpp:62:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jsscript.cpp:63:
In file included from ../jstracer.h:48:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jsscript.cpp:63:
In file included from ../jstracer.h:48:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jsstr.cpp:63:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsstr.cpp:63:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
41 warnings generated.
jstypedarray.cpp
c++ -o jstypedarray.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jstypedarray.pp ../jstypedarray.cpp
In file included from ../jsstr.cpp:72:
In file included from ../jsscope.h:59:
In file included from ../jsstrinlines.h:44:
In file included from ../jscntxtinlines.h:46:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jstypedarray.cpp:44:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsscript.cpp:70:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
../jsscript.cpp:193:17: warning: variable 'constFlag' set but not used [-Wunused-but-set-variable]
        jsuword constFlag = 0;
                ^
../jsscript.cpp:1068:11: warning: cast from 'const char *' to 'ScriptFilenameEntry *' increases required alignment from 1 to 4 [-Wcast-align]
    sfe = FILENAME_TO_SFE(filename);
          ^~~~~~~~~~~~~~~~~~~~~~~~~
../jsscript.cpp:1053:6: note: expanded from macro 'FILENAME_TO_SFE'
    ((ScriptFilenameEntry *) ((fn) - offsetof(ScriptFilenameEntry, filename)))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsscript.cpp:1078:11: warning: cast from 'const char *' to 'ScriptFilenameEntry *' increases required alignment from 1 to 4 [-Wcast-align]
    sfe = FILENAME_TO_SFE(filename);
          ^~~~~~~~~~~~~~~~~~~~~~~~~
../jsscript.cpp:1053:6: note: expanded from macro 'FILENAME_TO_SFE'
    ((ScriptFilenameEntry *) ((fn) - offsetof(ScriptFilenameEntry, filename)))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsscript.cpp:1297:34: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
        script->atomMap.vector = (JSAtom **)cursor;
                                 ^~~~~~~~~~~~~~~~~
../jsscript.cpp:1310:37: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSObject **' increases required alignment from 1 to 4 [-Wcast-align]
        script->objects()->vector = (JSObject **)cursor;
                                    ^~~~~~~~~~~~~~~~~~~
../jsscript.cpp:1318:37: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSObject **' increases required alignment from 1 to 4 [-Wcast-align]
        script->regexps()->vector = (JSObject **)cursor;
                                    ^~~~~~~~~~~~~~~~~~~
../jsscript.cpp:1326:38: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSTryNote *' increases required alignment from 1 to 4 [-Wcast-align]
        script->trynotes()->vector = (JSTryNote *)cursor;
                                     ^~~~~~~~~~~~~~~~~~~
../jsscript.cpp:1336:37: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'GlobalSlotArray::Entry *' increases required alignment from 1 to 4 [-Wcast-align]
        script->globals()->vector = (GlobalSlotArray::Entry *)cursor;
                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsscript.cpp:1344:31: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'uint32 *' (aka 'unsigned int *') increases required alignment from 1 to 4 [-Wcast-align]
        script->closedSlots = (uint32 *)cursor;
                              ^~~~~~~~~~~~~~~~
../jsscript.cpp:1364:36: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'js::Value *' increases required alignment from 1 to 8 [-Wcast-align]
        script->consts()->vector = (Value *)cursor;
                                   ^~~~~~~~~~~~~~~
In file included from ../jsstr.cpp:81:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
In file included from ../jsscript.cpp:50:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsscript.cpp:50:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
./dist/include/jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
./dist/include/jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsscript.cpp:50:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
./dist/include/jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
./dist/include/jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsscript.cpp:50:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
./dist/include/jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
./dist/include/jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsscript.cpp:50:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jsscript.cpp:50:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsemit.h:550:36: note: in instantiation of member function 'js::Vector::Vector' requested here
    JSGCConstList(JSContext *cx) : list(cx) {}
                                   ^
In file included from ../jsscript.cpp:50:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jsscript.cpp:50:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jsscript.cpp:50:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jsscript.cpp:50:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:205:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    ExecutableAllocator() {}
    ^
In file included from ../jsscript.cpp:50:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:412:24: note: in instantiation of member function 'js::Vector::Vector' requested here
inline ExecutablePool::ExecutablePool(size_t n) : m_refCount(1), m_destroy(false), m_gcNumber(0)
                       ^
In file included from ../jsscript.cpp:70:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jsscript.cpp:50:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jsscript.cpp:50:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsscript.cpp:50:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jsscript.cpp:50:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsscript.cpp:50:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsscript.cpp:50:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jsscript.cpp:50:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsscript.cpp:50:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jsscript.cpp:50:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsscript.cpp:50:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsscript.cpp:51:
In file included from ./dist/include/jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../jsscript.cpp:51:
In file included from ./dist/include/jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../jsscript.cpp:51:
In file included from ./dist/include/jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../jsscript.cpp:51:
In file included from ./dist/include/jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../jsscript.cpp:51:
In file included from ./dist/include/jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../jsscript.cpp:51:
In file included from ./dist/include/jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../jsscript.cpp:51:
In file included from ./dist/include/jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../jsscript.cpp:51:
In file included from ./dist/include/jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../jsscript.cpp:61:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:176:1: note: expanded from here
js_static_assert63
^
In file included from ../jsscript.cpp:61:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:178:1: note: expanded from here
js_static_assert64
^
In file included from ../jsscript.cpp:61:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:180:1: note: expanded from here
js_static_assert65
^
../jsscript.cpp:713:9: warning: unused typedef 'js_static_assert67' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(tn->stackDepth) == sizeof(uint16));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:99:1: note: expanded from here
js_static_assert67
^
../jsscript.cpp:712:9: warning: unused typedef 'js_static_assert66' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(tn->kind) == sizeof(uint8));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:97:1: note: expanded from here
js_static_assert66
^
../jsscript.cpp:1289:5: warning: unused typedef 'js_static_assert78' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(sizeof(JSObjectArray) +
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:121:1: note: expanded from here
js_static_assert78
^
In file included from ../jsscript.cpp:50:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jsscript.cpp:51:
./dist/include/jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
In file included from ../jstypedarray.cpp:48:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jsstr.cpp:82:
In file included from ../jsregexpinlines.h:49:
In file included from ../yarr/yarr/RegexJIT.h:34:
../yarr/yarr/RegexPattern.h:136:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jstypedarray.cpp:51:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jstypedarray.cpp:51:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
../jsstr.cpp:2279:16: warning: implicit conversion of NULL constant to 'bool' [-Wnull-conversion]
        return NULL;
        ~~~~~~ ^~~~
               false
In file included from ../jstypedarray.cpp:52:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jstypedarray.cpp:52:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jstypedarray.cpp:64:
In file included from ../jsobjinlines.h:53:
In file included from ../jsscope.h:59:
In file included from ../jsstrinlines.h:44:
In file included from ../jscntxtinlines.h:46:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
41 warnings generated.
jsutil.cpp
c++ -o jsutil.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsutil.pp ../jsutil.cpp
In file included from ../jstypedarray.cpp:64:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
In file included from ../jsutil.cpp:48:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
1 warning generated.
jswrapper.cpp
c++ -o jswrapper.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jswrapper.pp ../jswrapper.cpp
In file included from ../jswrapper.cpp:42:
In file included from ../jsapi.h:49:
In file included from ../jspubtd.h:47:
In file included from ../jsval.h:48:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jstypedarray.cpp:48:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jstypedarray.cpp:48:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jstypedarray.cpp:48:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jstypedarray.cpp:48:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jstypedarray.cpp:48:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jstypedarray.cpp:48:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jstypedarray.cpp:48:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jstypedarray.cpp:48:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jstypedarray.cpp:64:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jstypedarray.cpp:48:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jstypedarray.cpp:48:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jstypedarray.cpp:48:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jstypedarray.cpp:48:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jstypedarray.cpp:48:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jstypedarray.cpp:48:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jstypedarray.cpp:48:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jstypedarray.cpp:48:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jstypedarray.cpp:48:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jstypedarray.cpp:48:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jstypedarray.cpp:52:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:262:1: note: expanded from here
js_static_assert45
^
In file included from ../jstypedarray.cpp:52:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:264:1: note: expanded from here
js_static_assert46
^
In file included from ../jstypedarray.cpp:52:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:266:1: note: expanded from here
js_static_assert47
^
In file included from ../jstypedarray.cpp:52:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:268:1: note: expanded from here
js_static_assert48
^
In file included from ../jstypedarray.cpp:52:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:284:1: note: expanded from here
js_static_assert56
^
In file included from ../jstypedarray.cpp:52:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:286:1: note: expanded from here
js_static_assert57
^
In file included from ../jstypedarray.cpp:52:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:292:1: note: expanded from here
js_static_assert60
^
In file included from ../jstypedarray.cpp:52:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:290:1: note: expanded from here
js_static_assert59
^
In file included from ../jstypedarray.cpp:64:
In file included from ../jsobjinlines.h:53:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:67:1: note: expanded from here
js_static_assert63
^
In file included from ../jstypedarray.cpp:64:
In file included from ../jsobjinlines.h:53:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:69:1: note: expanded from here
js_static_assert64
^
In file included from ../jstypedarray.cpp:64:
In file included from ../jsobjinlines.h:53:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:71:1: note: expanded from here
js_static_assert65
^
../jstypedarray.cpp:1351:5: warning: unused typedef 'js_static_assert68' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(sizeof(NativeType) < 4);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:88:1: note: expanded from here
js_static_assert68
^
In file included from ../jstypedarray.cpp:48:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jstypedarray.cpp:52:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jswrapper.cpp:43:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jswrapper.cpp:43:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jswrapper.cpp:48:
In file included from ../methodjit/PolyIC.h:50:
In file included from ../methodjit/BaseAssembler.h:53:
In file included from ../jsobjinlines.h:53:
In file included from ../jsscope.h:59:
In file included from ../jsstrinlines.h:44:
In file included from ../jscntxtinlines.h:46:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jswrapper.cpp:48:
In file included from ../methodjit/PolyIC.h:50:
In file included from ../methodjit/BaseAssembler.h:53:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
57 warnings generated.
jsxdrapi.cpp
c++ -o jsxdrapi.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsxdrapi.pp ../jsxdrapi.cpp
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jsxdrapi.cpp:47:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:205:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    ExecutableAllocator() {}
    ^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:412:24: note: in instantiation of member function 'js::Vector::Vector' requested here
inline ExecutablePool::ExecutablePool(size_t n) : m_refCount(1), m_destroy(false), m_gcNumber(0)
                       ^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jswrapper.cpp:48:
In file included from ../methodjit/PolyIC.h:50:
In file included from ../methodjit/BaseAssembler.h:53:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../methodjit/BaseAssembler.h:206:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : callPatches(SystemAllocPolicy()),
        ^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsutil.h:260:17: note: in instantiation of member function 'js::Vector::Vector' requested here
    JS_NEW_BODY(T, (p1))
                ^
../methodjit/PolyIC.h:195:41: note: in instantiation of function template specialization 'js_new, js::SystemAllocPolicy>' requested here
            ExecPoolVector *execPools = js_new(SystemAllocPolicy()); 
                                        ^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../jswrapper.cpp:48:
In file included from ../methodjit/PolyIC.h:50:
In file included from ../methodjit/BaseAssembler.h:53:
In file included from ../jsobjinlines.h:53:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:185:1: note: expanded from here
js_static_assert63
^
In file included from ../jswrapper.cpp:48:
In file included from ../methodjit/PolyIC.h:50:
In file included from ../methodjit/BaseAssembler.h:53:
In file included from ../jsobjinlines.h:53:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:187:1: note: expanded from here
js_static_assert64
^
In file included from ../jswrapper.cpp:48:
In file included from ../methodjit/PolyIC.h:50:
In file included from ../methodjit/BaseAssembler.h:53:
In file included from ../jsobjinlines.h:53:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:189:1: note: expanded from here
js_static_assert65
^
In file included from ../jswrapper.cpp:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jswrapper.cpp:43:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
In file included from ../jsxdrapi.cpp:51:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jsxdrapi.cpp:51:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsxdrapi.cpp:51:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsxdrapi.cpp:58:
In file included from ../jsobjinlines.h:53:
In file included from ../jsscope.h:59:
In file included from ../jsstrinlines.h:44:
In file included from ../jscntxtinlines.h:46:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsxdrapi.cpp:58:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
In file included from ../jsxdrapi.cpp:51:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsxdrapi.cpp:51:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsxdrapi.cpp:51:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsxdrapi.cpp:51:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsxdrapi.cpp:51:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jsxdrapi.cpp:51:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jsxdrapi.cpp:51:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jsxdrapi.cpp:51:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jsxdrapi.cpp:58:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jsxdrapi.cpp:51:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jsxdrapi.cpp:51:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsxdrapi.cpp:51:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jsxdrapi.cpp:51:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsxdrapi.cpp:51:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsxdrapi.cpp:51:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jsxdrapi.cpp:51:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsxdrapi.cpp:51:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsxdrapi.cpp:51:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jsxdrapi.cpp:51:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsxdrapi.cpp:51:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../jsxdrapi.cpp:51:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../jsxdrapi.cpp:51:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../jsxdrapi.cpp:51:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../jsxdrapi.cpp:51:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../jsxdrapi.cpp:51:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../jsxdrapi.cpp:51:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../jsxdrapi.cpp:51:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../jsxdrapi.cpp:58:
In file included from ../jsobjinlines.h:53:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:176:1: note: expanded from here
js_static_assert63
^
In file included from ../jsxdrapi.cpp:58:
In file included from ../jsobjinlines.h:53:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:178:1: note: expanded from here
js_static_assert64
^
In file included from ../jsxdrapi.cpp:58:
In file included from ../jsobjinlines.h:53:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:180:1: note: expanded from here
js_static_assert65
^
In file included from ../jsxdrapi.cpp:51:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jsxdrapi.cpp:51:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
43 warnings generated.
jsxml.cpp
c++ -o jsxml.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsxml.pp ../jsxml.cpp
In file included from ../jsxml.cpp:49:
In file included from ../jsbit.h:44:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
39 warnings generated.
prmjtime.cpp
c++ -o prmjtime.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/prmjtime.pp ../prmjtime.cpp
In file included from ../jsxml.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../prmjtime.cpp:51:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsxml.cpp:56:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsxml.cpp:56:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
1 warning generated.
sharkctl.cpp
c++ -o sharkctl.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/sharkctl.pp ../sharkctl.cpp
jstracer.cpp
c++ -o jstracer.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jstracer.pp ../jstracer.cpp
In file included from ../jsxml.cpp:64:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jstracer.cpp:43:
In file included from ../jsbit.h:44:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsxml.cpp:76:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
In file included from ../jstracer.cpp:58:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jstracer.cpp:58:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jstracer.cpp:60:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jsxml.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsxml.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsxml.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsxml.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsxml.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jsxml.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jsxml.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jsxml.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jsxml.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
In file included from ../jstracer.cpp:62:
../jscntxt.h:                                 ^271:
16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
../assembler/jit/ExecutableAllocator.h:205:5:         return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
note: in instantiation of member function 'js::Vector::Vector' requested here
    ExecutableAllocator() {}
    ^
In file included from ../jsxml.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:412:24: note: in instantiation of member function 'js::Vector::Vector' requested here
inline ExecutablePool::ExecutablePool(size_t n) : m_refCount(1), m_destroy(false), m_gcNumber(0)
                       ^
In file included from ../jsxml.cpp:76:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jsxml.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
../jsxml.cpp:110:1: warning: unused function 'js_LeaveLocalRootScopeWithResult' [-Wunused-function]
js_LeaveLocalRootScopeWithResult(JSContext *cx, jsval rval)
^
In file included from ../jsxml.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsxml.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jsxml.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsxml.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsxml.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jsxml.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsxml.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsxml.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jsxml.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsxml.cpp:56:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../jsxml.cpp:56:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../jsxml.cpp:56:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../jsxml.cpp:56:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../jsxml.cpp:56:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../jsxml.cpp:56:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../jsxml.cpp:56:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../jsxml.cpp:56:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../jsxml.cpp:66:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
../jscntxt.h    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);:2179
    ^:14
../jsutil.h:120: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
:21: note: expanded from macro 'JS_STATIC_ASSERT'
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
:../jsutil.h:118:40445:6: note: : expanded from macro 'COMMON_ATOMS_START'
note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:176:1: note: expanded from here
js_static_assert63
^
In file included from ../jsxml.cpp:66:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:178:1: note: expanded from here
js_static_assert64
^
In file included from ../jsxml.cpp:66:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:180:1: note: expanded from here
js_static_assert65
^
In file included from ../jsxml.cpp:53:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jsxml.cpp:56:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
In file included from ../jstracer.cpp:62:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jstracer.cpp:66:
In file included from ../jsemit.h:49:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jstracer.cpp:87:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
../jstracer.cpp:2980:14: warning: cast from 'double *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        v = *(Value *)slot;
             ^~~~~~~~~~~~~
In file included from ../jsstr.cpp:59:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsstr.cpp:59:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsstr.cpp:59:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsstr.cpp:59:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsstr.cpp:59:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jsstr.cpp:59:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jsstr.cpp:59:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jsstr.cpp:59:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jsstr.cpp:59:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:205:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    ExecutableAllocator() {}
    ^
In file included from ../jsstr.cpp:59:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:412:24: note: in instantiation of member function 'js::Vector::Vector' requested here
inline ExecutablePool::ExecutablePool(size_t n) : m_refCount(1), m_destroy(false), m_gcNumber(0)
                       ^
In file included from ../jsstr.cpp:81:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jsstr.cpp:59:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jsstr.cpp:59:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../yarr/yarr/RegexPattern.h:93:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    CharacterClass(CharacterClassTable *table)
    ^
In file included from ../jsstr.cpp:59:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../yarr/yarr/RegexPattern.h:93:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    CharacterClass(CharacterClassTable *table)
    ^
In file included from ../jsstr.cpp:59:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../yarr/yarr/RegexPattern.h:233:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    PatternAlternative(PatternDisjunction* disjunction)
    ^
In file included from ../jsstr.cpp:59:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../yarr/yarr/RegexPattern.h:282:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    PatternDisjunction(PatternAlternative* parent = 0)
    ^
In file included from ../jsstr.cpp:59:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../yarr/yarr/RegexPattern.h:321:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    RegexPattern(bool ignoreCase, bool multiline)
    ^
In file included from ../jsstr.cpp:59:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../yarr/yarr/RegexPattern.h:321:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    RegexPattern(bool ignoreCase, bool multiline)
    ^
In file included from ../jsstr.cpp:59:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstr.cpp:1291:47: note: in instantiation of member function 'js::Vector::Vector' requested here
    Vector strs;
                                              ^
In file included from ../jsstr.cpp:59:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsstr.cpp:59:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jsstr.cpp:59:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsstr.cpp:59:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsstr.cpp:59:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jsstr.cpp:59:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsstr.cpp:59:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsstr.cpp:59:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsstr.cpp:59:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jsstr.cpp:63:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:262:1: note: expanded from here
js_static_assert45
^
In file included from ../jsstr.cpp:63:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:264:1: note: expanded from here
js_static_assert46
^
In file included from ../jsstr.cpp:63:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:268:1: note: expanded from here
js_static_assert48
^
In file included from ../jsstr.cpp:63:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:266:1: note: expanded from here
js_static_assert47
^
In file included from ../jsstr.cpp:63:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:284:1: note: expanded from here
js_static_assert56
^
In file included from ../jsstr.cpp:63:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:286:1: note: expanded from here
js_static_assert57
^
In file included from ../jsstr.cpp:63:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:290:1: note: expanded from here
js_static_assert59
^
In file included from ../jsstr.cpp:63:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:292:1: note: expanded from here
js_static_assert60
^
In file included from ../jsstr.cpp:72:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:67:1: note: expanded from here
js_static_assert63
^
In file included from ../jsstr.cpp:72:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:69:1: note: expanded from here
js_static_assert64
^
In file included from ../jsstr.cpp:72:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:71:1: note: expanded from here
js_static_assert65
^
../jsstr.cpp:119:5: warning: unused typedef 'js_static_assert68' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSString::MAX_LENGTH * sizeof(jschar) < UINT32_MAX);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:86:1: note: expanded from here
js_static_assert68
^
../jsstr.cpp:3501:5: warning: unused typedef 'js_static_assert74' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSShortString::MAX_SHORT_STRING_LENGTH < CharBuffer::InlineLength);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:167:1: note: expanded from here
js_static_assert74
^
In file included from ../jsstr.cpp:59:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jsstr.cpp:63:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
../jstracer.cpp:17359:20: warning: unused variable 'v' [-Wunused-variable]
        StackValue v = stackAt(-1);
                   ^
42 warnings generated.
Assembler.cpp
c++ -o Assembler.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/Assembler.pp ../nanojit/Assembler.cpp
In file included from ../jstracer.cpp:60:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jstracer.cpp:60:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jstracer.cpp:60:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jstracer.cpp:60:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jstracer.cpp:60:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jstracer.cpp:60:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsemit.h:550:36: note: in instantiation of member function 'js::Vector::Vector' requested here
    JSGCConstList(JSContext *cx) : list(cx) {}
                                   ^
In file included from ../jstracer.cpp:60:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jstracer.cpp:60:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jstracer.cpp:60:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jstracer.cpp:60:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:205:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    ExecutableAllocator() {}
    ^
In file included from ../jstracer.cpp:60:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:412:24: note: in instantiation of member function 'js::Vector::Vector' requested here
inline ExecutablePool::ExecutablePool(size_t n) : m_refCount(1), m_destroy(false), m_gcNumber(0)
                       ^
In file included from ../jstracer.cpp:87:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jstracer.cpp:60:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jstracer.cpp:60:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jstracer.cpp:2307:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    pendingGlobalSlotsToSet(cx),
    ^
In file included from ../jstracer.cpp:60:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jstracer.cpp:2310:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    tempTypeMap(cx),
    ^
In file included from ../nanojit/Assembler.cpp:40:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../nanojit/Assembler.cpp:40:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jstracer.cpp:43:
In file included from ../jsbit.h:44:
../jsutil.h:422:12: warning: destination for this 'memset' call is a pointer to dynamic class 'LogControl'; vtable pointer will be overwritten [-Wdynamic-class-memaccess]
    memset(t, 0, sizeof(T));
    ~~~~~~ ^
../jstracer.cpp:7712:5: note: in instantiation of function template specialization 'js::PodZero' requested here
    PodZero(&LogController);
    ^
../jsutil.h:422:12: note: explicitly cast the pointer to silence this warning
    memset(t, 0, sizeof(T));
           ^
           (void*)
../jstracer.cpp:1230:1: warning: unused function 'isFrameObjPtrTraceType' [-Wunused-function]
isFrameObjPtrTraceType(JSValueType t)
^
In file included from ../jstracer.cpp:60:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:38:1: note: expanded from here
js_static_assert7
^
In file included from ../jstracer.cpp:60:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:40:1: note: expanded from here
js_static_assert8
^
In file included from ../jstracer.cpp:60:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:32:1: note: expanded from here
js_static_assert4
^
In file included from ../jstracer.cpp:60:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:34:1: note: expanded from here
js_static_assert5
^
In file included from ../jstracer.cpp:60:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:36:1: note: expanded from here
js_static_assert6
^
In file included from ../jstracer.cpp:60:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:98:1: note: expanded from here
js_static_assert37
^
In file included from ../jstracer.cpp:60:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:106:1: note: expanded from here
js_static_assert41
^
In file included from ../jstracer.cpp:60:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:108:1: note: expanded from here
js_static_assert42
^
In file included from ../jstracer.cpp:60:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:110:1: note: expanded from here
js_static_assert43
^
In file included from ../jstracer.cpp:62:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:194:1: note: expanded from here
js_static_assert46
^
In file included from ../jstracer.cpp:62:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:192:1: note: expanded from here
js_static_assert45
^
In file included from ../jstracer.cpp:62:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:198:1: note: expanded from here
js_static_assert48
^
In file included from ../jstracer.cpp:62:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:196:1: note: expanded from here
js_static_assert47
^
In file included from ../jstracer.cpp:62:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:214:1: note: expanded from here
js_static_assert56
^
In file included from ../jstracer.cpp:62:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:216:1: note: expanded from here
js_static_assert57
^
In file included from ../jstracer.cpp:62:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:222:1: note: expanded from here
js_static_assert60
^
In file included from ../jstracer.cpp:62:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:220:1: note: expanded from here
js_static_assert59
^
In file included from ../jstracer.cpp:74:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:318:1: note: expanded from here
js_static_assert63
^
In file included from ../jstracer.cpp:74:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:320:1: note: expanded from here
js_static_assert64
^
In file included from ../jstracer.cpp:74:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:322:1: note: expanded from here
js_static_assert65
^
../jstracer.cpp:2979:9: warning: unused typedef 'js_static_assert71' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(Value) == sizeof(double));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:162:1: note: expanded from here
js_static_assert71
^
../jstracer.cpp:10118:5: warning: unused typedef 'js_static_assert74' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSID_TYPE_STRING == 0);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:79:1: note: expanded from here
js_static_assert74
^
../jstracer.cpp:11186:5: warning: unused typedef 'js_static_assert76' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(((JS_TRUE & 1) ^ 1) << 1 == 0);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:112:1: note: expanded from here
js_static_assert76
^
../jstracer.cpp:11187:5: warning: unused typedef 'js_static_assert77' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(((JS_FALSE & 1) ^ 1) << 1 == BUILTIN_ERROR);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:114:1: note: expanded from here
js_static_assert77
^
../jstracer.cpp:12842:5: warning: unused typedef 'js_static_assert87' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(sizeof(jsid) == sizeof(void *));
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:95:1: note: expanded from here
js_static_assert87
^
In file included from ../jstracer.cpp:60:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jstracer.cpp:62:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
../jstracer.cpp:3053:16: warning: private field 'mCx' is not used [-Wunused-private-field]
    JSContext *mCx;
               ^
../jstracer.cpp:3143:24: warning: private field 'mInitTypeMap' is not used [-Wunused-private-field]
    const JSValueType *mInitTypeMap;
                       ^
../jstracer.cpp:3642:19: warning: private field 'mFp' is not used [-Wunused-private-field]
    JSStackFrame *mFp;
                  ^
../jstracer.cpp:4030:25: warning: private field 'mLirbuf' is not used [-Wunused-private-field]
    nanojit::LirBuffer *mLirbuf;
                        ^
2 warnings generated.
Allocator.cpp
c++ -o Allocator.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/Allocator.pp ../nanojit/Allocator.cpp
In file included from ../nanojit/Allocator.cpp:40:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../nanojit/Allocator.cpp:40:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
2 warnings generated.
CodeAlloc.cpp
c++ -o CodeAlloc.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/CodeAlloc.pp ../nanojit/CodeAlloc.cpp
In file included from ../nanojit/CodeAlloc.cpp:40:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../nanojit/CodeAlloc.cpp:40:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
2 warnings generated.
Containers.cpp
c++ -o Containers.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/Containers.pp ../nanojit/Containers.cpp
In file included from ../nanojit/Containers.cpp:40:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../nanojit/Containers.cpp:40:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
2 warnings generated.
Fragmento.cpp
c++ -o Fragmento.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/Fragmento.pp ../nanojit/Fragmento.cpp
In file included from ../nanojit/Fragmento.cpp:42:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../nanojit/Fragmento.cpp:42:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
2 warnings generated.
LIR.cpp
c++ -o LIR.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/LIR.pp ../nanojit/LIR.cpp
In file included from ../nanojit/LIR.cpp:40:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../nanojit/LIR.cpp:40:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
../nanojit/LIR.cpp:384:34: warning: cast from 'const char *' to 'nanojit::LIns *' increases required alignment from 1 to 4 [-Wcast-align]
        return ins1(LIR_comment, (LIns*)str);
                                 ^~~~~~~~~~
In file included from ../nanojit/LIR.cpp:40:
In file included from ../nanojit/nanojit.h:376:
../nanojit/LIR.h:2150:33: warning: private field '_config' is not used [-Wunused-private-field]
        const Config&           _config;
                                ^
4 warnings generated.
njconfig.cpp
c++ -o njconfig.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/njconfig.pp ../nanojit/njconfig.cpp
In file included from ../nanojit/njconfig.cpp:40:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../nanojit/njconfig.cpp:40:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
2 warnings generated.
RegAlloc.cpp
c++ -o RegAlloc.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/RegAlloc.pp ../nanojit/RegAlloc.cpp
In file included from ../nanojit/RegAlloc.cpp:40:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../nanojit/RegAlloc.cpp:40:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
2 warnings generated.
avmplus.cpp
c++ -o avmplus.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/avmplus.pp ../nanojit/avmplus.cpp
In file included from ../nanojit/avmplus.cpp:36:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../nanojit/avmplus.cpp:36:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
2 warnings generated.
Nativei386.cpp
c++ -o Nativei386.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/Nativei386.pp ../nanojit/Nativei386.cpp
54 warnings generated.
jsbuiltins.cpp
c++ -o jsbuiltins.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/jsbuiltins.pp ../jsbuiltins.cpp
In file included from ../nanojit/Nativei386.cpp:41:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../nanojit/Nativei386.cpp:41:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
../nanojit/Nativei386.cpp:1164:14: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            *(int32_t*)&branch[1] = offset - 5;
             ^~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.cpp:1166:14: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            *(int32_t*)&branch[2] = offset - 6;
             ^~~~~~~~~~~~~~~~~~~~
In file included from ../jsbuiltins.cpp:44:
In file included from ../jsapi.h:49:
In file included from ../jspubtd.h:47:
In file included from ../jsval.h:48:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsbuiltins.cpp:46:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../jsbuiltins.cpp:48:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsbuiltins.cpp:48:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../jsbuiltins.cpp:57:
In file included from ../jsscope.h:59:
In file included from ../jsstrinlines.h:44:
In file included from ../jscntxtinlines.h:46:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
42 warnings generated.
VMPI.cpp
c++ -o VMPI.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/VMPI.pp ../nanojit/VMPI.cpp
In file included from ../jsbuiltins.cpp:59:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../jsbuiltins.cpp:59:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../nanojit/VMPI.cpp:35:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../nanojit/VMPI.cpp:35:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
2 warnings generated.
Writer.cpp
c++ -o Writer.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/Writer.pp ../tracejit/Writer.cpp
In file included from ../tracejit/Writer.cpp:41:
In file included from ../jstl.h:43:
In file included from ../jsbit.h:44:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../jsbuiltins.cpp:64:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
In file included from ../jsbuiltins.cpp:46:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../jsbuiltins.cpp:46:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../jsbuiltins.cpp:46:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../jsbuiltins.cpp:46:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../jsbuiltins.cpp:46:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../jsbuiltins.cpp:46:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../jsbuiltins.cpp:46:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../jsbuiltins.cpp:46:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../jsbuiltins.cpp:64:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../jsbuiltins.cpp:46:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../jsbuiltins.cpp:46:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../jsbuiltins.cpp:46:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../jsbuiltins.cpp:46:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../jsbuiltins.cpp:46:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../jsbuiltins.cpp:46:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../jsbuiltins.cpp:46:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../jsbuiltins.cpp:46:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../jsbuiltins.cpp:46:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../jsbuiltins.cpp:46:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../jsbuiltins.cpp:48:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../jsbuiltins.cpp:48:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../jsbuiltins.cpp:48:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../jsbuiltins.cpp:48:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../jsbuiltins.cpp:48:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../jsbuiltins.cpp:48:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../jsbuiltins.cpp:48:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../jsbuiltins.cpp:48:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../jsbuiltins.cpp:57:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:176:1: note: expanded from here
js_static_assert63
^
In file included from ../jsbuiltins.cpp:57:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:178:1: note: expanded from here
js_static_assert64
^
In file included from ../jsbuiltins.cpp:57:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:180:1: note: expanded from here
js_static_assert65
^
In file included from ../jsbuiltins.cpp:46:
In file included from ../jsarray.h:47:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../jsbuiltins.cpp:48:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
In file included from ../tracejit/Writer.cpp:42:
In file included from ../jscompartment.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../tracejit/Writer.cpp:42:
In file included from ../jscompartment.h:43:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../tracejit/Writer.cpp:42:
In file included from ../jscompartment.h:43:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
41 warnings generated.
MethodJIT.cpp
c++ -o MethodJIT.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/MethodJIT.pp ../methodjit/MethodJIT.cpp
In file included from ../methodjit/MethodJIT.cpp:39:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:55:
In file included from ../jsprvtd.h:57:
In file included from ../jspubtd.h:47:
In file included from ../jsval.h:48:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../tracejit/Writer.cpp:43:
In file included from ../tracejit/Writer.h:47:
In file included from ./dist/include/nanojit.h:379:
./dist/include/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
./dist/include/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../tracejit/Writer.cpp:43:
In file included from ../tracejit/Writer.h:47:
In file included from ./dist/include/nanojit.h:379:
./dist/include/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
./dist/include/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../tracejit/Writer.cpp:42:
In file included from ../jscompartment.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../tracejit/Writer.cpp:42:
In file included from ../jscompartment.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../tracejit/Writer.cpp:42:
In file included from ../jscompartment.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../tracejit/Writer.cpp:42:
In file included from ../jscompartment.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../tracejit/Writer.cpp:42:
In file included from ../jscompartment.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../tracejit/Writer.cpp:42:
In file included from ../jscompartment.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../tracejit/Writer.cpp:42:
In file included from ../jscompartment.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../tracejit/Writer.cpp:42:
In file included from ../jscompartment.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../tracejit/Writer.cpp:42:
In file included from ../jscompartment.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../tracejit/Writer.cpp:42:
In file included from ../jscompartment.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../tracejit/Writer.cpp:42:
In file included from ../jscompartment.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../tracejit/Writer.cpp:42:
In file included from ../jscompartment.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../tracejit/Writer.cpp:42:
In file included from ../jscompartment.h:43:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../tracejit/Writer.cpp:42:
In file included from ../jscompartment.h:43:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../tracejit/Writer.cpp:42:
In file included from ../jscompartment.h:43:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../tracejit/Writer.cpp:42:
In file included from ../jscompartment.h:43:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../tracejit/Writer.cpp:42:
In file included from ../jscompartment.h:43:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../tracejit/Writer.cpp:42:
In file included from ../jscompartment.h:43:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../tracejit/Writer.cpp:42:
In file included from ../jscompartment.h:43:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../tracejit/Writer.cpp:42:
In file included from ../jscompartment.h:43:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../tracejit/Writer.cpp:42:
In file included from ../jscompartment.h:43:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
28 warnings generated.
StubCalls.cpp
c++ -o StubCalls.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/StubCalls.pp ../methodjit/StubCalls.cpp
4 warnings generated.
Compiler.cpp
c++ -o Compiler.o -c  -fvisibility=hidden -DOSTYPE=\"MidnightBSD3.0.0\" -DOSARCH=MidnightBSD -DEXPORT_JS_API -D__STDC_LIMIT_MACROS  -I.. -I. -I./dist/include -I./dist/include/nsprpub  -I/usr/local/include/nspr   -I.. -I../assembler -I../yarr  -fPIC  -fno-rtti -fno-exceptions -Wall -Wpointer-arith -Woverloaded-virtual -Wsynth -Wno-ctor-dtor-privacy -Wno-non-virtual-dtor -Wcast-align -Wno-invalid-offsetof -Wno-variadic-macros -Werror=return-type -pedantic -Wno-long-long -O2 -pipe -fstack-protector-strong -fno-strict-aliasing -std=gnu++98 -fno-strict-aliasing -DNDEBUG -DTRIMMED -O3 -fstrict-aliasing -fomit-frame-pointer -DUSE_SYSTEM_MALLOC=1 -DENABLE_ASSEMBLER=1 -DENABLE_JIT=1   -DMOZILLA_CLIENT -include ./js-confdefs.h -MD -MF .deps/Compiler.pp ../methodjit/Compiler.cpp
In file included from ../methodjit/MethodJIT.cpp:39:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../methodjit/StubCalls.cpp:41:
In file included from ../jscntxt.h:55:
In file included from ../jsprvtd.h:57:
In file included from ../jspubtd.h:47:
In file included from ../jsval.h:48:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:55:
In file included from ../jsprvtd.h:57:
In file included from ../jspubtd.h:47:
In file included from ../jsval.h:48:
../jsutil.h:304:2: warning: misleading indentation; statement is not part of the previous 'if' [-Wmisleading-indentation]
        *(size_t *)memory = n;
        ^
../jsutil.h:302:5: note: previous statement is here
    if (!memory)
    ^
In file included from ../methodjit/MethodJIT.cpp:39:
In file included from ../methodjit/MethodJIT.h:42:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../methodjit/MethodJIT.cpp:39:
In file included from ../methodjit/MethodJIT.h:42:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../methodjit/MethodJIT.cpp:42:
In file included from ../jstracer.h:48:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../methodjit/MethodJIT.cpp:42:
In file included from ../jstracer.h:48:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../methodjit/StubCalls.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:138:9: warning: anonymous types declared in an anonymous union are an extension [-Wnested-anon-types]
        struct {
        ^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
In file included from ../methodjit/StubCalls.cpp:41:
../jscntxt.h:271:16: warning: cast from 'const js::StackSegment *' to 'js::Value *' increases required alignment from 4 to 8 [-Wcast-align]
        return (Value *)(this + 1);
               ^~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jscntxt.h:2179:14: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSAtom **' increases required alignment from 1 to 4 [-Wcast-align]
           ? COMMON_ATOMS_START(&cx->runtime->atomState)
             ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../jsatom.h:445:6: note: expanded from macro 'COMMON_ATOMS_START'
    ((JSAtom **)((uint8 *)(state) + ATOM_OFFSET_START))
     ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../methodjit/StubCalls.cpp:41:
../jscntxt.h:2963:12: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'JSContext *' increases required alignment from 1 to 8 [-Wcast-align]
    return (JSContext *) ((uint8 *) link - offsetof(JSContext, link));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../methodjit/StubCalls.cpp:42:
In file included from ../jsscope.h:59:
In file included from ../jsstrinlines.h:44:
In file included from ../jscntxtinlines.h:46:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../methodjit/Compiler.cpp:45:
In file included from ../jsemit.h:49:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../methodjit/MethodJIT.cpp:43:
In file included from ../methodjit/BaseAssembler.h:53:
In file included from ../jsobjinlines.h:53:
In file included from ../jsscope.h:59:
In file included from ../jsstrinlines.h:44:
In file included from ../jscntxtinlines.h:46:
../jsparse.h:654:16: warning: cast from 'char *' to 'JSParseNode *' increases required alignment from 1 to 4 [-Wcast-align]
        return (JSParseNode *)((char *)pn_tail - offsetof(JSParseNode, pn_next));
               ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../methodjit/MethodJIT.cpp:43:
In file included from ../methodjit/BaseAssembler.h:53:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
In file included from ../methodjit/MethodJIT.cpp:44:
In file included from ../methodjit/Compiler.h:49:
In file included from ../methodjit/StubCompiler.h:47:
In file included from ../methodjit/FrameState.h:45:
../methodjit/FrameEntry.h:69:25: warning: passing 4-byte aligned argument to 8-byte aligned parameter 1 of 'Valueify' may result in an unaligned pointer access [-Walign-mismatch]
        return Valueify(JSVAL_FROM_LAYOUT(v_));
                        ^
../jsval.h:823:30: note: expanded from macro 'JSVAL_FROM_LAYOUT'
#define JSVAL_FROM_LAYOUT(l) ((l).asBits)
                             ^
In file included from ../methodjit/StubCalls.cpp:53:
In file included from ../methodjit/Compiler.h:47:
In file included from ../methodjit/CodeGenIncludes.h:63:
In file included from ../methodjit/BaseAssembler.h:53:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
In file included from ../methodjit/Compiler.cpp:47:
In file included from ../methodjit/Compiler.h:47:
In file included from ../methodjit/CodeGenIncludes.h:63:
In file included from ../methodjit/BaseAssembler.h:53:
../jsobjinlines.h:302:20: warning: operator '?:' has lower precedence than '+'; '+' will be evaluated first [-Wparentheses]
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
           ~~~~~~~ ^
../jsobjinlines.h:302:20: note: place parentheses around the '+' expression to silence this warning
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
                  )
../jsobjinlines.h:302:20: note: place parentheses around the '?:' expression to evaluate it first
           + isFun ? sizeof(JSFunction) : sizeof(JSObject);
                   ^
             (                                            )
../methodjit/MethodJIT.cpp:318:5: error: expected '(' after 'asm'
asm VOLATILE (
    ^
../methodjit/MethodJIT.cpp:318:4: error: expected ';' after top-level asm block
asm VOLATILE (
   ^
   ;
../methodjit/MethodJIT.cpp:318:5: error: C++ requires a type specifier for all declarations
asm VOLATILE (
    ^
../methodjit/MethodJIT.cpp:348:5: error: expected '(' after 'asm'
asm VOLATILE (
    ^
../methodjit/MethodJIT.cpp:348:4: error: expected ';' after top-level asm block
asm VOLATILE (
   ^
   ;
../methodjit/MethodJIT.cpp:348:5: error: C++ requires a type specifier for all declarations
asm VOLATILE (
    ^
../methodjit/MethodJIT.cpp:366:5: error: expected '(' after 'asm'
asm VOLATILE (
    ^
../methodjit/MethodJIT.cpp:366:4: error: expected ';' after top-level asm block
asm VOLATILE (
   ^
   ;
../methodjit/MethodJIT.cpp:366:5: error: C++ requires a type specifier for all declarations
asm VOLATILE (
    ^
../methodjit/MethodJIT.cpp:397:5: error: expected '(' after 'asm'
asm VOLATILE (
    ^
../methodjit/MethodJIT.cpp:397:4: error: expected ';' after top-level asm block
asm VOLATILE (
   ^
   ;
../methodjit/MethodJIT.cpp:397:5: error: C++ requires a type specifier for all declarations
asm VOLATILE (
    ^
../methodjit/MethodJIT.cpp:824:12: warning: cast from 'char *' to 'js::mjit::NativeMapEntry *' increases required alignment from 1 to 4 [-Wcast-align]
    return (NativeMapEntry *)((char*)this + sizeof(JITScript));
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../methodjit/MethodJIT.cpp:837:12: warning: cast from 'char *' to 'ic::GetGlobalNameIC *' increases required alignment from 1 to 4 [-Wcast-align]
    return (ic::GetGlobalNameIC *)nmapSectionLimit();
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../methodjit/MethodJIT.cpp:843:12: warning: cast from 'char *' to 'ic::SetGlobalNameIC *' increases required alignment from 1 to 8 [-Wcast-align]
    return (ic::SetGlobalNameIC *)((char *)nmapSectionLimit() +
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../methodjit/MethodJIT.cpp:850:12: warning: cast from 'char *' to 'ic::CallICInfo *' increases required alignment from 1 to 4 [-Wcast-align]
    return (ic::CallICInfo *)((char *)setGlobalNames() +
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../methodjit/MethodJIT.cpp:857:12: warning: cast from 'char *' to 'ic::EqualityICInfo *' increases required alignment from 1 to 8 [-Wcast-align]
    return (ic::EqualityICInfo *)((char *)callICs() + sizeof(ic::CallICInfo) * nCallICs);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../methodjit/MethodJIT.cpp:863:12: warning: cast from 'char *' to 'ic::TraceICInfo *' increases required alignment from 1 to 4 [-Wcast-align]
    return (ic::TraceICInfo *)((char *)equalityICs() + sizeof(ic::EqualityICInfo) * nEqualityICs);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../methodjit/MethodJIT.cpp:883:12: warning: cast from 'char *' to 'ic::GetElementIC *' increases required alignment from 1 to 8 [-Wcast-align]
    return (ic::GetElementIC *)monoICSectionsLimit();
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../methodjit/MethodJIT.cpp:889:12: warning: cast from 'char *' to 'ic::SetElementIC *' increases required alignment from 1 to 8 [-Wcast-align]
    return (ic::SetElementIC *)((char *)getElems() + sizeof(ic::GetElementIC) * nGetElems);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../methodjit/MethodJIT.cpp:895:12: warning: cast from 'char *' to 'ic::PICInfo *' increases required alignment from 1 to 8 [-Wcast-align]
    return (ic::PICInfo *)((char *)setElems() + sizeof(ic::SetElementIC) * nSetElems);
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../methodjit/MethodJIT.cpp:914:12: warning: cast from 'char *' to 'js::mjit::CallSite *' increases required alignment from 1 to 4 [-Wcast-align]
    return (js::mjit::CallSite *)polyICSectionsLimit();
           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../methodjit/MethodJIT.cpp:39:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ./dist/include/jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../methodjit/MethodJIT.cpp:39:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ./dist/include/jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
./dist/include/jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
./dist/include/jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../methodjit/MethodJIT.cpp:39:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ./dist/include/jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
./dist/include/jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
./dist/include/jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../methodjit/MethodJIT.cpp:39:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ./dist/include/jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
./dist/include/jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
./dist/include/jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../methodjit/MethodJIT.cpp:39:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ./dist/include/jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:205:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    ExecutableAllocator() {}
    ^
In file included from ../methodjit/MethodJIT.cpp:39:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ./dist/include/jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:412:24: note: in instantiation of member function 'js::Vector::Vector' requested here
inline ExecutablePool::ExecutablePool(size_t n) : m_refCount(1), m_destroy(false), m_gcNumber(0)
                       ^
In file included from ../methodjit/MethodJIT.cpp:39:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ./dist/include/jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../methodjit/MethodJIT.cpp:39:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ./dist/include/jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../methodjit/StubCalls.cpp:53:
In file included from ../methodjit/Compiler.h:49:
In file included from ../methodjit/StubCompiler.h:47:
In file included from ../methodjit/FrameState.h:45:
../methodjit/FrameEntry.h:69:25: warning: passing 4-byte aligned argument to 8-byte aligned parameter 1 of 'Valueify' may result in an unaligned pointer access [-Walign-mismatch]
        return Valueify(JSVAL_FROM_LAYOUT(v_));
                        ^
../jsval.h:823:30: note: expanded from macro 'JSVAL_FROM_LAYOUT'
#define JSVAL_FROM_LAYOUT(l) ((l).asBits)
                             ^
In file included from ../methodjit/Compiler.cpp:47:
In file included from ../methodjit/Compiler.h:49:
In file included from ../methodjit/StubCompiler.h:47:
In file included from ../methodjit/FrameState.h:45:
../methodjit/FrameEntry.h:69:25: warning: passing 4-byte aligned argument to 8-byte aligned parameter 1 of 'Valueify' may result in an unaligned pointer access [-Walign-mismatch]
        return Valueify(JSVAL_FROM_LAYOUT(v_));
                        ^
../jsval.h:823:30: note: expanded from macro 'JSVAL_FROM_LAYOUT'
#define JSVAL_FROM_LAYOUT(l) ((l).asBits)
                             ^
In file included from ../methodjit/MethodJIT.cpp:39:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ./dist/include/jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../methodjit/MethodJIT.cpp:39:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ./dist/include/jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../methodjit/MethodJIT.cpp:43:
In file included from ../methodjit/BaseAssembler.h:53:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../methodjit/MethodJIT.cpp:39:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ./dist/include/jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../methodjit/MethodJIT.cpp:39:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ./dist/include/jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../methodjit/BaseAssembler.h:206:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : callPatches(SystemAllocPolicy()),
        ^
In file included from ../methodjit/MethodJIT.cpp:39:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ./dist/include/jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsutil.h:260:17: note: in instantiation of member function 'js::Vector::Vector' requested here
    JS_NEW_BODY(T, (p1))
                ^
../methodjit/PolyIC.h:195:41: note: in instantiation of function template specialization 'js_new, js::SystemAllocPolicy>' requested here
            ExecPoolVector *execPools = js_new(SystemAllocPolicy()); 
                                        ^
In file included from ../methodjit/MethodJIT.cpp:39:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ./dist/include/jscntxt.h:59:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../methodjit/MethodJIT.cpp:39:
In file included from ../methodjit/MethodJIT.h:42:
./dist/include/jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
36 warnings and 12 errors generated.
gmake[4]: *** [../config/rules.mk:1477: MethodJIT.o] Error 1
gmake[4]: *** Waiting for unfinished jobs....
../methodjit/Compiler.cpp:478:31: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'js::mjit::NativeMapEntry *' increases required alignment from 1 to 4 [-Wcast-align]
    NativeMapEntry *jitNmap = (NativeMapEntry *)cursor;
                              ^~~~~~~~~~~~~~~~~~~~~~~~
../methodjit/Compiler.cpp:497:44: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'ic::GetGlobalNameIC *' increases required alignment from 1 to 4 [-Wcast-align]
    ic::GetGlobalNameIC *getGlobalNames_ = (ic::GetGlobalNameIC *)cursor;
                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../methodjit/Compiler.cpp:512:44: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'ic::SetGlobalNameIC *' increases required alignment from 1 to 8 [-Wcast-align]
    ic::SetGlobalNameIC *setGlobalNames_ = (ic::SetGlobalNameIC *)cursor;
                                           ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../methodjit/Compiler.cpp:545:34: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'ic::CallICInfo *' increases required alignment from 1 to 4 [-Wcast-align]
    ic::CallICInfo *jitCallICs = (ic::CallICInfo *)cursor;
                                 ^~~~~~~~~~~~~~~~~~~~~~~~
../methodjit/Compiler.cpp:604:42: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'ic::EqualityICInfo *' increases required alignment from 1 to 8 [-Wcast-align]
    ic::EqualityICInfo *jitEqualityICs = (ic::EqualityICInfo *)cursor;
                                         ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../methodjit/Compiler.cpp:625:36: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'ic::TraceICInfo *' increases required alignment from 1 to 4 [-Wcast-align]
    ic::TraceICInfo *jitTraceICs = (ic::TraceICInfo *)cursor;
                                   ^~~~~~~~~~~~~~~~~~~~~~~~~
../methodjit/Compiler.cpp:665:37: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'ic::GetElementIC *' increases required alignment from 1 to 8 [-Wcast-align]
    ic::GetElementIC *jitGetElems = (ic::GetElementIC *)cursor;
                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~
../methodjit/Compiler.cpp:693:37: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'ic::SetElementIC *' increases required alignment from 1 to 8 [-Wcast-align]
    ic::SetElementIC *jitSetElems = (ic::SetElementIC *)cursor;
                                    ^~~~~~~~~~~~~~~~~~~~~~~~~~
In file included from ../methodjit/StubCalls.cpp:55:
In file included from ../jstracer.h:48:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int16_t *' (aka 'short *') increases required alignment from 1 to 2 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:219:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int16_t*)_nIns) = int16_t(i); \
              ^~~~~~~~~~~~~~~
In file included from ../methodjit/StubCalls.cpp:55:
In file included from ../jstracer.h:48:
In file included from ../jsbuiltins.h:45:
In file included from ../nanojit/nanojit.h:379:
../nanojit/Assembler.h:517:13: warning: cast from 'nanojit::NIns *' (aka 'unsigned char *') to 'int32_t *' (aka 'int *') increases required alignment from 1 to 4 [-Wcast-align]
../methodjit/Compiler.cpp:733:28: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'ic::PICInfo *' increases required alignment from 1 to 8 [-Wcast-align]
            DECLARE_PLATFORM_ASSEMBLER()
            ^~~~~~~~~~~~~~~~~~~~~~~~~~~~
    ic::PICInfo *jitPics = (ic::PICInfo *)cursor;
                           ^~~~~~~~~~~~~~~~~~~~~
../nanojit/Nativei386.h:223:15: note: expanded from macro 'DECLARE_PLATFORM_ASSEMBLER'
            *((int32_t*)_nIns) = int32_t(i); \
              ^~~~~~~~~~~~~~~
../methodjit/Compiler.cpp:768:25: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'double *' increases required alignment from 1 to 4 [-Wcast-align]
    double *doubleVec = (double *)(result + doubleOffset);
                        ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
../methodjit/Compiler.cpp:801:30: warning: cast from 'uint8 *' (aka 'unsigned char *') to 'js::mjit::CallSite *' increases required alignment from 1 to 4 [-Wcast-align]
    CallSite *jitCallSites = (CallSite *)cursor;
                             ^~~~~~~~~~~~~~~~~~
In file included from ../methodjit/StubCalls.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../methodjit/StubCalls.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../methodjit/StubCalls.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../methodjit/StubCalls.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:

In file included from ../jscntxt.h../jscntxt.h:3326:59:
In file included from ../jsatom.h:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsgc.h:926:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    GCHelperThread()
    ^
In file included from ../methodjit/StubCalls.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3294:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, VALVECTOR)
          ^
In file included from ../methodjit/StubCalls.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^In file included from ../methodjit/Compiler.cpp:42
:
In file included from ../methodjit/MethodJIT.h:42:
../jsregexp.h:167:14:In file included from ../jscntxt.h note: in instantiation of member function 'js::Vector::Vector' requested here
:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3313:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, IDVECTOR)
          ^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jscntxt.h:3236:34: note: in instantiation of member function 'js::Vector::Vector' requested here
        : AutoGCRooter(cx, tag), vector(cx)
                                 ^
../jscntxt.h:3326:11: note: in instantiation of member function 'js::AutoVectorRooter::AutoVectorRooter' requested here
        : AutoVectorRooter(cx, SHAPEVECTOR)
          ^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:205:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    ExecutableAllocator() {}
    ^
In file included from ../methodjit/StubCalls.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:412:24: note: in instantiation of member function 'js::Vector::Vector' requested here
inline ExecutablePool::ExecutablePool(size_t n) : m_refCount(1), m_destroy(false), m_gcNumber(0)
                       ^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsparse.h:308:39: note: in instantiation of member function 'js::Vector::Vector' requested here
      : globalObj(globalObj), cg(cg), defs(ContextAllocPolicy(cx))
                                      ^
In file included from ../methodjit/StubCalls.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsemit.h:550:36: note: in instantiation of member function 'js::Vector::Vector' requested here
    JSGCConstList(JSContext *cx) : list(cx) {}
                                   ^
In file included from ../methodjit/StubCalls.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:205:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    ExecutableAllocator() {}
    ^
In file included from ../methodjit/StubCalls.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../assembler/jit/ExecutableAllocator.h:412:24: note: in instantiation of member function 'js::Vector::Vector' requested here
inline ExecutablePool::ExecutablePool(size_t n) : m_refCount(1), m_destroy(false), m_gcNumber(0)
                       ^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsregexp.h:167:14: note: in instantiation of member function 'js::Vector::Vector' requested here
    explicit RegExpStatics(InitBuffer) : bufferLink(NULL), copied(false) {}
             ^
In file included from ../methodjit/StubCalls.cpp:53:
In file included from ../methodjit/Compiler.h:47:
In file included from ../methodjit/CodeGenIncludes.h:63:
In file included from ../methodjit/BaseAssembler.h:53:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../methodjit/StubCalls.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:114:5: note: in instantiation of member function 'js::Vector::Vector' requested here
  : cb(cx)
    ^
In file included from ../methodjit/StubCalls.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../methodjit/BaseAssembler.h:206:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : callPatches(SystemAllocPolicy()),
        ^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsstrinlines.h:394:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : stack(cx), cur(NULL)
        ^
In file included from ../methodjit/Compiler.cpp:47:
In file included from ../methodjit/Compiler.h:47:
In file included from ../methodjit/CodeGenIncludes.h:63:
In file included from ../methodjit/BaseAssembler.h:53:
In file included from ../jsobjinlines.h:65:
../jsgcinlines.h:125:20: warning: cast from 'js::gc::FreeCell *' to 'JSFunction *' increases required alignment from 4 to 8 [-Wcast-align]
            return (T *)cell;
                   ^~~~~~~~~
../jsgcinlines.h:168:23: note: in instantiation of function template specialization 'NewFinalizableGCThing' requested here
    JSFunction *fun = NewFinalizableGCThing(cx, js::gc::FINALIZE_FUNCTION);
                      ^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsobjinlines.h:829:40: note: in instantiation of member function 'js::Vector::Vector' requested here
      : AutoGCRooter(cx, DESCRIPTORS), descriptors(cx)
                                       ^
In file included from ../methodjit/StubCalls.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsutil.h:260:17: note: in instantiation of member function 'js::Vector::Vector' requested here
    JS_NEW_BODY(T, (p1))
                ^
../methodjit/PolyIC.h:195:41: note: in instantiation of function template specialization 'js_new, js::SystemAllocPolicy>' requested here
            ExecPoolVector *execPools = js_new(SystemAllocPolicy()); 
                                        ^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../methodjit/BaseAssembler.h:206:9: note: in instantiation of member function 'js::Vector::Vector' requested here
      : callPatches(SystemAllocPolicy()),
        ^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../jsutil.h:260:17: note: in instantiation of member function 'js::Vector::Vector' requested here
    JS_NEW_BODY(T, (p1))
                ^
../methodjit/PolyIC.h:195:41: note: in instantiation of function template specialization 'js_new, js::SystemAllocPolicy>' requested here
            ExecPoolVector *execPools = js_new(SystemAllocPolicy()); 
                                        ^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../methodjit/Retcon.h:67:35: note: in instantiation of member function 'js::Vector::Vector' requested here
        cx(cx1), script(script1), traps(cx) {};
                                  ^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../methodjit/Compiler.cpp:98:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    branchPatches(CompilerAllocPolicy(cx, *thisFromCtor())),
    ^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../methodjit/Compiler.cpp:100:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    getGlobalNames(CompilerAllocPolicy(cx, *thisFromCtor())),
    ^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../methodjit/Compiler.cpp:101:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    setGlobalNames(CompilerAllocPolicy(cx, *thisFromCtor())),
    ^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../methodjit/Compiler.cpp:102:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    callICs(CompilerAllocPolicy(cx, *thisFromCtor())),
    ^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../methodjit/Compiler.cpp:103:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    equalityICs(CompilerAllocPolicy(cx, *thisFromCtor())),
    ^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../methodjit/Compiler.cpp:104:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    traceICs(CompilerAllocPolicy(cx, *thisFromCtor())),
    ^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../methodjit/Compiler.cpp:107:5: note: in instantiation of member function 'js::Vector::Vector' requested here
    pics(CompilerAllocPolicy(cx, *thisFromCtor())), 
    ^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:In file included from ../methodjit/StubCalls.cpp394:41:
In file included from ../jscntxt.h::34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]59:
In file included from ../jsatom.h
:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
:64:
../methodjit/Compiler.cpp:108./dist/include/jsvalue.h:737:5: note: in instantiation of member function 'js::Vector::Vector' requested here
:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]    getElemICs(CompilerAllocPolicy(cx, *thisFromCtor())),

    ^
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40In file included from ../methodjit/Compiler.cpp: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
:42:
In file included from ../methodjit/MethodJIT.h:42    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
:
In file included from ../jscntxt.h:59:
                                       ^
In file included from ../jsutil.h:../jsatom.h:117:41: 52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
../methodjit/Compiler.cpp:109:5: note: in instantiation of member function 'js::Vector::Vector' requested here
                                        ^
:334:1: note: expanded from here
    setElemICs(CompilerAllocPolicy(cx, *thisFromCtor())),
    ^
js_static_assert4
^
In file included from ../methodjit/StubCalls.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
In file included from ../methodjit/Compiler.cpp:42        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]

../jsutil.h:120:21  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),: note: expanded from macro 'JS_STATIC_ASSERT'

                                 ^
../methodjit/Compiler.cpp:111:        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
5: note: in instantiation of member function 'js::Vector::Vector' requested here
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    callPatches(CompilerAllocPolicy(cx, *thisFromCtor())),
    ^
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from In file included from ../methodjit/StubCalls.cpp:../methodjit/Compiler.cpp:42:
In file included from 41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h../methodjit/MethodJIT.h:52::
In file included from 42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
120:21: note: expanded from macro 'JS_STATIC_ASSERT'
                                 ^
../methodjit/Compiler.cpp:112:5        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
:../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
 note: in instantiation of member function 'js::Vector::Vector' requested here
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
    callSites(CompilerAllocPolicy(cx, *thisFromCtor())), ../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'

    ^
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../methodjit/StubCalls.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
In file included from ./dist/include/jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
:../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]:

In file included from                     ^../jsstr.h
:../jsutil.h56::
118In file included from :../jsobj.h40::65 :
note: ../jsvector.hexpanded from macro 'JS_STATIC_ASSERT_GLUE':
394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),:
41                                 ^:
 note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'../methodjit/Compiler.cpp
:113:5:     #define JS_STATIC_ASSERT_GLUE1(x,y) x##ynote: 
in instantiation of member function 'js::Vector::Vector' requested here                                        ^

:340:1:    doubleList(CompilerAllocPolicy(cx, *thisFromCtor())), 
note:     ^expanded from here

js_static_assert7
^
In file included from ../methodjit/StubCalls.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ./dist/include/jsstr.h:56:
In file included from ./dist/include/jsobj.h:64:
./dist/include/jsvalue.hIn file included from :../methodjit/Compiler.cpp741::429:
:In file included from  ../methodjit/MethodJIT.hwarning: :unused typedef 'js_static_assert8' [-Wunused-local-typedef]42
:
In file included from ../jscntxt.h:59:
        JS_STATIC_ASSERT(sizeof(jsval) == 8);In file included from 
../jsatom.h        ^:
52../jsutil.h:
:In file included from 120../jsstr.h::2156::
 In file included from note: ../jsobj.hexpanded from macro 'JS_STATIC_ASSERT':
65:
../jsvector.h:394:34: warning:         typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]field 'storage' is uninitialized when used here [-Wuninitialized]

                    ^
../jsutil.h:118:40  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),:
                                  ^note: 
expanded from macro 'JS_STATIC_ASSERT_GLUE'
../methodjit/Compiler.cpp:114:5: note:     #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)in instantiation of member function 'js::Vector::Vector' requested here

                                       ^
../jsutil.h:117:41    jumpTables(CompilerAllocPolicy(cx, *thisFromCtor())),:
     ^note: 
expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../methodjit/StubCalls.cpp:41:
In file included from In file included from ../methodjit/Compiler.cpp../jscntxt.h::4259:
:
In file included from In file included from ../methodjit/MethodJIT.h../jsatom.h::4252:
:
In file included from ./dist/include/jsstr.h../jscntxt.h::45959::
9In file included from :../jsatom.h :warning: 52unused typedef 'js_static_assert37' [-Wunused-local-typedef]:

In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>../jsvector.h
:        ^394
:../jsutil.h34::120 :warning: 21field 'storage' is uninitialized when used here [-Wuninitialized]:
 note: expanded from macro 'JS_STATIC_ASSERT'
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../methodjit/Compiler.cpp        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]:
115                    ^:
5../jsutil.h:: 118note: :in instantiation of member function 'js::Vector::Vector' requested here40
: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    jumpTableOffsets(CompilerAllocPolicy(cx, *thisFromCtor())),
    ^
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../methodjit/StubCalls.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../methodjit/StubCalls.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../methodjit/StubCalls.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../methodjit/StubCalls.cpp:41:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../methodjit/StubCalls.cpp:41:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../methodjit/StubCalls.cpp:41:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../methodjit/StubCalls.cpp:41:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../methodjit/StubCalls.cpp:41:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../methodjit/StubCalls.cpp:41:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../methodjit/StubCalls.cpp:41:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../methodjit/StubCalls.cpp:41:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../methodjit/StubCalls.cpp:42:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:176:1: note: expanded from here
js_static_assert63
^
In file included from ../methodjit/StubCalls.cpp:42:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:178:1: note: expanded from here
js_static_assert64
^
In file included from ../methodjit/StubCalls.cpp:42:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:180:1: note: expanded from here
js_static_assert65
^
In file included from ../methodjit/StubCalls.cpp:41:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
./dist/include/jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../methodjit/StubCalls.cpp:41:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:65:
../jsvector.h:394:34: warning: field 'storage' is uninitialized when used here [-Wuninitialized]
  : AllocPolicy(ap), mBegin((T *)storage.addr()), mLength(0),
                                 ^
../methodjit/MethodJIT.h:300:8: note: in instantiation of member function 'js::Vector::Vector' requested here
struct JITScript {
       ^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:737:9: warning: unused typedef 'js_static_assert4' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueType) == 1);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:334:1: note: expanded from here
js_static_assert4
^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:738:9: warning: unused typedef 'js_static_assert5' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSValueTag) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:336:1: note: expanded from here
js_static_assert5
^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:739:9: warning: unused typedef 'js_static_assert6' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSBool) == 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:338:1: note: expanded from here
js_static_assert6
^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:740:9: warning: unused typedef 'js_static_assert7' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSWhyMagic) <= 4);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:340:1: note: expanded from here
js_static_assert7
^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
In file included from ../jsstr.h:56:
In file included from ../jsobj.h:64:
../jsvalue.h:741:9: warning: unused typedef 'js_static_assert8' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(jsval) == 8);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:342:1: note: expanded from here
js_static_assert8
^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:459:9: warning: unused typedef 'js_static_assert37' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(((JSString::MAX_LENGTH << JSString::LENGTH_SHIFT) >>
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:400:1: note: expanded from here
js_static_assert37
^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:571:9: warning: unused typedef 'js_static_assert43' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) +
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:412:1: note: expanded from here
js_static_assert43
^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:570:9: warning: unused typedef 'js_static_assert42' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSShortString, mDummy) == sizeof(JSString));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:410:1: note: expanded from here
js_static_assert42
^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:568:9: warning: unused typedef 'js_static_assert41' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSString, inlineStorage) ==
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:408:1: note: expanded from here
js_static_assert41
^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:83:9: warning: unused typedef 'js_static_assert45' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(UpvarCookie) == sizeof(uint32));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:50:1: note: expanded from here
js_static_assert45
^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:62:
In file included from ../jsfun.h:49:
../jsscript.h:84:9: warning: unused typedef 'js_static_assert46' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(UPVAR_LEVEL_LIMIT < FREE_LEVEL);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:52:1: note: expanded from here
js_static_assert46
^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:62:
../jsfun.h:229:9: warning: unused typedef 'js_static_assert48' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, nativeOrScript));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:56:1: note: expanded from here
js_static_assert48
^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:62:
../jsfun.h:228:9: warning: unused typedef 'js_static_assert47' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(U, n.native) == offsetof(U, i.script));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:54:1: note: expanded from here
js_static_assert47
^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:63:
../jsgc.h:514:5: warning: unused typedef 'js_static_assert56' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSExternalString::TYPE_LIMIT == 8);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:72:1: note: expanded from here
js_static_assert56
^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:63:
../jsgc.h:550:5: warning: unused typedef 'js_static_assert57' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(FINALIZE_STRING + 1 == FINALIZE_EXTERNAL_STRING);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:74:1: note: expanded from here
js_static_assert57
^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:66:
../jsinterp.h:779:9: warning: unused typedef 'js_static_assert60' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(sizeof(JSStackFrame) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:80:1: note: expanded from here
js_static_assert60
^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:66:
../jsinterp.h:778:9: warning: unused typedef 'js_static_assert59' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(offsetof(JSStackFrame, rval_) % sizeof(js::Value) == 0);
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:78:1: note: expanded from here
js_static_assert59
^
In file included from ../methodjit/Compiler.cpp:47:
In file included from ../methodjit/Compiler.h:47:
In file included from ../methodjit/CodeGenIncludes.h:63:
In file included from ../methodjit/BaseAssembler.h:53:
In file included from ../jsobjinlines.h:53:
In file included from ../jsscope.h:59:
../jsstrinlines.h:202:5: warning: unused typedef 'js_static_assert63' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(jsint(JSString::MAX_LENGTH) == JSString::MAX_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:185:1: note: expanded from here
js_static_assert63
^
In file included from ../methodjit/Compiler.cpp:47:
In file included from ../methodjit/Compiler.h:47:
In file included from ../methodjit/CodeGenIncludes.h:63:
In file included from ../methodjit/BaseAssembler.h:53:
In file included from ../jsobjinlines.h:53:
In file included from ../jsscope.h:59:
../jsstrinlines.h:280:5: warning: unused typedef 'js_static_assert64' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(INT_STRING_LIMIT <= 999);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:187:1: note: expanded from here
js_static_assert64
^
In file included from ../methodjit/Compiler.cpp:47:
In file included from ../methodjit/Compiler.h:47:
In file included from ../methodjit/CodeGenIncludes.h:63:
In file included from ../methodjit/BaseAssembler.h:53:
In file included from ../jsobjinlines.h:53:
../jsscope.h:431:9: warning: unused typedef 'js_static_assert65' [-Wunused-local-typedef]
        JS_STATIC_ASSERT(uint32(SHAPE_INVALID_SLOT) == ~uint32(0));
        ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:189:1: note: expanded from here
js_static_assert65
^
../methodjit/Compiler.cpp:1123:13: warning: unused typedef 'js_static_assert66' [-Wunused-local-typedef]
            JS_STATIC_ASSERT(JSOP_LT_LENGTH == JSOP_GE_LENGTH);
            ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:207:1: note: expanded from here
js_static_assert66
^
../methodjit/Compiler.cpp:1124:13: warning: unused typedef 'js_static_assert67' [-Wunused-local-typedef]
            JS_STATIC_ASSERT(JSOP_LE_LENGTH == JSOP_GE_LENGTH);
            ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:209:1: note: expanded from here
js_static_assert67
^
../methodjit/Compiler.cpp:1125:13: warning: unused typedef 'js_static_assert68' [-Wunused-local-typedef]
            JS_STATIC_ASSERT(JSOP_GT_LENGTH == JSOP_GE_LENGTH);
            ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:211:1: note: expanded from here
js_static_assert68
^
../methodjit/Compiler.cpp:1126:13: warning: unused typedef 'js_static_assert69' [-Wunused-local-typedef]
            JS_STATIC_ASSERT(JSOP_EQ_LENGTH == JSOP_GE_LENGTH);
            ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:213:1: note: expanded from here
js_static_assert69
^
../methodjit/Compiler.cpp:1127:13: warning: unused typedef 'js_static_assert70' [-Wunused-local-typedef]
            JS_STATIC_ASSERT(JSOP_NE_LENGTH == JSOP_GE_LENGTH);
            ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:215:1: note: expanded from here
js_static_assert70
^
../methodjit/Compiler.cpp:2911:5: warning: unused typedef 'js_static_assert71' [-Wunused-local-typedef]
    JS_STATIC_ASSERT(JSOP_SETNAME_LENGTH == JSOP_SETPROP_LENGTH);
    ^
../jsutil.h:120:21: note: expanded from macro 'JS_STATIC_ASSERT'
        typedef int JS_STATIC_ASSERT_GLUE(js_static_assert, __COUNTER__)[(cond) ? 1 : -1]
                    ^
../jsutil.h:118:40: note: expanded from macro 'JS_STATIC_ASSERT_GLUE'
    #define JS_STATIC_ASSERT_GLUE(x,y) JS_STATIC_ASSERT_GLUE1(x,y)
                                       ^
../jsutil.h:117:41: note: expanded from macro 'JS_STATIC_ASSERT_GLUE1'
    #define JS_STATIC_ASSERT_GLUE1(x,y) x##y
                                        ^
:111:1: note: expanded from here
js_static_assert71
^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
In file included from ../jscntxt.h:59:
In file included from ../jsatom.h:52:
../jsstr.h:525:14: warning: private field 'mDummy' is not used [-Wunused-private-field]
    JSString mDummy;
             ^
In file included from ../methodjit/Compiler.cpp:42:
In file included from ../methodjit/MethodJIT.h:42:
../jscntxt.h:250:26: warning: private field 'padding' is not used [-Wunused-private-field]
    void                *padding;
                         ^
In file included from ../methodjit/Compiler.cpp:58:
../methodjit/InlineFrameAssembler.h:79:17: warning: private field 'pc' is not used [-Wunused-private-field]
    jsbytecode *pc;             // bytecode location at the caller call site
                ^
46 warnings generated.
59 warnings generated.
79 warnings generated.
47 warnings generated.
gmake[4]: Leaving directory '/magus/work/usr/mports/games/oolite/work/oolite-source-1.88/deps/mozilla/js/src/build-release'
gmake[3]: *** [../config/rules.mk:754: default] Error 2
gmake[3]: Leaving directory '/magus/work/usr/mports/games/oolite/work/oolite-source-1.88/deps/mozilla/js/src/build-release'
gmake[2]: *** [libjs.make:45: deps/mozilla/js/src/build-release/build_stamp] Error 2
gmake[2]: Leaving directory '/magus/work/usr/mports/games/oolite/work/oolite-source-1.88'
gmake[1]: *** [Makefile:117: LIBJS] Error 2
gmake[1]: Leaving directory '/magus/work/usr/mports/games/oolite/work/oolite-source-1.88'
===> Compilation failed unexpectedly.
Try to set MAKE_JOBS_UNSAFE=yes and rebuild before reporting the failure to
the maintainer.
*** Error code 1

Stop.
make: stopped in /usr/mports/games/oolite