mirror of
https://github.com/mozilla/gecko-dev.git
synced 2025-02-09 08:48:07 +00:00
Fixing bug 265174. Quiet down compiler warnings on Linux x86_64. r+sr=brendan@mozilla.org
This commit is contained in:
parent
c1fecc9129
commit
0472c0073e
@ -86,7 +86,7 @@
|
||||
#endif
|
||||
|
||||
#ifdef HAVE_VA_LIST_AS_ARRAY
|
||||
#define JS_ADDRESSOF_VA_LIST(ap) (ap)
|
||||
#define JS_ADDRESSOF_VA_LIST(ap) ((va_list *)(ap))
|
||||
#else
|
||||
#define JS_ADDRESSOF_VA_LIST(ap) (&(ap))
|
||||
#endif
|
||||
@ -2258,7 +2258,7 @@ DefineProperty(JSContext *cx, JSObject *obj, const char *name, jsval value,
|
||||
JSAtom *atom;
|
||||
|
||||
if (attrs & JSPROP_INDEX) {
|
||||
id = INT_TO_JSID((jsint)name);
|
||||
id = INT_TO_JSID(JS_PTR_TO_INT32(name));
|
||||
atom = NULL;
|
||||
attrs &= ~JSPROP_INDEX;
|
||||
} else {
|
||||
|
@ -146,9 +146,9 @@ const char js_ExecutionContext_str[] = "ExecutionContext";
|
||||
const char js_current_str[] = "current";
|
||||
#endif
|
||||
|
||||
#define HASH_OBJECT(o) ((JSHashNumber)(o) >> JSVAL_TAGBITS)
|
||||
#define HASH_OBJECT(o) (JS_PTR_TO_UINT32(o) >> JSVAL_TAGBITS)
|
||||
#define HASH_INT(i) ((JSHashNumber)(i))
|
||||
#define HASH_DOUBLE(dp) ((JSHashNumber)(JSDOUBLE_HI32(*dp) ^ JSDOUBLE_LO32(*dp)))
|
||||
#define HASH_DOUBLE(dp) ((JSDOUBLE_HI32(*dp) ^ JSDOUBLE_LO32(*dp)))
|
||||
#define HASH_BOOLEAN(b) ((JSHashNumber)(b))
|
||||
|
||||
JS_STATIC_DLL_CALLBACK(JSHashNumber)
|
||||
|
@ -95,14 +95,14 @@ struct JSAtomListElement {
|
||||
};
|
||||
|
||||
#define ALE_ATOM(ale) ((JSAtom *) (ale)->entry.key)
|
||||
#define ALE_INDEX(ale) ((jsatomid) (ale)->entry.value)
|
||||
#define ALE_INDEX(ale) ((jsatomid) JS_PTR_TO_UINT32((ale)->entry.value))
|
||||
#define ALE_JSOP(ale) ((JSOp) (ale)->entry.value)
|
||||
#define ALE_VALUE(ale) ((jsval) (ale)->entry.value)
|
||||
#define ALE_NEXT(ale) ((JSAtomListElement *) (ale)->entry.next)
|
||||
|
||||
#define ALE_SET_ATOM(ale,atom) ((ale)->entry.key = (const void *)(atom))
|
||||
#define ALE_SET_INDEX(ale,index)((ale)->entry.value = (void *)(index))
|
||||
#define ALE_SET_JSOP(ale,op) ((ale)->entry.value = (void *)(jsuword)(op))
|
||||
#define ALE_SET_INDEX(ale,index)((ale)->entry.value = JS_UINT32_TO_PTR(index))
|
||||
#define ALE_SET_JSOP(ale,op) ((ale)->entry.value = JS_UINT32_TO_PTR(op))
|
||||
#define ALE_SET_VALUE(ale,val) ((ale)->entry.value = (JSHashEntry *)(val))
|
||||
#define ALE_SET_NEXT(ale,link) ((ale)->entry.next = (JSHashEntry *)(link))
|
||||
|
||||
|
@ -355,7 +355,7 @@ resolving_HashKey(JSDHashTable *table, const void *ptr)
|
||||
{
|
||||
const JSResolvingKey *key = (const JSResolvingKey *)ptr;
|
||||
|
||||
return ((JSDHashNumber)key->obj >> JSVAL_TAGBITS) ^ key->id;
|
||||
return ((JSDHashNumber)JS_PTR_TO_UINT32(key->obj) >> JSVAL_TAGBITS) ^ key->id;
|
||||
}
|
||||
|
||||
JS_PUBLIC_API(JSBool)
|
||||
|
@ -91,7 +91,7 @@ JS_DHashGetKeyStub(JSDHashTable *table, JSDHashEntryHdr *entry)
|
||||
JS_PUBLIC_API(JSDHashNumber)
|
||||
JS_DHashVoidPtrKeyStub(JSDHashTable *table, const void *key)
|
||||
{
|
||||
return (JSDHashNumber)key >> 2;
|
||||
return (JSDHashNumber)(unsigned long)key >> 2;
|
||||
}
|
||||
|
||||
JS_PUBLIC_API(JSBool)
|
||||
|
@ -371,7 +371,7 @@ js_SetProtoOrParent(JSContext *cx, JSObject *obj, uint32 slot, JSObject *pobj)
|
||||
JS_STATIC_DLL_CALLBACK(JSHashNumber)
|
||||
js_hash_object(const void *key)
|
||||
{
|
||||
return (JSHashNumber)key >> JSVAL_TAGBITS;
|
||||
return (JSHashNumber)JS_PTR_TO_UINT32(key) >> JSVAL_TAGBITS;
|
||||
}
|
||||
|
||||
static JSHashEntry *
|
||||
@ -400,7 +400,8 @@ MarkSharpObjects(JSContext *cx, JSObject *obj, JSIdArray **idap)
|
||||
he = *hep;
|
||||
if (!he) {
|
||||
sharpid = 0;
|
||||
he = JS_HashTableRawAdd(table, hep, hash, obj, (void *)sharpid);
|
||||
he = JS_HashTableRawAdd(table, hep, hash, obj,
|
||||
JS_UINT32_TO_PTR(sharpid));
|
||||
if (!he) {
|
||||
JS_ReportOutOfMemory(cx);
|
||||
return NULL;
|
||||
@ -454,10 +455,10 @@ MarkSharpObjects(JSContext *cx, JSObject *obj, JSIdArray **idap)
|
||||
if (!ok)
|
||||
return NULL;
|
||||
} else {
|
||||
sharpid = (jsatomid) he->value;
|
||||
sharpid = JS_PTR_TO_UINT32(he->value);
|
||||
if (sharpid == 0) {
|
||||
sharpid = ++map->sharpgen << SHARP_ID_SHIFT;
|
||||
he->value = (void *) sharpid;
|
||||
he->value = JS_UINT32_TO_PTR(sharpid);
|
||||
}
|
||||
ida = NULL;
|
||||
}
|
||||
@ -533,7 +534,7 @@ js_EnterSharpObject(JSContext *cx, JSObject *obj, JSIdArray **idap,
|
||||
}
|
||||
}
|
||||
|
||||
sharpid = (jsatomid) he->value;
|
||||
sharpid = JS_PTR_TO_UINT32(he->value);
|
||||
if (sharpid == 0) {
|
||||
*sp = NULL;
|
||||
} else {
|
||||
|
@ -235,11 +235,11 @@ struct JSSharpObjectMap {
|
||||
#define SHARP_BIT ((jsatomid) 1)
|
||||
#define BUSY_BIT ((jsatomid) 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) (JS_PTR_TO_UINT32((he)->value) & SHARP_BIT)
|
||||
#define MAKE_SHARP(he) ((he)->value = JS_UINT32_TO_PTR(JS_PTR_TO_UINT32((he)->value)|SHARP_BIT))
|
||||
#define IS_BUSY(he) (JS_PTR_TO_UINT32((he)->value) & BUSY_BIT)
|
||||
#define MAKE_BUSY(he) ((he)->value = JS_UINT32_TO_PTR(JS_PTR_TO_UINT32((he)->value)|BUSY_BIT))
|
||||
#define CLEAR_BUSY(he) ((he)->value = JS_UINT32_TO_PTR(JS_PTR_TO_UINT32((he)->value)&~BUSY_BIT))
|
||||
|
||||
extern JSHashEntry *
|
||||
js_EnterSharpObject(JSContext *cx, JSObject *obj, JSIdArray **idap,
|
||||
|
@ -2588,7 +2588,7 @@ js_NewStringCopyZ(JSContext *cx, const jschar *s, uintN gcflag)
|
||||
JS_STATIC_DLL_CALLBACK(JSHashNumber)
|
||||
js_hash_string_pointer(const void *key)
|
||||
{
|
||||
return (JSHashNumber)key >> JSVAL_TAGBITS;
|
||||
return (JSHashNumber)JS_PTR_TO_UINT32(key) >> JSVAL_TAGBITS;
|
||||
}
|
||||
|
||||
void
|
||||
|
@ -208,6 +208,19 @@
|
||||
#define JS_BIT(n) ((JSUint32)1 << (n))
|
||||
#define JS_BITMASK(n) (JS_BIT(n) - 1)
|
||||
|
||||
/***********************************************************************
|
||||
** MACROS: JS_PTR_TO_INT32
|
||||
** JS_PTR_TO_UINT32
|
||||
** JS_INT32_TO_PTR
|
||||
** JS_UINT32_TO_PTR
|
||||
** DESCRIPTION:
|
||||
** Integer to pointer and pointer to integer conversion macros.
|
||||
***********************************************************************/
|
||||
#define JS_PTR_TO_INT32(x) ((jsint)((char *)(x) - (char *)0))
|
||||
#define JS_PTR_TO_UINT32(x) ((jsuint)((char *)(x) - (char *)0))
|
||||
#define JS_INT32_TO_PTR(x) ((void *)((char *)0 + (jsint)(x)))
|
||||
#define JS_UINT32_TO_PTR(x) ((void *)((char *)0 + (jsuint)(x)))
|
||||
|
||||
/***********************************************************************
|
||||
** MACROS: JS_HOWMANY
|
||||
** JS_ROUNDUP
|
||||
|
Loading…
x
Reference in New Issue
Block a user