This is the mail archive of the
gcc-bugs@gcc.gnu.org
mailing list for the GCC project.
[Bug fortran/30594] Calling inquire (iolength) crashes with -malign-double
- From: "schnetter at aei dot mpg dot de" <gcc-bugzilla at gcc dot gnu dot org>
- To: gcc-bugs at gcc dot gnu dot org
- Date: 26 Jan 2007 14:36:34 -0000
- Subject: [Bug fortran/30594] Calling inquire (iolength) crashes with -malign-double
- References: <bug-30594-7427@http.gcc.gnu.org/bugzilla/>
- Reply-to: gcc-bugzilla at gcc dot gnu dot org
------- Comment #4 from schnetter at aei dot mpg dot de 2007-01-26 14:36 -------
I have read the documentation, and I understand what the option does. I
compile my complete programme and all its libraries with this option.
It was my assumption that the compiler would create working code with and
without this option, that is, that the run-time library could handle both
cases. My patch would change the run-time library so that this is indeed the
case for inquire(iolength).
Creating a run-time library that works with -malign-double is certainly
possible; the question is whether the additional work is deemed worthwhile.
Looking on the web, most numerical benchmarks use -malign-double on the i386.
At the same time I see many complaints from people who use this option without
knowing what it does and reporting spurious errors, which is a maintenance
burden. I realise that any bug report concerning -malign-double must hit a
sore spot with you.
If -malign-double is really unsupported, then the documentationcould be changed
to include a warning sentence like: "Calling standard library routines is not
supported when this option is used. Your program may segfault randomly or
silently produce wrong results." As it, I honestly interpreted the
documentation as saying that one is safe if (a) the whole programme is compiled
with this option, and (b) no structure involved in library calls contains
double, long double, or long long.
--
http://gcc.gnu.org/bugzilla/show_bug.cgi?id=30594