aboutsummaryrefslogtreecommitdiff
path: root/flang/lib/Frontend/CompilerInvocation.cpp
diff options
context:
space:
mode:
authorDavid Truby <david@truby.dev>2023-06-22 13:52:37 +0100
committerDavid Truby <david@truby.dev>2023-06-22 16:21:09 +0100
commitb81c5070d5451af127b2c9c2ae362ba1b0a96c01 (patch)
tree568811dec05baecccf325cbf5a60ce193d4cbb6b /flang/lib/Frontend/CompilerInvocation.cpp
parentf146763e0788f84de227623d87adccd5890ecdc6 (diff)
downloadllvm-b81c5070d5451af127b2c9c2ae362ba1b0a96c01.zip
llvm-b81c5070d5451af127b2c9c2ae362ba1b0a96c01.tar.gz
llvm-b81c5070d5451af127b2c9c2ae362ba1b0a96c01.tar.bz2
[flang] add -flang-experimental-polymorphism flag to flang-new
This flag enables Fortran 2003 polymorphism. It is marked experimental and not included in --help. Reviewed By: tblah, awarzynski Differential Revision: https://reviews.llvm.org/D153281
Diffstat (limited to 'flang/lib/Frontend/CompilerInvocation.cpp')
-rw-r--r--flang/lib/Frontend/CompilerInvocation.cpp4
1 files changed, 4 insertions, 0 deletions
diff --git a/flang/lib/Frontend/CompilerInvocation.cpp b/flang/lib/Frontend/CompilerInvocation.cpp
index 610f60c..f8a075c 100644
--- a/flang/lib/Frontend/CompilerInvocation.cpp
+++ b/flang/lib/Frontend/CompilerInvocation.cpp
@@ -920,6 +920,10 @@ bool CompilerInvocation::createFromArgs(
res.loweringOpts.setLowerToHighLevelFIR(true);
}
+ if (args.hasArg(clang::driver::options::OPT_flang_experimental_polymorphism)) {
+ res.loweringOpts.setPolymorphicTypeImpl(true);
+ }
+
success &= parseFrontendArgs(res.getFrontendOpts(), args, diags);
parseTargetArgs(res.getTargetOpts(), args);
parsePreprocessorArgs(res.getPreprocessorOpts(), args);