Fix 19990525-0.f
From-SVN: r27145
This commit is contained in:
parent
3ebc5c52e8
commit
47d98fa268
@ -1,3 +1,10 @@
|
||||
Tue May 25 17:48:34 1999 Craig Burley <craig@jcb-sc.com>
|
||||
|
||||
Fix 19990525-0.f:
|
||||
* com.c (ffecom_arg_ptr_to_expr): Strip off parens around
|
||||
CHARACTER expression.
|
||||
(ffecom_prepare_expr_): Ditto.
|
||||
|
||||
Tue May 18 03:52:04 1999 Craig Burley <craig@jcb-sc.com>
|
||||
|
||||
Support use of back end's improved open-coding of complex divide:
|
||||
|
@ -10600,6 +10600,9 @@ ffecom_arg_ptr_to_expr (ffebld expr, tree *length)
|
||||
assert (ffeinfo_kindtype (ffebld_info (expr))
|
||||
== FFEINFO_kindtypeCHARACTER1);
|
||||
|
||||
while (ffebld_op (expr) == FFEBLD_opPAREN)
|
||||
expr = ffebld_left (expr);
|
||||
|
||||
catlist = ffecom_concat_list_new_ (expr, FFETARGET_charactersizeNONE);
|
||||
switch (ffecom_concat_list_count_ (catlist))
|
||||
{
|
||||
@ -13042,6 +13045,12 @@ ffecom_prepare_expr_ (ffebld expr, ffebld dest UNUSED)
|
||||
/* Generate whatever temporaries are needed to represent the result
|
||||
of the expression. */
|
||||
|
||||
if (bt == FFEINFO_basictypeCHARACTER)
|
||||
{
|
||||
while (ffebld_op (expr) == FFEBLD_opPAREN)
|
||||
expr = ffebld_left (expr);
|
||||
}
|
||||
|
||||
switch (ffebld_op (expr))
|
||||
{
|
||||
default:
|
||||
|
@ -1,3 +1,7 @@
|
||||
1999-05-25 Craig Burley <craig@jcb-sc.com>
|
||||
|
||||
* g77.f-torture/compile/19990525-0.f: New test.
|
||||
|
||||
Tue May 25 01:21:16 1999 Jeffrey A Law (law@cygnus.com)
|
||||
|
||||
* gcc.c-torture/execute/990525-2.c: New test.
|
||||
|
50
gcc/testsuite/g77.f-torture/compile/19990525-0.f
Normal file
50
gcc/testsuite/g77.f-torture/compile/19990525-0.f
Normal file
@ -0,0 +1,50 @@
|
||||
* Mailing-List: contact egcs-bugs-help@egcs.cygnus.com; run by ezmlm
|
||||
* Precedence: bulk
|
||||
* Sender: owner-egcs-bugs@egcs.cygnus.com
|
||||
* From: "Bjorn R. Bjornsson" <brb@halo.hi.is>
|
||||
* Subject: g77 char expr. as arg to subroutine bug
|
||||
* To: egcs-bugs@egcs.cygnus.com
|
||||
* Date: Tue, 25 May 1999 14:45:56 +0000 (GMT)
|
||||
* Content-Type: text/plain; charset=US-ASCII
|
||||
* X-UIDL: 06000c94269ed6dfe826493e52a818b9
|
||||
*
|
||||
* The following bug is in all snapshots starting
|
||||
* from April 18. I have only tested this on Alpha linux,
|
||||
* and with FFECOM_FASTER_ARRAY_REFS set to 1.
|
||||
*
|
||||
* Run the following through g77:
|
||||
*
|
||||
subroutine a
|
||||
character*2 string1
|
||||
character*2 string2
|
||||
character*4 string3
|
||||
string1 = 's1'
|
||||
string2 = 's2'
|
||||
c
|
||||
c the next 2 lines are ok.
|
||||
string3 = (string1 // string2)
|
||||
call b(string1//string2)
|
||||
c
|
||||
c this line gives gcc/f/com.c:10660: failed assertion `hook'
|
||||
call b((string1//string2))
|
||||
end
|
||||
*
|
||||
* the output from:
|
||||
*
|
||||
* /usr/local/egcs-19990418/bin/g77 --verbose -c D.f
|
||||
*
|
||||
* is:
|
||||
*
|
||||
* on egcs-2.93.19 19990418 (gcc2 ss-980929 experimental) (from FSF-g77 version 0.5.24-19990418)
|
||||
* Reading specs from /usr/local/egcs-19990418/lib/gcc-lib/alphaev56-unknown-linux-gnu/egcs-2.93.19/specs
|
||||
* gcc version egcs-2.93.19 19990418 (gcc2 ss-980929 experimental)
|
||||
* /usr/local/egcs-19990418/lib/gcc-lib/alphaev56-unknown-linux-gnu/egcs-2.93.19/f771 D.f -quiet -dumpbase D.f -version -fversion -o /tmp/ccNpaaaa.s
|
||||
* GNU F77 version egcs-2.93.19 19990418 (gcc2 ss-980929 experimental) (alphaev56-unknown-linux-gnu) compiled by GNU C version egcs-2.93.19 19990418 (gcc2 ss-980929 experimental).
|
||||
* GNU Fortran Front End version 0.5.24-19990418
|
||||
* ../../../egcs-19990418/gcc/f/com.c:10351: failed assertion `hook'
|
||||
* g77: Internal compiler error: program f771 got fatal signal 6
|
||||
*
|
||||
* Yours,
|
||||
*
|
||||
* Bjorn R. Bjornsson
|
||||
* brb@halo.hi.is
|
Loading…
Reference in New Issue
Block a user