diff options
author | Hassan Aurag <aurag@cae.com> | 2002-05-09 09:11:58 +0000 |
---|---|---|
committer | Toon Moene <toon@gcc.gnu.org> | 2002-05-09 09:11:58 +0000 |
commit | 0a0576f3f1edcfdea0122ce5190e5017e7fd73ab (patch) | |
tree | 17fc568f2c23025e5c5d63ae5fbac3336265ed9d | |
parent | dccfe3d6447841d8d3f9c39bf066704926b7ee4e (diff) | |
download | gcc-0a0576f3f1edcfdea0122ce5190e5017e7fd73ab.zip gcc-0a0576f3f1edcfdea0122ce5190e5017e7fd73ab.tar.gz gcc-0a0576f3f1edcfdea0122ce5190e5017e7fd73ab.tar.bz2 |
expr.c (ffeexpr_reduced_ugly2log_): Allow logicals-as-integers under -fugly-logint as arguments of .and., .or., .xor.
2002-05-09 Hassan Aurag <aurag@cae.com>
* expr.c (ffeexpr_reduced_ugly2log_): Allow logicals-as-integers
under -fugly-logint as arguments of .and., .or., .xor.
From-SVN: r53321
-rw-r--r-- | gcc/f/ChangeLog | 5 | ||||
-rw-r--r-- | gcc/f/expr.c | 18 |
2 files changed, 23 insertions, 0 deletions
diff --git a/gcc/f/ChangeLog b/gcc/f/ChangeLog index 364408f..1f14f90 100644 --- a/gcc/f/ChangeLog +++ b/gcc/f/ChangeLog @@ -1,3 +1,8 @@ +2002-05-09 Hassan Aurag <aurag@cae.com> + + * expr.c (ffeexpr_reduced_ugly2log_): Allow logicals-as-integers + under -fugly-logint as arguments of .and., .or., .xor. + 2002-05-07 Jan Hubicka <jh@suse.cz> * target.h (FFETARGET_32bit_longs): Undefine for x86-64. diff --git a/gcc/f/expr.c b/gcc/f/expr.c index 1772727..a63ae30 100644 --- a/gcc/f/expr.c +++ b/gcc/f/expr.c @@ -11501,6 +11501,24 @@ ffeexpr_reduced_ugly2log_ (ffebld reduced, ffeexprExpr_ l, ffeexprExpr_ op, /* else Leave it alone. */ } + if (lbt == FFEINFO_basictypeLOGICAL) + { + ffebld_set_left (reduced, ffeexpr_convert (ffebld_left (reduced), + l->token, op->token, FFEINFO_basictypeINTEGER, + FFEINFO_kindtypeINTEGERDEFAULT, 0, + FFETARGET_charactersizeNONE, + FFEEXPR_contextLET)); + } + + if (rbt == FFEINFO_basictypeLOGICAL) + { + ffebld_set_right (reduced, ffeexpr_convert (ffebld_right (reduced), + r->token, op->token, FFEINFO_basictypeINTEGER, + FFEINFO_kindtypeINTEGERDEFAULT, 0, + FFETARGET_charactersizeNONE, + FFEEXPR_contextLET)); + } + return reduced; } |