Home | History | Annotate | Download | only in fortran

Lines Matching refs:allocatable

95   else if (attr.allocatable)
135 if ((attr.pointer || attr.allocatable) && attr.intent != INTENT_IN)
144 Returns a NULL_TREE, when the ref object is not allocatable or pointer. */
157 && (ref->u.c.component->attr.allocatable
485 rank must not have the ALLOCATABLE attribute. If attempts
489 && CLASS_DATA (ref->u.c.component)->attr.allocatable)
694 optional_alloc_ptr is false when the dummy is neither allocatable
697 expression for deallocation of allocatable components. Assumed rank
1140 optional_alloc_ptr is false when the dummy is neither allocatable
1881 "Code for reallocating the allocatable array at %L will "
1885 "Code for reallocating the allocatable variable at %L "
2037 && !sym->attr.allocatable
2040 && !CLASS_DATA (sym)->attr.allocatable
2773 /* Allocatable deferred char arrays are to be handled by the gfc_deferred_
2793 if (((c->attr.pointer || c->attr.allocatable)
2890 if ((sym->attr.pointer || sym->attr.allocatable
2911 && !(sym->attr.codimension && sym->attr.allocatable)
2915 && CLASS_DATA (sym)->attr.allocatable))))
2928 && (sym->attr.pointer || sym->attr.allocatable
2935 && (!sym->attr.codimension || !sym->attr.allocatable))))
2944 || CLASS_DATA (sym)->attr.allocatable
2959 || !CLASS_DATA (sym)->attr.allocatable)
3116 && !CLASS_DATA (sym)->attr.allocatable
4435 new_sym->attr.allocatable = sym->attr.allocatable;
4508 /* If the argument is a scalar, a pointer to an array or an allocatable,
4510 else if (!sym->attr.dimension || sym->attr.pointer || sym->attr.allocatable)
5436 This function is used to decide whether freeing an expression's allocatable
5693 else if (fsym->attr.allocatable)
5712 Note that allocatable implies 'len=:'. */
5721 /* When allocatable + intent out, free the cfi descriptor. */
5722 if (fsym->attr.allocatable && fsym->attr.intent == INTENT_OUT)
5839 /* cfi->dim[i].lower_bound = (allocatable/pointer)
5841 if (fsym->attr.pointer || fsym->attr.allocatable)
5876 if (fsym->attr.allocatable || fsym->attr.pointer)
5904 if ((!fsym->attr.allocatable && !fsym->attr.pointer)
5919 if (fsym->attr.allocatable)
6138 ALLOCATABLE or assumed shape, we do not use g77's calling
6143 && !(fsym->attr.pointer || fsym->attr.allocatable)
6221 gcc_assert (fsym->attr.optional && !fsym->attr.allocatable
6223 || !CLASS_DATA (fsym)->attr.allocatable));
6240 || CLASS_DATA (fsym)->attr.allocatable,
6328 || CLASS_DATA (fsym)->attr.allocatable),
6333 || CLASS_DATA (fsym)->attr.allocatable);
6544 && !fsym->attr.allocatable
6552 && !e->symtree->n.sym->attr.allocatable
6579 /* If an ALLOCATABLE dummy argument has INTENT(OUT) and is
6582 && (fsym->attr.allocatable
6584 && CLASS_DATA (fsym)->attr.allocatable))
6649 || CLASS_DATA (fsym)->attr.allocatable),
6654 || CLASS_DATA (fsym)->attr.allocatable);
6666 && CLASS_DATA (e)->attr.allocatable)
6722 || (fsym->attr.allocatable
6742 /* If an ALLOCATABLE dummy argument has INTENT(OUT) and is
6745 && CLASS_DATA (fsym)->attr.allocatable)
6789 || CLASS_DATA (fsym)->attr.allocatable),
6794 || CLASS_DATA (fsym)->attr.allocatable);
6846 && !CLASS_DATA (fsym)->attr.allocatable)
6848 && !fsym->attr.pointer && !fsym->attr.allocatable)))
6920 /* If an ALLOCATABLE dummy argument has INTENT(OUT) and is
6923 if (fsym && fsym->attr.allocatable
6982 || CLASS_DATA (fsym)->attr.allocatable)
6983 : (fsym->attr.pointer || fsym->attr.allocatable))
6985 /* Unallocated allocatable arrays and unassociated pointer
7072 /* Allocated allocatable components of derived types must be
7085 allocatable component. When e is a function, ensure that the
7141 allocatable components. */
7210 allocatable to an optional dummy, cf. 12.5.2.12. */
7217 /* If the actual argument is an optional pointer/allocatable and
7224 if (attr.allocatable
7225 && (fsym == NULL || !fsym_attr.allocatable))
7226 msg = xasprintf ("Allocatable actual argument '%s' is not "
7258 if (attr.allocatable
7259 && (fsym == NULL || !fsym_attr.allocatable))
7260 msg = xasprintf ("Allocatable actual argument '%s' is not "
7341 && !fsym->attr.allocatable)
7344 && !CLASS_DATA (fsym)->attr.allocatable)))
7353 && !fsym->attr.allocatable)
7356 && !CLASS_DATA (fsym)->attr.allocatable)))
7524 /* If the lhs of an assignment x = f(..) is allocatable and
7561 /* If the lhs of an assignment x = f(..) is allocatable and
7574 callee_alloc = comp->attr.allocatable || comp->attr.pointer;
7596 /* If the lhs of an assignment x = f(..) is allocatable and
7609 callee_alloc = sym->attr.allocatable || sym->attr.pointer;
7641 if ((!comp && (sym->attr.pointer || sym->attr.allocatable))
7642 || (comp && (comp->attr.pointer || comp->attr.allocatable)))
7646 if ((!comp && sym->attr.allocatable)
7647 || (comp && comp->attr.allocatable))
7737 /* Allocatable scalar function results must be freed and nullified
7741 && ((sym->attr.allocatable && !sym->attr.dimension && !comp)
7742 || (comp && comp->attr.allocatable && !comp->attr.dimension)))
7757 && ((!comp && (sym->attr.pointer || sym->attr.allocatable))
7758 || (comp && (comp->attr.pointer || comp->attr.allocatable))))
7806 if ((!comp && (sym->attr.pointer || sym->attr.allocatable))
7807 || (comp && (comp->attr.pointer || comp->attr.allocatable)))
7850 /* Transformational functions of derived types with allocatable
7851 components must have the result allocatable components copied when the
7862 /* Copy the allocatable components. We have to use a
7863 temporary here to prevent source allocatable components
7886 nullification of allocatable components needed by the result
8623 /* Deal with arrays of derived types with allocatable components. */
8631 && CLASS_DATA(cm)->attr.allocatable)
8735 argument, nullify the allocatable component. */
8739 if (arg->symtree->n.sym->attr.allocatable
8934 if (cm->attr.allocatable && expr->expr_type == EXPR_NULL)
8936 else if (cm->attr.allocatable || cm->attr.pdt_array)
8949 && CLASS_DATA (cm)->attr.allocatable
8961 else if (init && cm->attr.allocatable && expr->expr_type == EXPR_NULL)
8963 /* NULL initialization for allocatable components. */
8967 else if (init && (cm->attr.allocatable
8968 || (cm->ts.type == BT_CLASS && CLASS_DATA (cm)->attr.allocatable
8971 /* Take care about non-array allocatable components here. The alloc_*
9050 expression in a temporary variable and deallocate the allocatable
9178 if (!c->expr && !cm->attr.allocatable)
9182 Register only allocatable components, that are not coarray'ed
9186 && (cm->attr.allocatable || cm->attr.pointer)
9330 /* Skip absent members in default initializers and allocatable
9334 if (!c->expr || (cm->attr.allocatable && cm->attr.flavor != FL_PROCEDURE))
10411 strings and derived types with allocatable components.
10415 allocatable components. Otherwise, if it is set, an explicit copy of each
10416 allocatable component is made. This is necessary as a simple copy of the
10418 allocatable components would point to the rhs's after the assignment.
10420 necessary if the rhs is a non-pointer function, as the allocatable components
10427 more variable with allocatable components, those components still point
10604 || gfc_expr_attr (expr2).allocatable)
10647 on assignment is active and the lhs is allocatable and a target,
10652 return (flag_realloc_lhs && sym->attr.allocatable && sym->attr.target)
10905 Clearly, this cannot be done for an allocatable function result, since
10916 && expr2->value.function.esym->result->attr.allocatable))
11181 /* An allocatable variable with no reference. */
11182 if (expr->symtree->n.sym->attr.allocatable
11186 /* All that can be left are allocatable components. However, we do
11187 not check for allocatable components here because the expression
11188 could be an allocatable component of a pointer component. */
11193 /* Find an allocatable component ref last. */
11197 && ref->u.c.component->attr.allocatable)
11526 && !rhs->ts.u.derived->attr.allocatable)
11529 && !CLASS_DATA (rhs)->attr.allocatable))
11540 && !lhs->ts.u.derived->attr.allocatable)
11543 && !CLASS_DATA (lhs)->attr.allocatable))
11648 || (lhs_attr.allocatable && !lhs_attr.dimension))
11767 && gfc_expr_attr (expr1).allocatable
11787 && gfc_expr_attr (expr1).allocatable
11841 /* Assignments of scalar derived types with allocatable components
11884 /* Nullify the allocatable components corresponding to those of the lhs
11905 use_vptr_copy || (lhs_attr.allocatable
11923 && ((lhs_caf_attr.allocatable && lhs_refs_comp)
11924 || (rhs_caf_attr.allocatable && rhs_refs_comp)))
11927 allocatable component, because those need to be accessed via the
11950 copy of allocatable components, without which the finalizer call
12025 /* F2003: Allocate or reallocate lhs of allocatable array. */