Lines Matching defs:characteristic

39 /// Return the type of a dummy procedure given its characteristic (if it has
174 // Get dummy argument characteristic for a procedure with implicit interface
175 // from the actual argument characteristic. The actual argument may not be a F77
220 std::optional<Fortran::evaluate::characteristics::Procedure> characteristic =
223 assert(characteristic && "Failed to get characteristic from procRef");
224 // The characteristic may not contain the argument characteristic if the
227 if (!characteristic->HasExplicitInterface() ||
230 characteristic->CanBeCalledViaImplicitInterface())) {
238 // compilation unit, the "characteristic" from Characterize will be the one
241 // the dummy characteristic from the definition and an actual that has
247 // Instead, in HLFIR, the dummy characteristic is always computed from the
253 characteristic->dummyArguments.clear();
257 // to the subprogram definition. Do not compute any characteristic
261 characteristic->dummyArguments.emplace_back(
275 characteristic->dummyArguments.emplace_back(
281 return *characteristic;
341 assert(characteristic && "characteristic was not computed");
343 characteristic->functionResult.value();
388 // Walk directly the result symbol shape (the characteristic shape may contain
414 assert(characteristic && "characteristic was not computed");
416 &result = characteristic->functionResult;
539 std::optional<Fortran::evaluate::characteristics::Procedure> characteristic =
542 assert(characteristic && "Fail to get characteristic from symbol");
543 return *characteristic;
632 characteristic) {
633 if (characteristic && characteristic->cudaSubprogramAttrs) {
637 *characteristic->cudaSubprogramAttrs));
683 characteristic.emplace(side().characterize());
684 bool isImplicit = characteristic->CanBeCalledViaImplicitInterface();
685 determineInterface(isImplicit, *characteristic);
717 setCUDAAttributes(func, side().getProcedureSymbol(), characteristic);
809 /// characteristic. It directly mutates the CallInterface members.
1551 if (characteristic) {
1552 if (characteristic->IsBindC())
1554 if (characteristic->IsPure())
1556 if (characteristic->IsElemental())