[all-commits] [llvm/llvm-project] 48a70e: [flang] Fix semantic checks for C919

PeixinQiao via All-commits all-commits at lists.llvm.org
Mon Jun 6 23:56:19 PDT 2022


  Branch: refs/heads/main
  Home:   https://github.com/llvm/llvm-project
  Commit: 48a70ea177ad912b870cc75cd73d8459c03e8579
      https://github.com/llvm/llvm-project/commit/48a70ea177ad912b870cc75cd73d8459c03e8579
  Author: Peixin-Qiao <qiaopeixin at huawei.com>
  Date:   2022-06-07 (Tue, 07 Jun 2022)

  Changed paths:
    M flang/include/flang/Evaluate/tools.h
    M flang/include/flang/Semantics/expression.h
    M flang/lib/Semantics/expression.cpp
    A flang/test/Semantics/expr-errors04.f90

  Log Message:
  -----------
  [flang] Fix semantic checks for C919

The previous semantic analysis does not consider when the last part-ref
is scalar or complex part. Refactor the previous code and bring all the
checks into one place. The check starts from the designator by
extracting the dataref wrapped including the substring and complex part
and recursively check the base objects.

Co-authored-by: Peter Klausler <pklausler at nvidia.com>

Reviewed By: klausler

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




More information about the All-commits mailing list