My program and subroutines are mainly written in fortran 77 with blanck
common of different sizes.
The program contains the maximum byte declaration of the blanck common.
1% are written in C, compiled with gcc.
-bash-> gfortran -v
Utilisation des specs internes.
COLLECT_GCC=gfortran
COLLECT_LTO_WRAPPER=/usr/lib/gcc/x86_64-linux-gnu/4.6/lto-wrapper
Target: x86_64-linux-gnu
Configuré avec: ../src/configure -v --with-pkgversion='Ubuntu/Linaro
4.6.3-1ubuntu5' --with-bugurl=file:///usr/share/doc/gcc-4.6/README.Bugs
--enable-languages=c,c++,fortran,objc,obj-c++ --prefix=/usr
--program-suffix=-4.6 --enable-shared --enable-linker-build-id
--with-system-zlib --libexecdir=/usr/lib --without-included-gettext
--enable-threads=posix --with-gxx-include-dir=/usr/include/c++/4.6
--libdir=/usr/lib --enable-nls --with-sysroot=/ --enable-clocale=gnu
--enable-libstdcxx-debug --enable-libstdcxx-time=yes
--enable-gnu-unique-object --enable-plugin --enable-objc-gc
--disable-werror --with-arch-32=i686 --with-tune=generic
--enable-checking=release --build=x86_64-linux-gnu
--host=x86_64-linux-gnu --target=x86_64-linux-gnu
Modèle de thread: posix
gcc version 4.6.3 (Ubuntu/Linaro 4.6.3-1ubuntu5)
-bash->
If the program and subroutines are compiled with the option -g the
load-module is OK.
if the program and subroutines are compiled with the option -O the execution
of the load-module gives errors.
It seems that the blank common has not the same maximum length in bytes
in all subroutines
and the shift produces the errors.
For 25 years, this maximum was respected in all subroutines.
It seems that a modification for the -O option has been recently done.
Have you an option for the compilation which imposes the same length in
bytes (the maximum
found during the separated compilations) to the blank common?
or an other method to obtain that?
Cordially
Alain PERRONNET
http://www.ann.jussieu.fr/~perronnet