llvm-project/flang/lib/Evaluate
Jean Perier bc699ed0bf [flang] prevent rewrite of CMPLX with dynamically optional Y argument
CMPLX was always rewritten as a complex constructor, but the second operand
of a complex constructor cannot be dynamically absent (i.e., a
disassociated pointer, an unallocated allocatable or an absent OPTIONAL
dummy argument), while the second argument of CMPLX can be dynamically
absent.

To avoid having to generate branches in complex constructor lowering
when Y is a pointer, keep the distinction between CMPLX and a complex
constructor when Y is a pointer, an allocatable, or an OPTIONAL entity.

Differential Revision: https://reviews.llvm.org/D118784
2022-02-02 19:52:52 +01:00
..
CMakeLists.txt [flang] Improve runtime interface with C99 complex 2021-10-01 08:45:24 +02:00
call.cpp [flang][NFC] Address warnings from Windows build 2021-10-12 16:00:09 -07:00
character.h
characteristics.cpp [flang] Adjust names in Semantics that imply too much (NFC) 2021-12-01 11:19:19 -08:00
check-expression.cpp [flang] Extension: initialization of LOGICAL with INTEGER & vice versa 2022-01-13 14:22:45 -08:00
common.cpp
complex.cpp
constant.cpp [flang] Fold SCALE() 2022-01-15 09:31:00 -08:00
expression.cpp [flang] Fold SCALE() 2022-01-15 09:31:00 -08:00
fold-character.cpp [flang] Fold SCALE() 2022-01-15 09:31:00 -08:00
fold-complex.cpp [flang] prevent rewrite of CMPLX with dynamically optional Y argument 2022-02-02 19:52:52 +01:00
fold-designator.cpp [flang] Implement semantics for DEC STRUCTURE/RECORD 2022-01-13 13:17:13 -08:00
fold-implementation.h [flasg] Debug folding of substring references 2022-01-14 16:09:06 -08:00
fold-integer.cpp [flang] Fold SCALE() 2022-01-15 09:31:00 -08:00
fold-logical.cpp Add ieee_is_normal/ieee_is_negative to ieee_arithmetic module. 2022-01-26 11:33:23 +03:00
fold-real.cpp [flang] Fold SCALE() 2022-01-15 09:31:00 -08:00
fold-reduction.cpp [flang] Fold FINDLOC() 2021-09-30 12:08:10 -07:00
fold-reduction.h [flang] Fold MAXLOC and MINLOC 2021-10-05 11:22:02 -07:00
fold.cpp [flang] Fix folding of ac-implied-do indices in structure c'tors 2021-12-09 18:03:04 -08:00
formatting.cpp [flang] Fold SCALE() 2022-01-15 09:31:00 -08:00
host.cpp
host.h [flang] Fix/work around warnings from GCC 11 2022-02-01 11:54:04 -08:00
initial-image.cpp [flang] Include default component initialization in static initializers 2021-09-01 09:40:37 -07:00
int-power.h
integer.cpp
intrinsics-library.cpp [flang] Support extension intrinsic function variations on ABS 2022-01-13 17:10:44 -08:00
intrinsics.cpp [flang] Fix argument keyword names in some specific intrinsics 2022-02-01 16:55:21 -08:00
logical.cpp
real.cpp [flang] Fix test regression from SQRT folding 2021-09-30 11:35:44 -07:00
shape.cpp [flang] Prevent any non constant result extent to be inlined on caller side 2022-01-19 19:15:49 +01:00
static-data.cpp
tools.cpp [flang] prevent rewrite of CMPLX with dynamically optional Y argument 2022-02-02 19:52:52 +01:00
type.cpp [flang] [NFC] Repair build with GCC 7.3 2021-06-22 13:52:30 -07:00
variable.cpp [flang] Fold SCALE() 2022-01-15 09:31:00 -08:00