AdvApp2Var contains numerous mixes of casts from pointers to long int's. This seems to derive from f2c (Fortran-to-C) conversion, which happened years ago. This had been working for 32bit, where both pointer and long are both 32 bits. With migration to 64 bit these casts no longer work leading to loss of data and eventually wrong memory accesses and crashes.
mcrlocv_((long int)&t, (long int *)&loc);
int mcrlocv_(long int t,
long int *l)
*l = t;
return 0 ;
> pload MODELING
> explode c
> gplate res 5 0 c_1 0 c_2 0 c_3 0 c_4 0 c_5 0
This fails in 6.5.1 ros 64 bit and works fine on 32 bit.
I'm now reworking AdvApp2Var to fix these issues...
Hope this helps.
P.S. I wonder how these issues have not been caught by the OCC team earlier when testing Modeling Algorithms on 64 bit platforms. I came across them the first day when built on 64bit and launched my test suite :-(.