[PATCH] D97724: [flang][driver] Fix -fdefault* family bug
Andrzej Warzynski via Phabricator via llvm-commits
llvm-commits at lists.llvm.org
Tue Mar 2 09:44:25 PST 2021
This revision was landed with ongoing or failed builds.
This revision was automatically updated to reflect the committed changes.
Closed by commit rG563ea45052bd: [flang][driver] Fix -fdefault* family bug (authored by arnamoy10, committed by awarzynski).
Changed prior to commit:
https://reviews.llvm.org/D97724?vs=327432&id=327490#toc
Repository:
rG LLVM Github Monorepo
CHANGES SINCE LAST ACTION
https://reviews.llvm.org/D97724/new/
https://reviews.llvm.org/D97724
Files:
flang/tools/f18/f18.cpp
Index: flang/tools/f18/f18.cpp
===================================================================
--- flang/tools/f18/f18.cpp
+++ flang/tools/f18/f18.cpp
@@ -102,6 +102,7 @@
bool dumpSymbols{false};
bool debugNoSemantics{false};
bool debugModuleWriter{false};
+ bool defaultReal8{false};
bool measureTree{false};
bool unparseTypedExprsToF18_FC{false};
std::vector<std::string> F18_FCArgs;
@@ -563,10 +564,20 @@
}
} else if (arg.substr(0, 2) == "-U") {
predefinitions.emplace_back(arg.substr(2), std::optional<std::string>{});
- } else if (arg == "-fdefault-double-8") {
- defaultKinds.set_defaultRealKind(4);
} else if (arg == "-r8" || arg == "-fdefault-real-8") {
+ driver.defaultReal8 = true;
defaultKinds.set_defaultRealKind(8);
+ defaultKinds.set_doublePrecisionKind(16);
+ } else if (arg == "-fdefault-double-8") {
+ if (!driver.defaultReal8) {
+ // -fdefault-double-8 has to be used with -fdefault-real-8
+ // to be compatible with gfortran. See:
+ // https://gcc.gnu.org/onlinedocs/gfortran/Fortran-Dialect-Options.html
+ llvm::errs()
+ << "Use of `-fdefault-double-8` requires `-fdefault-real-8`\n";
+ return EXIT_FAILURE;
+ }
+ defaultKinds.set_doublePrecisionKind(8);
} else if (arg == "-i8" || arg == "-fdefault-integer-8") {
defaultKinds.set_defaultIntegerKind(8);
defaultKinds.set_subscriptIntegerKind(8);
-------------- next part --------------
A non-text attachment was scrubbed...
Name: D97724.327490.patch
Type: text/x-patch
Size: 1471 bytes
Desc: not available
URL: <http://lists.llvm.org/pipermail/llvm-commits/attachments/20210302/278d77f6/attachment.bin>
More information about the llvm-commits
mailing list