Closed Bug 728115 Opened 13 years ago Closed 13 years ago

UINT32_MAX not defined

Categories

(Core :: General, defect)

x86_64
Linux
defect
Not set
normal

Tracking

()

RESOLVED INVALID

People

(Reporter: lkcl, Unassigned)

Details

User Agent: Mozilla/5.0 (X11; U; Linux x86_64; en-US; rv:1.9.1.19) Gecko/20110430 Iceweasel/3.5.9 (like Firefox/3.5.9) Build ID: 20100414091236 Steps to reproduce: jshashtable.h contains UINT32_MAX usage whereas all other header files (this is /usr/include/xulrunner-9/*.h on a debian system) use PR_UINT32_MAX Actual results: JS_STATIC_ASSERT(((sMaxInit * sInvMaxAlpha) >> 7) < sMaxCapacity); JS_STATIC_ASSERT((sMaxCapacity * sInvMaxAlpha) <= UINT32_MAX); JS_STATIC_ASSERT((sMaxCapacity * sizeof(Entry)) <= UINT32_MAX);
UINT32_MAX is defined in the system standard stdint.h header. What exact Gecko version did you get your Spidermonkey from, and on what OS are you compiling?
hi boris, thanks for responding so quickly. this is xulrunner 9.0 as installed by debian/testing (amd64) (In reply to Boris Zbarsky (:bz) from comment #1) > UINT32_MAX is defined in the system standard stdint.h header. ah that's strange because the code (hulahop) used to compile perfectly. > What exact > Gecko version did you get your Spidermonkey from, and on what OS are you > compiling? debian/amd64, and it's not spidermonkey, it's hulahop. i've made some rather dreadful hacks: http://lkcl.net/hulahop/ there appears to be a bit more involved than just putting in stdint.h because there are also other objects / defines missing: i've commented out the js_pop and js_push_context functions for now in the interests of "getting something working".
> ah that's strange because the code (hulahop) used to compile perfectly. Used to until what happened? > debian/amd64, and it's not spidermonkey, it's hulahop. If it's including Gecko it's certainly including SpiderMonkey (the JS engine). > there appears to be a bit more involved than just putting in stdint.h OK. What files are actually failing to compile? jshashtable back then appears not to include stdint (which is certainly a bug), but all the code that includes it seems to include stdint. Do you have your own code which includes private JS headers?
(In reply to Boris Zbarsky (:bz) from comment #3) > > ah that's strange because the code (hulahop) used to compile perfectly. > > Used to until what happened? i don't know, because there were so many other dependencies involved, we had to wait until todd finished porting python-xpcom to cope with the xulrunner 2 changes. to define at least _something_ for you: this code used to work perfectly with xulrunner-1.9.1 (ok and i've just seen a comment that it was ok with 1.9.2 as well) > > debian/amd64, and it's not spidermonkey, it's hulahop. > > If it's including Gecko it's certainly including SpiderMonkey (the JS > engine). ok. > > there appears to be a bit more involved than just putting in stdint.h > > OK. What files are actually failing to compile? hulahop-web-view.c the relevant includes are: #if 0 #include <jscntxt.h> #endif #if 0 void hulahop_web_view_push_js_context(HulahopWebView *web_view) { nsCOMPtr<nsIJSContextStack> stack(do_GetService("@mozilla.org/js/xpc/ContextStack;1")); nsresult rv = stack->Push(nsnull); g_assert(NS_SUCCEEDED(rv)); } void hulahop_web_view_pop_js_context(HulahopWebView *web_view) { nsCOMPtr<nsIJSContextStack> stack(do_GetService("@mozilla.org/js/xpc/ContextStack;1")); nsresult rv = stack->Pop(nsnull); g_assert(NS_SUCCEEDED(rv)); } #endif > jshashtable back then > appears not to include stdint (which is certainly a bug), but all the code > that includes it seems to include stdint. Do you have your own code which > includes private JS headers? ah... scratch that: i've just recompiled, it's fine. hmh. wonder how that didn't work before? bizarre. ok, stdint.h it is - thank you for your help, boris.
Status: UNCONFIRMED → RESOLVED
Closed: 13 years ago
Resolution: --- → INVALID
You need to log in before you can comment on or make changes to this bug.