From: maintenance team Date: Wed, 27 Sep 2006 10:13:05 +0000 (+0000) Subject: Correction for problem: Computation of mesh via "Length From Edges" hipothesis failed. X-Git-Tag: V3_2_3pre1~30 X-Git-Url: http://git.salome-platform.org/gitweb/?a=commitdiff_plain;h=933c17cfd8e8238ffefe30b902624cf8fe5211fe;p=modules%2Fsmesh.git Correction for problem: Computation of mesh via "Length From Edges" hipothesis failed. --- diff --git a/src/MEFISTO2/Rn.h b/src/MEFISTO2/Rn.h index 9aafe707b..aa69c4aaa 100755 --- a/src/MEFISTO2/Rn.h +++ b/src/MEFISTO2/Rn.h @@ -66,7 +66,15 @@ typedef unsigned long int N; //le type Z des nombres entiers relatifs //========= -typedef long int Z; +// 64-bit porting: "long" replaced with "int". +// On 64-bit, C++ long type is 8 byte long. MEFISTO2D C code calls several Fortran subroutines passing +// arguments of this type, however Fortran knows nothing about changed size of arguments, +// therefore stack gets corrupted. With "int" used instead of "long", Fortran calls from C do no harm to the stack +// After this modification, behavior on 32-bit platforms does not change: on all platforms supported by +// SALOME 3, "int" and "long" have the same size of 4 bytes. +//======== +//typedef long int Z; +typedef int Z; //le type R des nombres "reels" //=========