[flang-commits] [flang] [Flang] Extra check for character length in pointer allocation (PR #95145)
Peter Klausler via flang-commits
flang-commits at lists.llvm.org
Thu Jun 13 08:30:00 PDT 2024
================
@@ -418,14 +418,17 @@ static bool HaveCompatibleTypeParameters(
}
}
-static bool HaveCompatibleLengths(
- const DeclTypeSpec &type1, const DeclTypeSpec &type2) {
+static bool HaveCompatibleLengths(const DeclTypeSpec &type1,
+ const DeclTypeSpec &type2, const Symbol &symbol) {
if (type1.category() == DeclTypeSpec::Character &&
type2.category() == DeclTypeSpec::Character) {
auto v1{
evaluate::ToInt64(type1.characterTypeSpec().length().GetExplicit())};
auto v2{
evaluate::ToInt64(type2.characterTypeSpec().length().GetExplicit())};
+ if (!type1.characterTypeSpec().length().isDeferred() && IsPointer(symbol) &&
+ !v1 && v2)
----------------
klausler wrote:
Always use braces in the modern C++ bits of f18.
https://github.com/llvm/llvm-project/pull/95145
More information about the flang-commits
mailing list