[all-commits] [llvm/llvm-project] 87bd94: [flang] Lowering and implementation for extends_ty...

Valentin Clement (バレンタイン クレメン) via All-commits all-commits at lists.llvm.org
Wed Jan 11 00:32:36 PST 2023


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 87bd946138483068ab30ff8a19d4ec344de42f57
      https://github.com/llvm/llvm-project/commit/87bd946138483068ab30ff8a19d4ec344de42f57
  Author: Valentin Clement <clementval at gmail.com>
  Date:   2023-01-11 (Wed, 11 Jan 2023)

  Changed paths:
    M flang/include/flang/Optimizer/Builder/Runtime/Derived.h
    M flang/include/flang/Runtime/derived-api.h
    M flang/lib/Lower/IntrinsicCall.cpp
    M flang/lib/Optimizer/Builder/Runtime/Derived.cpp
    M flang/runtime/derived-api.cpp
    A flang/test/Lower/Intrinsics/extends_type_of.f90

  Log Message:
  -----------
  [flang] Lowering and implementation for extends_type_of

Add implementation and loweirng for the extends_type_of
intrinsic.

The standard mentions this: otherwise if the dynamic type of A or MOLD is
extensible, the result is true if and only if the dynamic type of A is an
extension type of the dynamic type of MOLD. Which could be interpreted that
`extends_type_of(a, a)` could be false since a type is not an extension of
itself. Gfortran result for this is `true` so the same behavior is applied
here as well.

Depends on D141364

Reviewed By: jeanPerier, PeteSteinfeld

Differential Revision: https://reviews.llvm.org/D141376




More information about the All-commits mailing list