THE POST BELOW IS MORE THAN 5 YEARS OLD. RELATED SUPPORT INFORMATION MIGHT BE OUTDATED OR DEPRECATED
On 06/10/2012 at 12:04, xxxxxxxx wrote:
Well, no luck so far. I've checked every warning (nice that PVS_Studio shows the file and line number so I don't have to waste clicks) and these are the only warning types I'm getting in my code at level 1 and 2 along with a typical example from my source code.
1. Dangerous Magic Number 4 used:
AddChild(C_CLAMP_AXIS, 4, GeLoadString(C_CLAMP_NY)); // from GeDialog::AddChild()
2. Implicit conversion of 'bsCount' to memsize type in an arithmetic expression:
LONG *ptInd = (LONG* )GeAlloc(sizeof(LONG)*bsCount); // bsCount is the result of BaseSelect::GetCount()
3. Incorrect index type: ptInd[not a memsize-type]. Use memsize type instead:
ptInd[ptCnt] = i; // "ptCnt" and "i" are of type LONG
4. The bool type is implicitly casted to the class type:
yAxis = !(zAxis % xAxis); // "!" is using the "Normalize" operator of the Vector
... this one also for "!" using the "Inverse" operator of the Matrix
5. Implicit type conversion second argument 'OBJECT' of function 'SetLong' to 32-bit type:
tData->SetLong(COORD_SPACE,OBJECT); // from BaseContainer::SetLong()
I think warnings 1, 4 and 5 can probably be totally ignored (I see the same ones in the API source), but I'm not sure I understand exactly what warnings 2 and 3 are telling me. From the documentation, it sounds like warning number 2 might be an issue with 64 bit because it may not be allocating the array space properly. Could this be the source of the problems?
P.S. Why is it that the Mac version 64 bit doesn't have any issues? Is it because it uses the GCC compiler?