llvm-project/flang/lib/Evaluate
Peter Steinfeld 1341b5a0f5 [flang] Allow mixed association of procedure pointers and targets
Section 10.2.2.4, paragraph 3 states that a procedure pointer with an explicit
interface must have the same characteristics as its target.  Previously, we
interpreted this as disallowing such pointers to point to procedures with
implicit interfaces.  But several other compilers allow this.

We make an exception for the case where the explicit interface cannot be
called via an implicit interface.

This change makes us allow this, also

Differential Revision: https://reviews.llvm.org/D119404
2022-02-11 10:55:45 -08: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 [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
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 [flang] Add isnan() extension intrinsic function, with folding 2020-11-11 11:40:57 -08:00
complex.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
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 Folding in the front end was replacing calls to LEN and dropping 2022-02-09 16:50:28 -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 [flang] Fix setting mxcsr on MSVC 2020-07-08 07:25:25 -05:00
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 [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.cpp [flang] Support extension intrinsic function variations on ABS 2022-01-13 17:10:44 -08:00
intrinsics.cpp [flang] Refine pointer/target test for ASSOCIATED intrinsic 2022-02-10 11:32:21 -08:00
logical.cpp [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
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 [flang] Reformat with latest clang-format and .clang-format 2020-03-28 21:00:16 -07:00
tools.cpp [flang] Allow mixed association of procedure pointers and targets 2022-02-11 10:55:45 -08: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