Automatic date update in version.in
[deliverable/binutils-gdb.git] / gdb / f-exp.y
index c33b507915835b75582f67b2341fb9d86c43ba92..ce11b09b18e7ba92212a22ce28b0b76ac720efaf 100644 (file)
@@ -260,6 +260,13 @@ exp        :       UNOP_OR_BINOP_INTRINSIC '('
                              else
                                pstate->wrap2<fortran_associated_2arg> ();
                            }
+                         else if ($1 == FORTRAN_ARRAY_SIZE)
+                           {
+                             if (n == 1)
+                               pstate->wrap<fortran_array_size_1arg> ();
+                             else
+                               pstate->wrap2<fortran_array_size_2arg> ();
+                           }
                          else
                            {
                              std::vector<operation_up> args
@@ -320,6 +327,15 @@ exp        :       UNOP_INTRINSIC '(' exp ')'
                            case UNOP_FORTRAN_ALLOCATED:
                              pstate->wrap<fortran_allocated_operation> ();
                              break;
+                           case UNOP_FORTRAN_RANK:
+                             pstate->wrap<fortran_rank_operation> ();
+                             break;
+                           case UNOP_FORTRAN_SHAPE:
+                             pstate->wrap<fortran_array_shape_operation> ();
+                             break;
+                           case UNOP_FORTRAN_LOC:
+                             pstate->wrap<fortran_loc_operation> ();
+                             break;
                            default:
                              gdb_assert_not_reached ("unhandled intrinsic");
                            }
@@ -1139,6 +1155,10 @@ static const struct token f77_keywords[] =
   { "ubound", UNOP_OR_BINOP_INTRINSIC, FORTRAN_UBOUND, false },
   { "allocated", UNOP_INTRINSIC, UNOP_FORTRAN_ALLOCATED, false },
   { "associated", UNOP_OR_BINOP_INTRINSIC, FORTRAN_ASSOCIATED, false },
+  { "rank", UNOP_INTRINSIC, UNOP_FORTRAN_RANK, false },
+  { "size", UNOP_OR_BINOP_INTRINSIC, FORTRAN_ARRAY_SIZE, false },
+  { "shape", UNOP_INTRINSIC, UNOP_FORTRAN_SHAPE, false },
+  { "loc", UNOP_INTRINSIC, UNOP_FORTRAN_LOC, false },
 };
 
 /* Implementation of a dynamically expandable buffer for processing input
This page took 0.023609 seconds and 4 git commands to generate.