[flang] Implemented 2 Semantic checks for DATA statement and fixed a few bugs
authorAnchu Rajendran <asudhaku@amd.com>
Wed, 3 Jun 2020 04:56:10 +0000 (10:26 +0530)
committerAnchu Rajendran <asudhaku@amd.com>
Wed, 3 Jun 2020 05:03:26 +0000 (10:33 +0530)
commit70f1b4b4122088c1bd7324b519bc449dbfeaf298
treef943f5e6e10d16fb28cdbec109bbc3a996825ff6
parentdef72b91950d44a68b8613f25fa1a09926171222
[flang] Implemented 2 Semantic checks for DATA statement and fixed a few bugs

Summary
  - Implemented C876, C877
  - Fixed IsConstantExpr to check C879
  - Fixed bugs in few test cases - data01.f90, block-data01.f90,
  pre-fir-tree02.f90
  - Modified implementation of C8106 to identify all automatic objects
  and modified equivalence01.f90 to reflect the changes

Differential Revision: https://reviews.llvm.org/D78424
flang/include/flang/Semantics/tools.h
flang/lib/Evaluate/check-expression.cpp
flang/lib/Semantics/check-data.cpp
flang/lib/Semantics/resolve-names-utils.cpp
flang/lib/Semantics/tools.cpp
flang/test/Lower/pre-fir-tree02.f90
flang/test/Semantics/block-data01.f90
flang/test/Semantics/data01.f90
flang/test/Semantics/data03.f90
flang/test/Semantics/data04.f90 [new file with mode: 0644]
flang/test/Semantics/equivalence01.f90