llvm-project/flang/lib/Semantics
Pete Steinfeld 9520b6c8ab [flang] Fix a crash when cosubscript list is empty
Summary:
When there are errors in the evaluation of every cosubscript expression in a
coindexed object, the compiler would crash.  I fixed this by just checking to
see if there were errors in the evaluation of the cosubscripts before
constructing the `DataRef` for the coindexed object.

Reviewers: klausler, tskeith, DavidTruby

Subscribers: llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D83410
2020-07-08 10:11:34 -07:00
..
CMakeLists.txt [flang][openmp] Use common Directive and Clause enum from llvm/Frontend 2020-07-01 20:58:11 -04:00
assignment.cpp [flang] Semantics for SELECT TYPE 2020-06-12 00:12:24 +05:30
assignment.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
attr.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
canonicalize-do.cpp [flang][NFC] Get formatting in sync with latest clang-format 2020-07-01 16:51:46 -07:00
canonicalize-do.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
canonicalize-omp.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
canonicalize-omp.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-allocate.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-allocate.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-arithmeticif.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-arithmeticif.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-call.cpp [flang] Shape analysis for result of MATMUL 2020-06-22 09:45:30 -07:00
check-call.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-case.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-case.h [flang] Semantics for SELECT CASE 2020-03-27 12:02:11 -07:00
check-coarray.cpp [flang] Support for image selectors 2020-07-08 07:31:54 -07:00
check-coarray.h [flang] Support for image selectors 2020-07-08 07:31:54 -07:00
check-data.cpp [flang][NFC] Get formatting in sync with latest clang-format 2020-07-01 16:51:46 -07:00
check-data.h [flang] DATA stmt processing (part 4/4): Check & convert DATA 2020-06-19 13:26:20 -07:00
check-deallocate.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-deallocate.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-declarations.cpp [flang] DATA stmt processing (part 3/4): Remaining prep work 2020-06-19 09:09:05 -07:00
check-declarations.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-do-forall.cpp [flang] DATA stmt processing (part 3/4): Remaining prep work 2020-06-19 09:09:05 -07:00
check-do-forall.h [flang] Fix crash on erroneous expressions 2020-06-05 08:46:43 -07:00
check-if-stmt.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-if-stmt.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-io.cpp [flang] Add missing check for unresolved name 2020-04-23 07:00:38 -07:00
check-io.h [flang] Process names in ASSIGN and assigned GOTO 2020-04-03 14:58:07 -07:00
check-namelist.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-namelist.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-nullify.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-nullify.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-omp-structure.cpp [flang][openmp] Use common Directive and Clause enum from llvm/Frontend 2020-07-01 20:58:11 -04:00
check-omp-structure.h [flang][openmp] Use common Directive and Clause enum from llvm/Frontend 2020-07-01 20:58:11 -04:00
check-purity.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-purity.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-return.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-return.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-select-rank.cpp [flang]Semantics for SELECT RANK. 2020-05-08 08:52:31 +05:30
check-select-rank.h [flang]Semantics for SELECT RANK. 2020-05-08 08:52:31 +05:30
check-select-type.cpp [flang] Semantics for SELECT TYPE 2020-06-12 00:12:24 +05:30
check-select-type.h [flang] Semantics for SELECT TYPE 2020-06-12 00:12:24 +05:30
check-stop.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-stop.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
compute-offsets.cpp [flang] Implement cross-set EQUIVALENCE impossibility checking 2020-07-01 14:09:07 -07:00
compute-offsets.h [flang] Compute sizes and offsets for symbols 2020-04-23 14:54:34 -07:00
expression.cpp [flang] Fix a crash when cosubscript list is empty 2020-07-08 10:11:34 -07:00
mod-file.cpp [flang] Fix crash with alternate returns in modules 2020-06-18 08:56:12 -07:00
mod-file.h [flang] Clean up binary dependences of runtime libraries 2020-07-02 12:27:01 -07:00
pointer-assignment.cpp [flang] DATA stmt processing (part 3/4): Remaining prep work 2020-06-19 09:09:05 -07:00
pointer-assignment.h [flang] DATA stmt processing (part 3/4): Remaining prep work 2020-06-19 09:09:05 -07:00
program-tree.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
program-tree.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
resolve-labels.cpp [flang] Process names in ASSIGN and assigned GOTO 2020-04-03 14:58:07 -07:00
resolve-labels.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
resolve-names-utils.cpp [flang] Implement cross-set EQUIVALENCE impossibility checking 2020-07-01 14:09:07 -07:00
resolve-names-utils.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
resolve-names.cpp [flang] Bug fix for ambiguous references to data and functions 2020-07-06 11:27:14 -07:00
resolve-names.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
rewrite-parse-tree.cpp [flang] DATA stmt processing (part 3/4): Remaining prep work 2020-06-19 09:09:05 -07:00
rewrite-parse-tree.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
scope.cpp [flang][NFC] Remove link-time dependency of Evaluate on Semantics 2020-05-29 16:39:14 -07:00
semantics.cpp [flang] DATA stmt processing (part 4/4): Check & convert DATA 2020-06-19 13:26:20 -07:00
symbol.cpp [flang][NFC] Remove link-time dependency of Evaluate on Semantics 2020-05-29 16:39:14 -07:00
tools.cpp [flang] Add more support for alternate returns 2020-07-01 17:28:01 -07:00
type.cpp [flang] DATA stmt processing (part 3/4): Remaining prep work 2020-06-19 09:09:05 -07:00
unparse-with-symbols.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00