diff options
Diffstat (limited to 'gcc/fortran')
| -rw-r--r-- | gcc/fortran/ChangeLog | 7 | ||||
| -rw-r--r-- | gcc/fortran/arith.c | 6 | ||||
| -rw-r--r-- | gcc/fortran/expr.c | 3 | ||||
| -rw-r--r-- | gcc/fortran/module.c | 1 |
4 files changed, 17 insertions, 0 deletions
diff --git a/gcc/fortran/ChangeLog b/gcc/fortran/ChangeLog index 2d71f42..115e3c2 100644 --- a/gcc/fortran/ChangeLog +++ b/gcc/fortran/ChangeLog @@ -1,3 +1,10 @@ +2006-02-10 Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de> + + PR fortran/14771 + * arith.c (eval_intrinsic): Accept INTRINSIC_PARENTHESES. + * expr.c (check_intrinsic_op): Likewise. + * module.c (mio_expr): Likewise. + 2006-02-09 Tobias Schlüter <tobias.schlueter@physik.uni-muenchen.de> * dump-parse-tree.c: Update copyright years. diff --git a/gcc/fortran/arith.c b/gcc/fortran/arith.c index aac3cb4..a65447a 100644 --- a/gcc/fortran/arith.c +++ b/gcc/fortran/arith.c @@ -1507,6 +1507,12 @@ eval_intrinsic (gfc_intrinsic_op operator, unary = 1; break; + case INTRINSIC_PARENTHESES: + temp.ts = op1->ts; + + unary = 1; + break; + case INTRINSIC_GE: case INTRINSIC_LT: /* Additional restrictions */ case INTRINSIC_LE: /* for ordering relations. */ diff --git a/gcc/fortran/expr.c b/gcc/fortran/expr.c index c72281c..28a2fc8 100644 --- a/gcc/fortran/expr.c +++ b/gcc/fortran/expr.c @@ -1344,6 +1344,9 @@ check_intrinsic_op (gfc_expr * e, try (*check_function) (gfc_expr *)) break; + case INTRINSIC_PARENTHESES: + break; + default: gfc_error ("Only intrinsic operators can be used in expression at %L", &e->where); diff --git a/gcc/fortran/module.c b/gcc/fortran/module.c index b2505cc..c32fe0b 100644 --- a/gcc/fortran/module.c +++ b/gcc/fortran/module.c @@ -2514,6 +2514,7 @@ mio_expr (gfc_expr ** ep) case INTRINSIC_UPLUS: case INTRINSIC_UMINUS: case INTRINSIC_NOT: + case INTRINSIC_PARENTHESES: mio_expr (&e->value.op.op1); break; |
