From 3f19e9033e5b6331fa46091f36cd90ab26861259 Mon Sep 17 00:00:00 2001
From: mattijs <mattijs>
Date: Tue, 18 Jun 2024 17:56:45 +0100
Subject: [PATCH] COMP: finiteArea: dangling reference warning

---
 .../leastSquaresFaGrad/leastSquaresFaGrad.C   | 21 +++++++------------
 .../edgeInterpolationScheme.C                 |  4 ++--
 2 files changed, 9 insertions(+), 16 deletions(-)

diff --git a/src/finiteArea/finiteArea/gradSchemes/leastSquaresFaGrad/leastSquaresFaGrad.C b/src/finiteArea/finiteArea/gradSchemes/leastSquaresFaGrad/leastSquaresFaGrad.C
index 2ddcae501a8..963426c6fee 100644
--- a/src/finiteArea/finiteArea/gradSchemes/leastSquaresFaGrad/leastSquaresFaGrad.C
+++ b/src/finiteArea/finiteArea/gradSchemes/leastSquaresFaGrad/leastSquaresFaGrad.C
@@ -105,20 +105,13 @@ leastSquaresFaGrad<Type>::calcGrad
     {
         const faPatchField<Type>& bf = vsf.boundaryField()[patchi];
 
-        //const Field<Type>& vsfp =
-        //(
-        //    bf.coupled()
-        //  ? bf.patchNeighbourField().cref()
-        //  : const_cast<faPatchField<Type>&>(bf)
-        //);
-
-        const tmp<Field<Type>> tvsfp
-        (
-            bf.coupled()
-          ? bf.patchNeighbourField()
-          : bf
-        );
-        const Field<Type>& vsfp = tvsfp();
+        tmp<Field<Type>> tvsfp(bf);
+
+        if (bf.coupled())
+        {
+            tvsfp = bf.patchNeighbourField();
+        }
+        const auto& vsfp = tvsfp();
 
         const faePatchVectorField& ownLsp = ownLs.boundaryField()[patchi];
         const labelUList& edgeFaces =
diff --git a/src/finiteArea/interpolation/edgeInterpolation/edgeInterpolationScheme/edgeInterpolationScheme.C b/src/finiteArea/interpolation/edgeInterpolation/edgeInterpolationScheme/edgeInterpolationScheme.C
index 5d4ead9d021..d84b52730fb 100644
--- a/src/finiteArea/interpolation/edgeInterpolation/edgeInterpolationScheme/edgeInterpolationScheme.C
+++ b/src/finiteArea/interpolation/edgeInterpolation/edgeInterpolationScheme/edgeInterpolationScheme.C
@@ -209,8 +209,8 @@ Foam::edgeInterpolationScheme<Type>::interpolate
             label size = vf.boundaryField()[pi].patch().size();
             label start = vf.boundaryField()[pi].patch().start();
 
-            Field<Type> pOwnVf = vf.boundaryField()[pi].patchInternalField();
-            Field<Type> pNgbVf = vf.boundaryField()[pi].patchNeighbourField();
+            Field<Type> pOwnVf(vf.boundaryField()[pi].patchInternalField());
+            Field<Type> pNgbVf(vf.boundaryField()[pi].patchNeighbourField());
 
             Field<Type>& pSf = sf.boundaryFieldRef()[pi];
 
-- 
GitLab