Fixing bug 265174. Quiet down compiler warnings on Linux x86_64. r+sr=brendan@mozilla.org

This commit is contained in:
jst%mozilla.jstenback.com 2005-01-12 19:56:32 +00:00
Родитель c1fecc9129
Коммит 0472c0073e
9 изменённых файлов: 34 добавлений и 20 удалений

Просмотреть файл

@ -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