From mboxrd@z Thu Jan 1 00:00:00 1970 Return-Path: Received: (qmail 22677 invoked by alias); 21 Dec 2008 13:36:06 -0000 Received: (qmail 22478 invoked by uid 48); 21 Dec 2008 13:34:45 -0000 Date: Sun, 21 Dec 2008 13:36:00 -0000 Message-ID: <20081221133445.22477.qmail@sourceware.org> X-Bugzilla-Reason: CC References: Subject: [Bug fortran/37472] bad output on default-format write of double in common block with -m64 flag i In-Reply-To: Reply-To: gcc-bugzilla@gcc.gnu.org To: gcc-bugs@gcc.gnu.org From: "dominiq at lps dot ens dot fr" Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm Precedence: bulk List-Id: List-Archive: List-Post: List-Help: Sender: gcc-bugs-owner@gcc.gnu.org X-SW-Source: 2008-12/txt/msg01937.txt.bz2 ------- Comment #14 from dominiq at lps dot ens dot fr 2008-12-21 13:34 ------- > This little patch eliminates the misalignment of output characters with -m32 > and gets rid of a many many valgrind errors. > > @@ -628,7 +637,7 @@ output_float_FMT_G_ ## x (st_parameter_d > \ > while (low <= high)\ > { \ > - GFC_REAL_ ## x temp;\ > + float temp;\ > mid = (low + high) / 2;\ > \ > temp = 0.1 * calculate_exp_ ## x (mid) - 0.5\ Do you understand why? Such a change is the opposite of what I understand of the GFC_REAL_* machinery, although I have no knowledge about mixed calculations in C. -- http://gcc.gnu.org/bugzilla/show_bug.cgi?id=37472