aboutsummaryrefslogtreecommitdiff
path: root/flang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorjeanPerier <jperier@nvidia.com>2024-03-19 11:26:36 +0100
committerGitHub <noreply@github.com>2024-03-19 11:26:36 +0100
commit8eee236021f72821d628ec31d8e8d1f92e7821d3 (patch)
treec4308237cca37acba9a5dac2a573448058f59e28 /flang/lib/Frontend/CompilerInvocation.cpp
parentd9c31ee9568277e4303715736b40925e41503596 (diff)
downloadllvm-8eee236021f72821d628ec31d8e8d1f92e7821d3.zip
llvm-8eee236021f72821d628ec31d8e8d1f92e7821d3.tar.gz
llvm-8eee236021f72821d628ec31d8e8d1f92e7821d3.tar.bz2
[flang] Lower sequence associated argument passed by descriptor (#85696)
The current lowering did not handle sequence associated argument passed by descriptor. This case is special because sequence association implies that the actual and dummy argument need to to agree in rank and shape. Usually, arguments that can be sequence associated are passed by raw address, and the shape mistmatch is transparent. But there are three cases of explicit and assumed-size arrays passed by descriptors: - polymorphic arguments - BIND(C) assumed-length arguments (F'2023 18.3.7 (5)). - length parametrized derived types (TBD) The callee side is expecting a descriptor containing the dummy rank and shape. This was not the case. This patch fix that by evaluating the dummy shape on the caller side using the interface (that has to be available when arguments are passed by descriptors).
Diffstat (limited to 'flang/lib/Frontend/CompilerInvocation.cpp')
0 files changed, 0 insertions, 0 deletions