ports/91522: Spidermonkey version update to 1.5 with fixes for ia64/amd64
Dan Rench
citric at cubicone.tmetic.com
Sun Jan 8 18:40:16 UTC 2006
>Number: 91522
>Category: ports
>Synopsis: Spidermonkey version update to 1.5 with fixes for ia64/amd64
>Confidential: no
>Severity: non-critical
>Priority: medium
>Responsible: freebsd-ports-bugs
>State: open
>Quarter:
>Keywords:
>Date-Required:
>Class: maintainer-update
>Submitter-Id: current-users
>Arrival-Date: Sun Jan 08 18:40:08 GMT 2006
>Closed-Date:
>Last-Modified:
>Originator: Dan Rench
>Release: 6.0-STABLE
>Organization:
>Environment:
FreeBSD shocklee.i.dren.ch 6.0-STABLE FreeBSD 6.0-STABLE #0: Sun Jan 8 00:29:43 CST 2006 root at shocklee.i.dren.ch:/usr/obj/usr/src/sys/GENERIC i386
>Description:
Update source to spidermonkey 1.5 and patched (much thanks to Anish Mistry) to fix compilation problems under amd64 (and presumably ia64 too but untested) and to make the build thread-safe.
>How-To-Repeat:
n/a
>Fix:
diff -ruN spidermonkey.orig/Makefile spidermonkey/Makefile
--- spidermonkey.orig/Makefile Sat Jan 7 02:07:46 2006
+++ spidermonkey/Makefile Sat Jan 7 02:37:02 2006
@@ -5,8 +5,7 @@
# $FreeBSD: ports/lang/spidermonkey/Makefile,v 1.11 2005/08/16 12:52:28 mi Exp $
PORTNAME= spidermonkey
-DISTVERSION= 1.5-rc6a
-PORTREVISION= 1
+DISTVERSION= 1.5
CATEGORIES= lang
MASTER_SITES= ${MASTER_SITE_MOZILLA}
MASTER_SITE_SUBDIR= js
@@ -25,7 +24,13 @@
spidermonkey-patch-tests-js.bz2
PATCH_SITES= http://virtual-estates.net/~mi/port-stuff/
BUILD_DEPENDS+= ${SITE_PERL}/Getopt/Mixed.pm:${PORTSDIR}/devel/p5-Getopt-Mixed
-DISTFILES+= js-tests-20021118${EXTRACT_SUFX}
+LIB_DEPENDS= nspr4.1:${PORTSDIR}/devel/nspr
+MAKE_ARGS+= JS_THREADSAFE=YES \
+ PROG_LIBS="-lreadline -ltermcap -lm ${PTHREAD_LIBS}" \
+ LDFLAGS="-L${LOCALBASE}/lib"
+CFLAGS+= -I${LOCALBASE}/include/nspr
+
+DISTFILES+= older-packages/js-tests-20021118${EXTRACT_SUFX}
post-build: test
post-patch:
#
diff -ruN spidermonkey.orig/distinfo spidermonkey/distinfo
--- spidermonkey.orig/distinfo Sat Jan 7 02:07:46 2006
+++ spidermonkey/distinfo Sat Jan 7 02:07:56 2006
@@ -1,10 +1,15 @@
-MD5 (js-1.5-rc6a.tar.gz) = 25e1d1dd2674d85883391b6b42a7b02f
-SIZE (js-1.5-rc6a.tar.gz) = 1058911
-MD5 (js-tests-20021118.tar.gz) = df89464084e583a075a782ad66da5370
-SIZE (js-tests-20021118.tar.gz) = 803198
+MD5 (js-1.5.tar.gz) = 863bb6462f4ce535399a7c6276ae6776
+SHA256 (js-1.5.tar.gz) = ef72a154320c9949f8de0732e8dbfa186b83feb0a5e890d90807757de9998585
+SIZE (js-1.5.tar.gz) = 958135
+MD5 (older-packages/js-tests-20021118.tar.gz) = df89464084e583a075a782ad66da5370
+SHA256 (older-packages/js-tests-20021118.tar.gz) = 75878c90ed8641aaddcf4cb0b277353c6e7be31e6539beffa44f33bdfe69181f
+SIZE (older-packages/js-tests-20021118.tar.gz) = 803198
MD5 (spidermonkey-patch-tests-ecma.bz2) = 73ec1e37821deff69e68eac2192a2cd2
+SHA256 (spidermonkey-patch-tests-ecma.bz2) = 9f6ef721145e12bfca1a8ecdd0e8692fc916fef792927d9503bd40bb86f15f21
SIZE (spidermonkey-patch-tests-ecma.bz2) = 5702
MD5 (spidermonkey-patch-tests-timezone.bz2) = 9b392c970d878f3defcd7e3e7ddeb0b5
+SHA256 (spidermonkey-patch-tests-timezone.bz2) = 94322a6541303ac66ffad5cdfdc4af8d5ec14ce74c2dc4709736941abd4bd8bf
SIZE (spidermonkey-patch-tests-timezone.bz2) = 7658
MD5 (spidermonkey-patch-tests-js.bz2) = 20770d4e82fff61c1bbb5ff91d2551ec
+SHA256 (spidermonkey-patch-tests-js.bz2) = f930c31005778eeb40f4d3fa10a6d65ab2991c95c990c60712f9d2696c041088
SIZE (spidermonkey-patch-tests-js.bz2) = 3685
diff -ruN spidermonkey.orig/files/patch-config spidermonkey/files/patch-config
--- spidermonkey.orig/files/patch-config Sat Jan 7 02:07:46 2006
+++ spidermonkey/files/patch-config Sat Jan 7 02:07:56 2006
@@ -27,9 +27,10 @@
+ $(CC) -o $@ $(CFLAGS) $(PROG_OBJS) -L$(OBJDIR) -ljs $(LDFLAGS) $(OTHER_LIBS) \
$(PROG_LIBS)
endif
---- config/Linux_All.mk Thu May 15 20:21:08 2003
-+++ config/Linux_All.mk Wed Aug 10 23:46:05 2005
-@@ -37,7 +37,7 @@
+--- config/Linux_All.mk.orig Tue May 10 15:53:44 2005
++++ config/Linux_All.mk Sat Dec 10 21:17:45 2005
+@@ -41,9 +41,9 @@
+ # Config for all versions of Linux
#
-CC = gcc
@@ -40,14 +41,18 @@
+CFLAGS += -Wall -Werror # XXX do these work with non-gcc and non-icc?
OS_CFLAGS = -DXP_UNIX -DSVR4 -DSYSV -D_BSD_SOURCE -DPOSIX_SOURCE -DHAVE_LOCALTIME_R
-@@ -70,5 +70,5 @@
+ RANLIB = echo
+@@ -74,7 +74,7 @@
+
GFX_ARCH = x
-OS_LIBS = -lm -lc
+OS_LIBS = -lm
ASFLAGS += -x assembler-with-cpp
-@@ -84,15 +84,11 @@
+
+@@ -88,16 +88,12 @@
+ endif
# Use the editline library to provide line-editing support.
-JS_EDITLINE = 1
@@ -56,7 +61,7 @@
-ifeq ($(CPU_ARCH),x86_64)
-# Use VA_COPY() standard macro on x86-64
-# FIXME: better use it everywhere
- OS_CFLAGS += -DHAVE_VA_COPY
+ OS_CFLAGS += -DHAVE_VA_COPY -DVA_COPY=va_copy
-endif
-ifeq ($(CPU_ARCH),x86_64)
diff -ruN spidermonkey.orig/files/patch-config.orig spidermonkey/files/patch-config.orig
--- spidermonkey.orig/files/patch-config.orig Wed Dec 31 19:00:00 1969
+++ spidermonkey/files/patch-config.orig Thu Aug 11 00:00:00 2005
@@ -0,0 +1,78 @@
+--- Makefile.ref Fri Nov 14 19:10:55 2003
++++ Makefile.ref Sat Aug 6 12:25:36 2005
+@@ -56,6 +56,4 @@
+ ifdef USE_MSVC
+ OTHER_LIBS += fdlibm/$(OBJDIR)/fdlibm.lib
+-else
+-OTHER_LIBS += -Lfdlibm/$(OBJDIR) -lfdm
+ endif
+
+@@ -242,10 +240,6 @@
+ $(NULL)
+
+-PREDIRS += fdlibm
+-
+ ifdef USE_MSVC
+ FDLIBM_LIBRARY = fdlibm/$(OBJDIR)/fdlibm.lib
+-else
+-FDLIBM_LIBRARY = fdlibm/$(OBJDIR)/libfdm.a
+ endif
+ JSMATH_PRELINK = $(OBJDIR)/jsmathtemp.o
+@@ -301,6 +295,6 @@
+ link.exe -out:"$@" $(EXE_LINK_FLAGS) $^
+ else
+-$(PROGRAM): $(PROG_OBJS) $(LIBRARY) $(FDLIBM_LIBRARY)
+- $(CC) -o $@ $(CFLAGS) $(PROG_OBJS) $(LIBRARY) $(LDFLAGS) $(OTHER_LIBS) \
++$(PROGRAM): $(PROG_OBJS) $(SHARED_LIBRARY) $(FDLIBM_LIBRARY)
++ $(CC) -o $@ $(CFLAGS) $(PROG_OBJS) -L$(OBJDIR) -ljs $(LDFLAGS) $(OTHER_LIBS) \
+ $(PROG_LIBS)
+ endif
+--- config/Linux_All.mk Thu May 15 20:21:08 2003
++++ config/Linux_All.mk Wed Aug 10 23:46:05 2005
+@@ -37,7 +37,7 @@
+ #
+
+-CC = gcc
+-CCC = g++
+-CFLAGS += -Wall -Wno-format
++CC ?= gcc
++CCC ?= g++
++CFLAGS += -Wall -Werror # XXX do these work with non-gcc and non-icc?
+ OS_CFLAGS = -DXP_UNIX -DSVR4 -DSYSV -D_BSD_SOURCE -DPOSIX_SOURCE -DHAVE_LOCALTIME_R
+
+@@ -70,5 +70,5 @@
+ GFX_ARCH = x
+
+-OS_LIBS = -lm -lc
++OS_LIBS = -lm
+
+ ASFLAGS += -x assembler-with-cpp
+@@ -84,15 +84,11 @@
+
+ # Use the editline library to provide line-editing support.
+-JS_EDITLINE = 1
++JS_READLINE = 1
+
+-ifeq ($(CPU_ARCH),x86_64)
+-# Use VA_COPY() standard macro on x86-64
+-# FIXME: better use it everywhere
+ OS_CFLAGS += -DHAVE_VA_COPY
+-endif
+
+-ifeq ($(CPU_ARCH),x86_64)
+-# We need PIC code for shared libraries
+-# FIXME: better patch rules.mk & fdlibm/Makefile*
++ifeq ($(CPU_ARCH),sparc64)
+ OS_CFLAGS += -DPIC -fPIC
++else
++OS_CFLAGS += -DPIC -fpic
+ endif
+--- rules.mk Fri Nov 14 19:11:04 2003
++++ rules.mk Mon Aug 8 14:40:36 2005
+@@ -59,5 +59,5 @@
+ TARGETS += $(SHARED_LIBRARY) $(PROGRAM) # it is now
+ else
+-TARGETS += $(LIBRARY) $(SHARED_LIBRARY) $(PROGRAM)
++TARGETS += $(SHARED_LIBRARY) $(PROGRAM)
+ endif
+
diff -ruN spidermonkey.orig/files/patch-warnings spidermonkey/files/patch-warnings
--- spidermonkey.orig/files/patch-warnings Sat Jan 7 02:07:46 2006
+++ spidermonkey/files/patch-warnings Sat Jan 7 02:07:56 2006
@@ -227,13 +227,6 @@
+ sharpid = (jsatomid)(uintptr_t)he->value;
if (sharpid == 0) {
*sp = NULL;
-@@ -1104,5 +1104,5 @@
- const JSResolvingKey *key = (const JSResolvingKey *)ptr;
-
-- return ((JSDHashNumber)key->obj >> JSVAL_TAGBITS) ^ key->id;
-+ return ((JSDHashNumber)(uintptr_t)key->obj >> JSVAL_TAGBITS) ^ key->id;
- }
-
--- jsopcode.c Thu Jun 10 00:33:52 2004
+++ jsopcode.c Sat Aug 6 19:13:50 2005
@@ -181,5 +181,5 @@
@@ -254,23 +247,6 @@
+ fprintf(fp, "\n\t%d: %td", i, off);
pc2 += jmplen;
}
-@@ -230,5 +230,5 @@
- {
- jsbytecode *pc2;
-- jsint npairs;
-+ int npairs;
-
- jmplen = (type == JOF_LOOKUPSWITCH) ? JUMP_OFFSET_LEN
-@@ -237,7 +237,7 @@
- off = GetJumpOffset(pc, pc2);
- pc2 += jmplen;
-- npairs = (jsint) GET_ATOM_INDEX(pc2);
-+ npairs = GET_ATOM_INDEX(pc2);
- pc2 += ATOM_INDEX_LEN;
-- fprintf(fp, " offset %d npairs %u", off, (uintN) npairs);
-+ fprintf(fp, " offset %td npairs %d", off, npairs);
- while (npairs) {
- atom = GET_ATOM(cx, script, pc2);
@@ -253,5 +253,5 @@
if (!cstr)
return 0;
diff -ruN spidermonkey.orig/files/patch-warnings.orig spidermonkey/files/patch-warnings.orig
--- spidermonkey.orig/files/patch-warnings.orig Wed Dec 31 19:00:00 1969
+++ spidermonkey/files/patch-warnings.orig Thu Aug 11 00:00:00 2005
@@ -0,0 +1,355 @@
+--- jspubtd.h Thu Apr 7 15:54:07 2005
++++ jspubtd.h Thu Aug 4 23:52:12 2005
+@@ -517,5 +517,5 @@
+ (* JS_DLL_CALLBACK JSArgumentFormatter)(JSContext *cx, const char *format,
+ JSBool fromJS, jsval **vpp,
+- va_list *app);
++ va_list app);
+ #endif
+
+--- jsdhash.c Wed Jan 14 21:00:53 2004
++++ jsdhash.c Fri Aug 5 00:15:04 2005
+@@ -92,5 +92,5 @@
+ JS_DHashVoidPtrKeyStub(JSDHashTable *table, const void *key)
+ {
+- return (JSDHashNumber)key >> 2;
++ return (JSDHashNumber)(uintptr_t)key >> 2;
+ }
+
+--- jsstr.c Fri Jun 3 15:07:49 2005
++++ jsstr.c Fri Aug 5 01:31:08 2005
+@@ -2596,5 +2596,5 @@
+ js_hash_string_pointer(const void *key)
+ {
+- return (JSHashNumber)key >> JSVAL_TAGBITS;
++ return (JSHashNumber)(uintptr_t)key >> JSVAL_TAGBITS;
+ }
+
+--- jsobj.h Wed Sep 1 17:33:16 2004
++++ jsobj.h Fri Aug 5 01:16:56 2005
+@@ -238,12 +238,12 @@
+ };
+
+-#define SHARP_BIT ((jsatomid) 1)
+-#define BUSY_BIT ((jsatomid) 2)
++#define SHARP_BIT ((uintptr_t) 1)
++#define BUSY_BIT ((uintptr_t) 2)
+ #define SHARP_ID_SHIFT 2
+-#define IS_SHARP(he) ((jsatomid)(he)->value & SHARP_BIT)
+-#define MAKE_SHARP(he) ((he)->value = (void*)((jsatomid)(he)->value|SHARP_BIT))
+-#define IS_BUSY(he) ((jsatomid)(he)->value & BUSY_BIT)
+-#define MAKE_BUSY(he) ((he)->value = (void*)((jsatomid)(he)->value|BUSY_BIT))
+-#define CLEAR_BUSY(he) ((he)->value = (void*)((jsatomid)(he)->value&~BUSY_BIT))
++#define IS_SHARP(he) ((uintptr_t)(he)->value & SHARP_BIT)
++#define MAKE_SHARP(he) ((he)->value = (void*)((uintptr_t)(he)->value|SHARP_BIT))
++#define IS_BUSY(he) ((uintptr_t)(he)->value & BUSY_BIT)
++#define MAKE_BUSY(he) ((he)->value = (void*)((uintptr_t)(he)->value|BUSY_BIT))
++#define CLEAR_BUSY(he) ((he)->value = (void*)((uintptr_t)(he)->value&~BUSY_BIT))
+
+ extern JSHashEntry *
+--- jstypes.h Fri Nov 14 19:11:04 2003
++++ jstypes.h Thu Aug 4 23:54:13 2005
+@@ -378,6 +378,7 @@
+ ** A JSWord is an integer that is the same size as a void*
+ */
++#include <inttypes.h>
+-typedef long JSWord;
+-typedef unsigned long JSUword;
++typedef intptr_t JSWord;
++typedef uintptr_t JSUword;
+
+ #include "jsotypes.h"
+--- jsosdep.h Fri Nov 14 19:10:59 2003
++++ jsosdep.h Fri Aug 5 00:50:44 2005
+@@ -102,5 +102,5 @@
+ #define JS_HAVE_LONG_LONG
+
+-#elif defined(FREEBSD)
++#elif defined(FREEBSD) || defined(__FreeBSD__)
+ #define JS_HAVE_LONG_LONG
+
+--- jsdtoa.c Sat Apr 3 17:11:11 2004
++++ jsdtoa.c Fri Aug 5 00:28:15 2005
+@@ -258,5 +258,5 @@
+ #define set_word1(x, y) JSDOUBLE_SET_LO32(x, y)
+
+-#define Storeinc(a,b,c) (*(a)++ = (b) << 16 | (c) & 0xffff)
++#define Storeinc(a,b,c) (*(a)++ = (b) << 16 | ((c) & 0xffff))
+
+ /* #define P DBL_MANT_DIG */
+@@ -990,5 +990,6 @@
+ {
+ register Long L;
+- double a;
++ double a = 0.; /* only need to initialize to calm the compiler.
++ * set_word0 and set_word1 set a, but in two stages */
+
+ L = (word0(x) & Exp_mask) - (P-1)*Exp_msk1;
+@@ -1021,5 +1022,5 @@
+ ULong *xa, *xa0, w, y, z;
+ int32 k;
+- double d;
++ double d = 0.;
+ #define d0 word0(d)
+ #define d1 word1(d)
+@@ -1837,4 +1838,5 @@
+ #ifdef Avoid_Underflow
+ if (scale) {
++ rv0 = 0.; /* calm the compiler warning */
+ set_word0(rv0, Exp_1 - P*Exp_msk1);
+ set_word1(rv0, 0);
+--- jsatom.h Wed Feb 11 02:21:59 2004
++++ jsatom.h Fri Aug 5 01:21:44 2005
+@@ -96,5 +96,5 @@
+
+ #define ALE_ATOM(ale) ((JSAtom *) (ale)->entry.key)
+-#define ALE_INDEX(ale) ((jsatomid) (ale)->entry.value)
++#define ALE_INDEX(ale) ((jsatomid)(uintptr_t)(ale)->entry.value)
+ #define ALE_JSOP(ale) ((JSOp) (ale)->entry.value)
+ #define ALE_VALUE(ale) ((jsval) (ale)->entry.value)
+--- jsatom.c Tue Jul 6 03:49:18 2004
++++ jsatom.c Fri Aug 5 01:23:29 2005
+@@ -137,5 +137,5 @@
+ #endif
+
+-#define HASH_OBJECT(o) ((JSHashNumber)(o) >> JSVAL_TAGBITS)
++#define HASH_OBJECT(o) ((JSHashNumber)(uintptr_t)(o) >> JSVAL_TAGBITS)
+ #define HASH_INT(i) ((JSHashNumber)(i))
+ #define HASH_DOUBLE(dp) ((JSHashNumber)(JSDOUBLE_HI32(*dp) ^ JSDOUBLE_LO32(*dp)))
+@@ -834,5 +834,5 @@
+ }
+
+- ALE_SET_INDEX(ale, al->count++);
++ ALE_SET_INDEX(ale, (intptr_t)al->count++);
+ }
+ return ale;
+--- jsscript.c Fri Jul 8 21:48:08 2005
++++ jsscript.c Fri Aug 5 01:29:26 2005
+@@ -322,5 +322,5 @@
+ if (!JS_XDRUint32(xdr, &index))
+ return JS_FALSE;
+- ALE_SET_INDEX(ale, index);
++ ALE_SET_INDEX(ale, (uintptr_t)index);
+
+ if (!JS_XDRValue(xdr, &value))
+@@ -338,5 +338,5 @@
+ {
+ uint32 length;
+- uintN i;
++ uintptr_t i;
+ JSBool ok;
+
+--- jsinterp.c Fri Jun 4 21:39:32 2004
++++ jsinterp.c Sat Aug 6 18:56:29 2005
+@@ -1382,9 +1382,9 @@
+ jsbytecode *pc, *pc2, *endpc;
+ JSOp op, op2;
+- const JSCodeSpec *cs;
++ const JSCodeSpec *cs = NULL;
+ JSAtom *atom;
+ uintN argc, slot, attrs;
+ jsval *vp, lval, rval, ltmp, rtmp;
+- jsid id;
++ jsid id = -1L; /* initialize to something awful */
+ JSObject *withobj, *origobj, *propobj;
+ jsval iter_state;
+@@ -1398,5 +1398,5 @@
+ JSType type;
+ #ifdef DEBUG
+- FILE *tracefp;
++ FILE *tracefp = NULL;
+ #endif
+ #if JS_HAS_EXPORT_IMPORT
+@@ -1475,4 +1475,5 @@
+ JS_ReportErrorNumber(cx, js_GetErrorMessage, NULL, JSMSG_OVER_RECURSED);
+ ok = JS_FALSE;
++ sp = NULL;
+ goto out;
+ }
+@@ -1484,4 +1485,5 @@
+ if (!newsp) {
+ ok = JS_FALSE;
++ sp = NULL;
+ goto out;
+ }
+@@ -1517,5 +1519,5 @@
+ }
+ }
+- fprintf(tracefp, " @ %d\n", sp - fp->spbase);
++ fprintf(tracefp, " @ %td\n", sp - fp->spbase);
+ }
+ }
+@@ -4209,5 +4211,5 @@
+ }
+ }
+- fprintf(tracefp, " @ %d\n", sp - fp->spbase);
++ fprintf(tracefp, " @ %td\n", sp - fp->spbase);
+ }
+ fprintf(tracefp, " stack: ");
+--- jsobj.c Wed Jun 2 17:20:56 2004
++++ jsobj.c Sat Aug 6 19:08:39 2005
+@@ -378,5 +378,5 @@
+ js_hash_object(const void *key)
+ {
+- return (JSHashNumber)key >> JSVAL_TAGBITS;
++ return (JSHashNumber)(uintptr_t)key >> JSVAL_TAGBITS;
+ }
+
+@@ -407,5 +407,5 @@
+ if (!he) {
+ sharpid = 0;
+- he = JS_HashTableRawAdd(table, hep, hash, obj, (void *)sharpid);
++ he = JS_HashTableRawAdd(table, hep, hash, obj, (void *)(uintptr_t)sharpid);
+ if (!he) {
+ JS_ReportOutOfMemory(cx);
+@@ -461,8 +461,8 @@
+ return NULL;
+ } else {
+- sharpid = (jsatomid) he->value;
++ sharpid = (jsatomid)(uintptr_t)he->value;
+ if (sharpid == 0) {
+ sharpid = ++map->sharpgen << SHARP_ID_SHIFT;
+- he->value = (void *) sharpid;
++ he->value = (void *)(uintptr_t)sharpid;
+ }
+ ida = NULL;
+@@ -505,5 +505,5 @@
+ if (!he)
+ goto bad;
+- JS_ASSERT((((jsatomid) he->value) & SHARP_BIT) == 0);
++ JS_ASSERT((((uintptr_t)he->value) & SHARP_BIT) == 0);
+ if (!idap) {
+ JS_DestroyIdArray(cx, ida);
+@@ -534,5 +534,5 @@
+ }
+
+- sharpid = (jsatomid) he->value;
++ sharpid = (jsatomid)(uintptr_t)he->value;
+ if (sharpid == 0) {
+ *sp = NULL;
+@@ -1104,5 +1104,5 @@
+ const JSResolvingKey *key = (const JSResolvingKey *)ptr;
+
+- return ((JSDHashNumber)key->obj >> JSVAL_TAGBITS) ^ key->id;
++ return ((JSDHashNumber)(uintptr_t)key->obj >> JSVAL_TAGBITS) ^ key->id;
+ }
+
+--- jsopcode.c Thu Jun 10 00:33:52 2004
++++ jsopcode.c Sat Aug 6 19:13:50 2005
+@@ -181,5 +181,5 @@
+ case JOF_JUMPX:
+ off = GetJumpOffset(pc, pc);
+- fprintf(fp, " %u (%d)", loc + off, off);
++ fprintf(fp, " %tu (%td)", loc + off, off);
+ break;
+
+@@ -216,8 +216,8 @@
+ high = GET_JUMP_OFFSET(pc2);
+ pc2 += JUMP_OFFSET_LEN;
+- fprintf(fp, " defaultOffset %d low %d high %d", off, low, high);
++ fprintf(fp, " defaultOffset %td low %d high %d", off, low, high);
+ for (i = low; i <= high; i++) {
+ off = GetJumpOffset(pc, pc2);
+- fprintf(fp, "\n\t%d: %d", i, off);
++ fprintf(fp, "\n\t%d: %td", i, off);
+ pc2 += jmplen;
+ }
+@@ -230,5 +230,5 @@
+ {
+ jsbytecode *pc2;
+- jsint npairs;
++ int npairs;
+
+ jmplen = (type == JOF_LOOKUPSWITCH) ? JUMP_OFFSET_LEN
+@@ -237,7 +237,7 @@
+ off = GetJumpOffset(pc, pc2);
+ pc2 += jmplen;
+- npairs = (jsint) GET_ATOM_INDEX(pc2);
++ npairs = GET_ATOM_INDEX(pc2);
+ pc2 += ATOM_INDEX_LEN;
+- fprintf(fp, " offset %d npairs %u", off, (uintN) npairs);
++ fprintf(fp, " offset %td npairs %d", off, npairs);
+ while (npairs) {
+ atom = GET_ATOM(cx, script, pc2);
+@@ -253,5 +253,5 @@
+ if (!cstr)
+ return 0;
+- fprintf(fp, "\n\t%s: %d", cstr, off);
++ fprintf(fp, "\n\t%s: %td", cstr, off);
+ JS_free(cx, cstr);
+ npairs--;
+--- jsparse.c Mon Mar 29 22:20:03 2004
++++ jsparse.c Sat Aug 6 19:15:27 2005
+@@ -876,5 +876,5 @@
+ return NULL;
+ }
+- ALE_SET_JSOP(ale, tc->topStmt ? JSOP_CLOSURE : JSOP_DEFFUN);
++ ALE_SET_JSOP(ale, (uintptr_t)(tc->topStmt ? JSOP_CLOSURE : JSOP_DEFFUN));
+
+ #if JS_HAS_LEXICAL_CLOSURE
+--- jsprf.c Wed Feb 25 08:33:42 2004
++++ jsprf.c Sat Aug 6 19:18:26 2005
+@@ -56,5 +56,5 @@
+ */
+ #ifdef HAVE_VA_COPY
+-#define VARARGS_ASSIGN(foo, bar) VA_COPY(foo,bar)
++#define VARARGS_ASSIGN(foo, bar) va_copy(foo,bar)
+ #elif defined(HAVE_VA_LIST_AS_ARRAY)
+ #define VARARGS_ASSIGN(foo, bar) foo[0] = bar[0]
+--- js.c Wed Feb 11 02:21:59 2004
++++ js.c Sat Aug 6 19:23:09 2005
+@@ -921,5 +921,5 @@
+ delta = SN_DELTA(sn);
+ offset += delta;
+- fprintf(gOutFile, "%3u: %5u [%4u] %-8s",
++ fprintf(gOutFile, "%3tu: %5u [%4u] %-8s",
+ PTRDIFF(sn, notes, jssrcnote), offset, delta,
+ js_SrcNoteSpec[SN_TYPE(sn)].name);
+@@ -1006,5 +1006,5 @@
+ fprintf(gOutFile, "\nException table:\nstart\tend\tcatch\n");
+ while (tn->start && tn->catchStart) {
+- fprintf(gOutFile, " %d\t%d\t%d\n",
++ fprintf(gOutFile, " %td\t%td\t%td\n",
+ tn->start, tn->start + tn->length, tn->catchStart);
+ tn++;
+@@ -1222,6 +1222,6 @@
+ #undef DUMP_ATTR
+
+- fprintf(fp, " slot %lu flags %x shortid %d\n",
+- sprop->slot, sprop->flags, sprop->shortid);
++ fprintf(fp, " slot %u flags %x shortid %d\n",
++ (unsigned)sprop->slot, (int)sprop->flags, (int)sprop->shortid);
+ }
+ }
+--- jsapi.c Wed Jun 16 17:42:39 2004
++++ jsapi.c Mon Aug 8 02:32:15 2005
+@@ -126,5 +126,5 @@
+ static JSBool
+ TryArgumentFormatter(JSContext *cx, const char **formatp, JSBool fromJS,
+- jsval **vpp, va_list *app)
++ jsval **vpp, va_list app)
+ {
+ const char *format;
+@@ -264,6 +264,5 @@
+ default:
+ format--;
+- if (!TryArgumentFormatter(cx, &format, JS_TRUE, &sp,
+- JS_ADDRESSOF_VA_LIST(ap))) {
++ if (!TryArgumentFormatter(cx, &format, JS_TRUE, &sp, ap)) {
+ return JS_FALSE;
+ }
+@@ -367,6 +366,5 @@
+ default:
+ format--;
+- if (!TryArgumentFormatter(cx, &format, JS_FALSE, &sp,
+- JS_ADDRESSOF_VA_LIST(ap))) {
++ if (!TryArgumentFormatter(cx, &format, JS_FALSE, &sp, ap)) {
+ goto bad;
+ }
+@@ -2190,5 +2188,5 @@
+
+ if (attrs & JSPROP_INDEX) {
+- id = INT_TO_JSVAL((jsint)name);
++ id = INT_TO_JSVAL(name);
+ atom = NULL;
+ attrs &= ~JSPROP_INDEX;
>Release-Note:
>Audit-Trail:
>Unformatted:
More information about the freebsd-ports-bugs
mailing list