Hmm. My initial reaction was that cpShapeCacheBB() was not being called before the query somehow, but it's called on the line before it. Have you tried stepping the debugger into cpShapeCacheBB()? Each shape type has a little vtable-like struct with function pointers in it. Basically all cpShapeCacheBB() does is call cpPolyShapeCacheData(), cpCircleShapeCacheData(), or cpSegmentShapeCacheData() based on the type of the shape. Try looking at what is going on in those functions. Maybe the issue is happening before that even?
My next best guess is that you are compiling for an Android phone without an FPU and using the -ffast-math flag. The -ffast-math flag tells the compiler to generate code to deal nicely with NaNs and infinity. Every FPU I've ever heard of handles infinity just fine, and only chokes when dealing with NaNs. Chipmunk uses infinity heavily, but has no need to use NaNs anywhere as an error condition. When using software FPU emulation and -ffast-math, it causes all the calculations that involve infinity to get screwed up.