diff options
author | Daniel Franke <franke.daniel@gmail.com> | 2007-07-08 17:08:52 -0400 |
---|---|---|
committer | Daniel Franke <dfranke@gcc.gnu.org> | 2007-07-08 17:08:52 -0400 |
commit | 3bed9dd0236405001fc0aeccf7fa37b1ff4ecc9f (patch) | |
tree | a93c7993fbd8df93d9b727f1a469eb1a7ed79a38 /gcc/fortran/module.c | |
parent | 376397285d1564cb838083028fa24286cd101ca6 (diff) | |
download | gcc-3bed9dd0236405001fc0aeccf7fa37b1ff4ecc9f.zip gcc-3bed9dd0236405001fc0aeccf7fa37b1ff4ecc9f.tar.gz gcc-3bed9dd0236405001fc0aeccf7fa37b1ff4ecc9f.tar.bz2 |
re PR fortran/17711 (Wrong operator name in error message)
gcc/fortran:
2007-07-08 Daniel Franke <franke.daniel@gmail.com>
Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de>
PR fortran/17711
* gfortran.h (gfc_intrinsic_op): Added INTRINSIC_EQ_OS,
INTRINSIC_NE_OS, INTRINSIC_GT_OS, INTRINSIC_GE_OS,
INTRINSIC_LT_OS and INTRINSIC_LE_OS.
* arith.c (eval_intrinsic, eval_type_intrinsic0): Likewise.
* arith.h (gfc_eq, gfc_ne, gfc_gt, gfc_ge, gfc_lt, gfc_le):
Added gfc_intrinsic_op as third argument type.
* dump-parse-tree.c (gfc_show_expr): Account for new enum values.
* expr.c (simplify_intrinsic_op, check_intrinsic_op): Likewise.
* interface.c (check_operator_interface): Likewise.
(gfc_check_interfaces): Added cross-checks for FORTRAN 77 and
Fortran 90 style operators using new enum values.
(gfc_extend_expr): Likewise.
(gfc_add_interface): Likewise.
* match.c (intrinsic_operators): Distinguish FORTRAN 77 style
operators from Fortran 90 style operators using new enum values.
* matchexp.c (match_level_4): Account for new enum values.
* module.c (mio_expr): Likewise.
* resolve.c (resolve_operator): Deal with new enum values, fix
inconsistent error messages.
* trans-expr.c (gfc_conv_expr_op): Account for new enum values.
gcc/testsuite:
2007-07-08 Daniel Franke <franke.daniel@gmail.com>
PR fortran/17711
* gfortran.dg/operator_4.f90: New test.
* gfortran.dg/operator_5.f90: New test.
* gfortran.dg/logical_comp.f90: Adjusted error messages.
* gfortran.dg/module_md5_1.f90: Adjusted MD5 sum.
Co-Authored-By: Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de>
From-SVN: r126468
Diffstat (limited to 'gcc/fortran/module.c')
-rw-r--r-- | gcc/fortran/module.c | 24 |
1 files changed, 18 insertions, 6 deletions
diff --git a/gcc/fortran/module.c b/gcc/fortran/module.c index f489322..701da3f 100644 --- a/gcc/fortran/module.c +++ b/gcc/fortran/module.c @@ -2610,12 +2610,18 @@ static const mstring intrinsics[] = minit ("OR", INTRINSIC_OR), minit ("EQV", INTRINSIC_EQV), minit ("NEQV", INTRINSIC_NEQV), - minit ("EQ", INTRINSIC_EQ), - minit ("NE", INTRINSIC_NE), - minit ("GT", INTRINSIC_GT), - minit ("GE", INTRINSIC_GE), - minit ("LT", INTRINSIC_LT), - minit ("LE", INTRINSIC_LE), + minit ("==", INTRINSIC_EQ), + minit ("EQ", INTRINSIC_EQ_OS), + minit ("/=", INTRINSIC_NE), + minit ("NE", INTRINSIC_NE_OS), + minit (">", INTRINSIC_GT), + minit ("GT", INTRINSIC_GT_OS), + minit (">=", INTRINSIC_GE), + minit ("GE", INTRINSIC_GE_OS), + minit ("<", INTRINSIC_LT), + minit ("LT", INTRINSIC_LT_OS), + minit ("<=", INTRINSIC_LE), + minit ("LE", INTRINSIC_LE_OS), minit ("NOT", INTRINSIC_NOT), minit ("PARENTHESES", INTRINSIC_PARENTHESES), minit (NULL, -1) @@ -2734,11 +2740,17 @@ mio_expr (gfc_expr **ep) case INTRINSIC_EQV: case INTRINSIC_NEQV: case INTRINSIC_EQ: + case INTRINSIC_EQ_OS: case INTRINSIC_NE: + case INTRINSIC_NE_OS: case INTRINSIC_GT: + case INTRINSIC_GT_OS: case INTRINSIC_GE: + case INTRINSIC_GE_OS: case INTRINSIC_LT: + case INTRINSIC_LT_OS: case INTRINSIC_LE: + case INTRINSIC_LE_OS: mio_expr (&e->value.op.op1); mio_expr (&e->value.op.op2); break; |