llvm-project/flang/lib/Evaluate
Pete Steinfeld 1746c8ed26 [flang] Fixed crash on forward referenced `len` parameter
Summary:
Using a forward reference to define a `len` parameter causes a crash.
The underlying cause was that a previously declared type had an
erroneous expression for its `LEN` param value.  When this expression
was referenced to evaluate a subsequent expression, bad things happened.
I fixed this by putting in code to detect this case.

Reviewers: tskeith, klausler, DavidTruby

Subscribers: llvm-commits

Tags: #llvm

Differential Revision: https://reviews.llvm.org/D80593
2020-06-04 13:12:11 -07:00
..
CMakeLists.txt [Flang] fix dependency issues after D78215 2020-04-21 20:32:11 +01:00
call.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
character.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
characteristics.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
check-expression.cpp [flang] Fix IsConstantExpr for division expressions 2020-06-04 09:44:44 +02:00
common.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
complex.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
constant.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
expression.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
fold-character.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
fold-complex.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
fold-implementation.h [flang] Add message formatting for std::int64_t 2020-04-03 17:28:23 -07:00
fold-integer.cpp [flang] Add message formatting for std::int64_t 2020-04-03 17:28:23 -07:00
fold-logical.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
fold-real.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
fold.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
formatting.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
host.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
host.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
int-power.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
integer.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
intrinsics-library-templates.h [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
intrinsics-library.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
intrinsics.cpp [flang] New implementation for checks for constraints C741 through C750 2020-05-05 09:37:39 -07:00
logical.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
real.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
shape.cpp [flang]Semantics for SELECT RANK. 2020-05-08 08:52:31 +05:30
static-data.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
tools.cpp [flang][NFC] Remove link-time dependency of Evaluate on Semantics 2020-05-29 16:39:14 -07:00
type.cpp [flang][NFC] Remove link-time dependency of Evaluate on Semantics 2020-05-29 16:39:14 -07:00
variable.cpp [flang] Fixed crash on forward referenced `len` parameter 2020-06-04 13:12:11 -07:00