Development issueshttps://develop.openfoam.com/groups/Development/-/issues2018-05-29T05:39:48Zhttps://develop.openfoam.com/Development/openfoam/-/issues/395HashPtrTable has problems with null pointers2018-05-29T05:39:48ZMark OLESENHashPtrTable has problems with null pointersOk to store null pointers in a HashPtrTable, but the copy operations cause issues.Ok to store null pointers in a HashPtrTable, but the copy operations cause issues.Version v1706Mark OLESENMark OLESENhttps://develop.openfoam.com/Development/openfoam/-/issues/1064HashTable accept only word keys2018-11-06T21:47:07ZAdminHashTable accept only word keysHello,
recently I tried to compile a program that compiles properly under OpenFOAM 6. In OpenFOAM V 1806 the compilation fails because of problems with the hash table used( the program uses label keys.
Why it doesn't support that?Hello,
recently I tried to compile a program that compiles properly under OpenFOAM 6. In OpenFOAM V 1806 the compilation fails because of problems with the hash table used( the program uses label keys.
Why it doesn't support that?https://develop.openfoam.com/Development/openfoam/-/issues/1766HashTable completely broken in OF-v20062020-07-10T07:37:29ZVasu JaganathHashTable completely broken in OF-v2006`HashTable<vector, label> testHash;
testHash.insert(1,vector(0,2,1));
`
when I compile this, I get the following error
error: function "Foam::string::hash::operator()" cannot be called with the given argument list
argume...`HashTable<vector, label> testHash;
testHash.insert(1,vector(0,2,1));
`
when I compile this, I get the following error
error: function "Foam::string::hash::operator()" cannot be called with the given argument list
argument types are: (const Foam::label)
object type is: Foam::string::hash
return Hash()(key) & (capacity_ - 1);
I am using the exact syntax recommended in the API and as it worked in OF-6 and below.
https://www.openfoam.com/documentation/guides/latest/api/classFoam_1_1HashTable.htmlMark OLESENMark OLESENhttps://develop.openfoam.com/Development/openfoam/-/issues/143heatTransfer/chtMultiRegionFoam/externalSolarLoad/2019-09-20T13:24:55ZMattijs Janssens4-Mattijs@users.noreply.develop.openfoam.comheatTransfer/chtMultiRegionFoam/externalSolarLoad/Has writeInterval 800 but runs for 18000 iterations so last dump is 17600.
Has writeInterval 800 but runs for 18000 iterations so last dump is 17600.
https://develop.openfoam.com/Development/openfoam/-/issues/2554holding reference to copy2022-09-09T12:10:37ZMattijs Janssens4-Mattijs@users.noreply.develop.openfoam.comholding reference to copy<!--
*** Please read this first! ***
Before opening a new issue, make sure to search for keywords in the issues
filtered by the "bug" label and check to see if it has already been reported
You can see how your report will be re...<!--
*** Please read this first! ***
Before opening a new issue, make sure to search for keywords in the issues
filtered by the "bug" label and check to see if it has already been reported
You can see how your report will be rendered on the platform by using the
"preview" tab above
-->
<!--
All text between these markers are comments and will not be present in the
report
-->
### Summary
<!-- Summarize the bug encountered concisely -->
Holding reference to e.g. HashTable<>::sortedToc
### Environment information
<!--
Providing details of your set-up can help us identify any issues, e.g.
OpenFOAM version : v2206|v2112|v2106|v2012|v2006 etc
Operating system : ubuntu|openSUSE|centos etc
Hardware info : any info that may help?
Compiler : gcc|intel|clang etc
-->
- OpenFOAM version : v2206
### Possible fixes
<!--
If you can, link to the line of code that might be responsible for the
problem
The "/label ~bug" text is a gitlab flag that will add the "bug" label to this
issue
-->
Do not hold reference.Mattijs Janssens4-Mattijs@users.noreply.develop.openfoam.comMattijs Janssens4-Mattijs@users.noreply.develop.openfoam.comhttps://develop.openfoam.com/Development/openfoam/-/issues/1398Holes are detected in wrong places by the overset algorithm in ``twoSimpleRot...2020-03-13T13:18:30ZAdminHoles are detected in wrong places by the overset algorithm in ``twoSimpleRotors`` tutorial<!--
*** Please read this first! ***
Before opening a new issue, make sure to search for keywords in the issues
filtered by the "bug" label and check to see if it has already been reported
You can see how your report will be ...<!--
*** Please read this first! ***
Before opening a new issue, make sure to search for keywords in the issues
filtered by the "bug" label and check to see if it has already been reported
You can see how your report will be rendered on the platform by using the
"preview" tab above
-->
<!--
All text between these markers are comments and will not be present in the
report
-->
### Summary
The overset algorithm detects the wrong ``cellType``. Basically, it marks some cells as holes when the interpolated cells are near the wall.
### Steps to reproduce
Run the ``twoSimpleRotors`` tutorial for few time steps and visualize the ``cellType`` in paraview.
### Example case
<!--
If possible, please create a SMALL example and attach it to your report
If you are using an older version of OpenFOAM this will also determine
whether the bug has been fixed in a more recent version
-->
Run the ``twoSimpleRotors`` there are no modifications needed to produce this issue.
### What is the current *bug* behaviour?
<!-- What actually happens -->
Holes are detected in wrong places which leads to zero velocity.
### What is the expected *correct* behavior?
<!-- What you should see instead -->
It should be as shown in the [user guide](https://vimeo.com/223790883)
<figure class="video_container">
<iframe src="https://vimeo.com/223790883" frameborder="0" allowfullscreen="true"> </iframe>
</figure>
### Relevant logs and/or images
<!--
Paste any relevant logs - please use code blocks (```) to format console
output, logs, and code as it's very hard to read otherwise.
-->
Here are a collection of six snapshots for ``cellType`` field and two for the velocity field;
* t1
![test1](/uploads/b9a856a0ec9c7ae2e9aa344dd65967af/test1.png)
* t2
![test2](/uploads/51b676d235e83d1b2408bbbf16554878/test2.png)
* t3
![test3](/uploads/5acea4afaac26fe6c6f84f95c13725cb/test3.png)
* t3, velocity field
![test3_U](/uploads/ef1e0494e59b8b4639e4c822bd4fc161/test3_U.png)
* t4
![test4](/uploads/f7e421478a1bfd85a0ed1179f5e9f105/test4.png)
* t5
![test5](/uploads/22ce12218f32cda2fd635eecab93d7bd/test5.png)
* t6
![test6](/uploads/556d2b871a61c616682bfb8bd6c477a8/test6.png)
* t6, velocity field
![test6_U](/uploads/10967ca1af7694e5edfff0f7b9bf7efa/test6_U.png)
### Environment information
<!--
Providing details of your set-up can help us identify any issues, e.g.
OpenFOAM version : v1806|v1812|v1906 etc
Operating system : ubuntu|openSUSE|centos etc
Hardware info : any info that may help?
Compiler : gcc|intel|clang etc
-->
- OpenFOAM version : v1906
- Operating system : ubuntu 18.04LTS WSL on Win10
- Hardware info :
- Compiler : gcc
### Possible fixes
<!--
If you can, link to the line of code that might be responsible for the
problem
The "/label ~bug" text is a gitlab flag that will add the "bug" label to this
issue
-->
I'm not sure but it seems that this issue didn't exist for the version you used to produce the video attached above.
## Reattaching the author to the issue ticket: @hikassem ##https://develop.openfoam.com/Development/openfoam/-/issues/55hopperInitialState tutorial fails2016-01-13T17:18:14ZMattijs Janssens4-Mattijs@users.noreply.develop.openfoam.comhopperInitialState tutorial failsRunning hopper tutorial in tutorialsTest gives failure on hopperInitialState[log.icoUncoupledKinematicParcelFoam](/uploads/8122f605379f02253f131f5a64e3d8c5/log.icoUncoupledKinematicParcelFoam)
Running hopper tutorial in tutorialsTest gives failure on hopperInitialState[log.icoUncoupledKinematicParcelFoam](/uploads/8122f605379f02253f131f5a64e3d8c5/log.icoUncoupledKinematicParcelFoam)
https://develop.openfoam.com/Development/openfoam/-/issues/1565How to control foamyQuadMesh bounding box?2020-01-21T08:52:56ZkilaHow to control foamyQuadMesh bounding box?Recently I'm playing with foamyQuadMesh. And I have a problem that my stl file contains a simple closed circle and their coordinates are **below 0.003**. However after using foamyQuadMesh, it automatically insert some points outside circ...Recently I'm playing with foamyQuadMesh. And I have a problem that my stl file contains a simple closed circle and their coordinates are **below 0.003**. However after using foamyQuadMesh, it automatically insert some points outside circle region. And it give a bounding box:
boundingBox : (-1.06e-01 -1.05e-01 0.00e+00) (1.10e-01 1.15e-01 0.00e+00)
The maximum x coordinate is **about 0.01** which is triple of maximum x coordinate of my circle so that the final MeshedSurface.obj looks very strange.
My foamyQuadMeshDict looks like:
-----------------------------
geometry
{
OutletPartSurface.stl
{
name outlet;
type closedTriSurfaceMesh;
}
}
surfaceConformation
{
// The z-coordinate of the plane is taken from here.
locationInMesh (0 0 0);
pointPairDistanceCoeff 0.1;
minEdgeLenCoeff 0.1;
maxNotchLenCoeff 1.0;
minNearPointDistCoeff 0.1;
maxQuadAngle 120;
// Insert near-boundary point mirror or point-pairs
insertSurfaceNearestPointPairs yes;
// Mirror near-boundary points rather than insert point-pairs
mirrorPoints no;
// Insert point-pairs vor dual-cell vertices very near the surface
insertSurfaceNearPointPairs yes;
// Maximum number of iterations used in boundaryConform.
maxBoundaryConformingIter 5;
geometryToConformTo
{
outlet
{
featureMethod extendedFeatureEdgeMesh;
extendedFeatureEdgeMesh "OutletPartSurface.extendedFeatureEdgeMesh";
}
}
additionalFeatures
{}
// Choose if to randomise the initial grid created by insertGrid.
randomiseInitialGrid no;
// Perturbation fraction, 1 = cell-size.
randomPerturbation 0.1;
}
motionControl
{
// This is a tolerance for determining whether to deal with surface
// protrusions or not.
minCellSize 0.0001;
// Assign a priority to all requests for cell sizes, the highest overrules.
defaultPriority 0;
shapeControlFunctions
{
}
relaxationModel adaptiveLinear;
adaptiveLinearCoeffs
{
relaxationStart 0.5;
relaxationEnd 0.0;
}
objOutput no;
meshedSurfaceOutput yes;
// Near-wall region where cells are aligned with the wall specified as a
// number of cell layers
nearWallAlignedDist 3;
}
shortEdgeFilter
{
// Factor to multiply the average of a face's edge lengths by.
// If an edge of that face is smaller than that value then delete it.
shortEdgeFilterFactor 0.2;
// Weighting for the lengths of edges that are attached to the boundaries.
// Used when calculating the length of an edge. Default 2.0.
edgeAttachedToBoundaryFactor 2.0;
}
extrusion
{
extrude off;
#include "extrude2DMeshDict"
}
---------------------------
OutletPartSurface is my stl file that contains a circle. First I use surfaceFeatureExtract to create "OutletPartSurface.extendedFeatureEdgeMesh". As my circle is very small, I set **minCellSize 0.0001;** which is about 0.1 mm.
I have attach a minimum sample to reproduce this problem.
I'm using v1912.
[foamycircle.rar](/uploads/33546ec93da9f4a16d3c934a2c82c570/foamycircle.rar)https://develop.openfoam.com/Development/openfoam/-/issues/599How to install Openfoam2.3.0 in Ubuntu16.04 Xenial?2017-09-28T06:51:53ZAdminHow to install Openfoam2.3.0 in Ubuntu16.04 Xenial?Hello,
I know that Openfoam2.3.1 is available for Ubuntu14 (trusty). Is there a way to install Openfoam2.3.1 on Ubuntu16.04 (Xenial)?
Best Regards,Hello,
I know that Openfoam2.3.1 is available for Ubuntu14 (trusty). Is there a way to install Openfoam2.3.1 on Ubuntu16.04 (Xenial)?
Best Regards,https://develop.openfoam.com/Development/openfoam/-/issues/2474How to replicate the results of turbulent flow over NACA0012 airfoil (2D)2022-05-18T15:08:53ZhongweiHow to replicate the results of turbulent flow over NACA0012 airfoil (2D)Dear all,
I am trying to replicate the results of the validation case -- [Turbulent flow over NACA0012 airfoil (2D)](https://www.openfoam.com/documentation/guides/latest/doc/verification-validation-naca0012-airfoil-2d.html). However, I ...Dear all,
I am trying to replicate the results of the validation case -- [Turbulent flow over NACA0012 airfoil (2D)](https://www.openfoam.com/documentation/guides/latest/doc/verification-validation-naca0012-airfoil-2d.html). However, I failed to convert the mesh using `plot3dToFoam`. I find some [discussions](https://www.cfd-online.com/Forums/openfoam-solving/118148-2d-naca-0012-airfoil-validation-case-nasa-2.html) about this issue. I followed the guides but still failed to run the case.
Could you give me some suggestions, please? The attached [airFoil2D.zip](/uploads/3355892a53d8bba6fd1cb37ff8446b4f/airFoil2D.zip) file is the whole case.
OpenFOAM version: v2012
OS version: Ubuntu 20.04
Thank you for your help.https://develop.openfoam.com/Development/openfoam/-/issues/1669How to use Rans Results as an initial solution for LES calculation under Open...2020-04-13T16:00:11ZTENE HEDJE patrickHow to use Rans Results as an initial solution for LES calculation under OpenfoamI performed RANS calculations with simpleFoam and K-omega SST as a turbulence model, and, I want to use the obtained converged result as the initial solution for the LES calculation.
I did a first try, I used only the RANS P and U solut...I performed RANS calculations with simpleFoam and K-omega SST as a turbulence model, and, I want to use the obtained converged result as the initial solution for the LES calculation.
I did a first try, I used only the RANS P and U solutions while for k, nut and nuTilda I put initial conditions as indicated in the tutorial : tutorials\incompressible\pimpleFoam\LES\channel395
the problem is that it runs as if the results were converged, I have for example lines with 0 iterations as below
Courant Number mean: 1.57492e-05 max: 0.200074
deltaT = 1.57492e-08
Time = 5000
smoothSolver: Solving for Ux, Initial residual = 1.97659e-09, Final residual = 1.97659e-09, No terations 0
smoothSolver: Solving for Uy, Initial residual = 6.373e-09, Final residual = 6.373e-09, No Iterations 0
smoothSolver: Solving for Uz, Initial residual = 6.87469e-08, Final residual = 6.87469e-08, No Iterations 0
GAMG: Solving for p, Initial residual = 0.000502593, Final residual = 5.01657e-05, No Iterations 608
time step continuity errors : sum local = 4.97769e-17, global = 8.82671e-20, cumulative = 1.2001e-13
GAMG: Solving for p, Initial residual = 0.000805539, Final residual = 4.7532e-06, No Iterations 1000
time step continuity errors : sum local = 4.7178e-18, global = 1.59872e-19, cumulative = 1.2001e-13
smoothSolver: Solving for k, Initial residual = 3.33989e-06, Final residual = 3.33989e-06, No Iterations 0
ExecutionTime = 49262.5 s ClockTime = 49362 s
@timofeymukhahttps://develop.openfoam.com/Development/openfoam/-/issues/1698Hyperlink Not Right: Readme of Tutorial "Steady flow over a 2D backward facin...2020-06-12T09:03:58ZHello WorldHyperlink Not Right: Readme of Tutorial "Steady flow over a 2D backward facing step"There is a link at openfoam/tutorials/incompressible/simpleFoam/backwardFacingStep2D/README
openfoam.com/documentation/cpp-guide/html/verification-validation-turbulent-backward-facing-step.html
This link does not work.There is a link at openfoam/tutorials/incompressible/simpleFoam/backwardFacingStep2D/README
openfoam.com/documentation/cpp-guide/html/verification-validation-turbulent-backward-facing-step.html
This link does not work.Kutalmış BerçinKutalmış Berçinhttps://develop.openfoam.com/Development/openfoam/-/issues/1487I can't compile my own solver: illegal instruction constexpr v19062020-03-13T13:10:15ZAdminI can't compile my own solver: illegal instruction constexpr v1906Hi everyone, I'm trying to compile my own solver in Windows 10, Ubuntu 18.04 but i can't.
The error is " illegal instruction constexpr..."
I've seeing this post: https://develop.openfoam.com/Development/OpenFOAM-plus/issues/938
and when...Hi everyone, I'm trying to compile my own solver in Windows 10, Ubuntu 18.04 but i can't.
The error is " illegal instruction constexpr..."
I've seeing this post: https://develop.openfoam.com/Development/OpenFOAM-plus/issues/938
and when I modify the etc/bashrc file:
# [WM_COMPILER_TYPE] - Compiler location:
# = system | ThirdParty
export WM_COMPILER_TYPE=system
# [WM_COMPILER] - Compiler:
# = Gcc | Gcc4[8-9] | Gcc5[1-5] | Gcc6[1-5] | Gcc7[1-4] | Gcc8[12] |
# Clang | Clang3[7-9] | Clang[4-6]0 | Icc | Cray | Arm | Pgi
export WM_COMPILER=Gcc
(or export WM_COMPILER=Gcc74)
the ubuntu shell says "No completion added for /opt/OpenFOAM/OpenFOAM-v1906/platforms/linux64Gcc73DPInt32Opt/bin
... incorrect platform, or not yet compiled?"
What should I do to fix this?
Thanks,
\## Reattaching the author to the issue ticket: @RoderickZ ##https://develop.openfoam.com/Development/openfoam/-/issues/2962icoFoam fails to install on CentOS 7.8 installation2023-08-18T07:48:03ZTom LehmannicoFoam fails to install on CentOS 7.8 installation<!--
*** Please read this first! ***
Before opening a new issue, make sure to search for keywords in the issues
filtered by the "bug" label and check to see if it has already been reported
You can see how your report will be re...<!--
*** Please read this first! ***
Before opening a new issue, make sure to search for keywords in the issues
filtered by the "bug" label and check to see if it has already been reported
You can see how your report will be rendered on the platform by using the
"preview" tab above
-->
<!--
All text between these markers are comments and will not be present in the
report
-->
### Summary
<!-- Summarize the bug encountered concisely -->
### Steps to reproduce
<!-- How one can reproduce the issue - this is very important -->
### Example case
<!--
If possible, please create a SMALL example and attach it to your report
If you are using an older version of OpenFOAM this will also determine
whether the bug has been fixed in a more recent version
-->
### What is the current *bug* behaviour?
<!-- What actually happens -->
### What is the expected *correct* behavior?
<!-- What you should see instead -->
### Relevant logs and/or images
<!--
Paste any relevant logs - please use code blocks (```) to format console
output, logs, and code as it's very hard to read otherwise.
-->
### Environment information
<!--
Providing details of your set-up can help us identify any issues, e.g.
OpenFOAM version : v2306|v2212|v2206|v2112|v2106 etc
Operating system : ubuntu|openSUSE|centos etc
Hardware info : any info that may help?
Compiler : gcc|intel|clang etc
-->
- OpenFOAM version :
- Operating system :
- Hardware info :
- Compiler :
### Possible fixes
<!--
If you can, link to the line of code that might be responsible for the
problem
The "/label ~bug" text is a gitlab flag that will add the "bug" label to this
issue
-->https://develop.openfoam.com/Development/openfoam/-/issues/1000icoReactingMultiPhaseInterFoam multicomponent gas phase with vapour condensation2021-07-06T13:17:13ZAdminicoReactingMultiPhaseInterFoam multicomponent gas phase with vapour condensationThe kinetic gas description says the parameter C if set less than 0 will model condensation. I am trying to have such a case. I take the tutorial evaporationMultiComponent and initialize the gas phase with half vapour and half air. I set...The kinetic gas description says the parameter C if set less than 0 will model condensation. I am trying to have such a case. I take the tutorial evaporationMultiComponent and initialize the gas phase with half vapour and half air. I set the temperature a boundary quite low to have condensation. I cannot see the transfer of vapour to liquid. I have attached the test case as well.[evaporationAndCondensationMultiComponent.tar](/uploads/cac71b3fd7f0ce3f47038eed87c4c386/evaporationAndCondensationMultiComponent.tar)
\## Reattaching the author to the issue ticket: @aqeelahmed ##https://develop.openfoam.com/Development/openfoam/-/issues/2228icoReactingMultiphaseInterFoam - wrong link to surfaceTensionModel2022-05-11T09:59:10ZMartin HeinrichicoReactingMultiphaseInterFoam - wrong link to surfaceTensionModel### Summary
`icoReactingMultiphaseInterFoam` links with the surfaceTensionModel from `src/transportModels/interfaceProperties/surfaceTensionModels` instead the one from the phaseSystem library located in `src/phaseSystemModels/multiphas...### Summary
`icoReactingMultiphaseInterFoam` links with the surfaceTensionModel from `src/transportModels/interfaceProperties/surfaceTensionModels` instead the one from the phaseSystem library located in `src/phaseSystemModels/multiphaseInter/phasesSystem/interfaceModels/surfaceTensionModels `.
As a result, the `type` keyword in the `phaseProperties` file for specifying the surfaceTensionModel is not read by the solver, the setting has no influence. Only the sigma value is needed. Furthermore, one cannot simply create a new surfaceTensionModel in the `phasesSystem` library as one has to use the `interfaceProperties` library from transportModels.
The developers are also aware of this issue. Looking at `Make/file` in the phasesSystem library reveals the following lines:
```
/* Ununsed? */
/*
surfaceTension = interfaceModels/surfaceTensionModels
$(surfaceTension)/surfaceTensionModel/surfaceTensionModel.C
$(surfaceTension)/constantSurfaceTensionCoefficient/constantSurfaceTensionCoefficient.C
*/
```
So the surfaceTensionModels are not even compiled. Unfortunately, simply uncommenting those lines and removing the links to the `src/transportModels/interfaceProperties` does result in other errors during compilation.
### How should it behave?
The correct surfaceTensionModels from `src/phaseSystemModels/multiphaseInter/phasesSystem/interfaceModels` should be used for `icoReactingMultiphaseInterFoam` for easier maintenance and extension of existing surfaceTensionModels.
### Environment information
- OpenFOAM version : v2106
- Operating system : Debian 10
- Compiler : Gcc 9.1.0Kutalmış BerçinKutalmış Berçinhttps://develop.openfoam.com/Development/openfoam/-/issues/2194iglooWithFridges tutorial set-up2021-12-10T15:24:19ZMattijs Janssens4-Mattijs@users.noreply.develop.openfoam.comiglooWithFridges tutorial set-up<!--
*** Please read this first! ***
Before opening a new issue, make sure to search for keywords in the issues
filtered by the "bug" label and check to see if it has already been reported
You can see how your report will be re...<!--
*** Please read this first! ***
Before opening a new issue, make sure to search for keywords in the issues
filtered by the "bug" label and check to see if it has already been reported
You can see how your report will be rendered on the platform by using the
"preview" tab above
-->
<!--
All text between these markers are comments and will not be present in the
report
-->
### Summary
<!-- Summarize the bug encountered concisely -->
heatTransfer/buoyantBoussinesqSimpleFoam/iglooWithFridges tutorial contains commented out code to run in parallel with collated file format. This does not run.
### Steps to reproduce
<!-- How one can reproduce the issue - this is very important -->
Set 'parallel true' at top of script.
### What is the current *bug* behaviour?
<!-- What actually happens -->
- wrong directory ('processors' instead of 'processors2')
- reconstructParMesh run without -fileHandler collated
### Environment information
<!--
Providing details of your set-up can help us identify any issues, e.g.
OpenFOAM version : v1806|v1812|v1906|v1912|v2006|v2012|v2106 etc
Operating system : ubuntu|openSUSE|centos etc
Hardware info : any info that may help?
Compiler : gcc|intel|clang etc
-->
- OpenFOAM version : v2106Mattijs Janssens4-Mattijs@users.noreply.develop.openfoam.comMattijs Janssens4-Mattijs@users.noreply.develop.openfoam.comhttps://develop.openfoam.com/Development/openfoam/-/issues/1521IListStream scope issue with Foam::List2023-03-01T15:00:46ZOliver PerksIListStream scope issue with Foam::List<!--
*** Please read this first! ***
Before opening a new issue, make sure to search for keywords in the issues
filtered by the "bug" label and check to see if it has already been reported
You can see how your report will be ...<!--
*** Please read this first! ***
Before opening a new issue, make sure to search for keywords in the issues
filtered by the "bug" label and check to see if it has already been reported
You can see how your report will be rendered on the platform by using the
"preview" tab above
-->
<!--
All text between these markers are comments and will not be present in the
report
-->
### Summary
<!-- Summarize the bug encountered concisely -->
Scope issue with List in `IListStream.H`.
Whilst testing a new compiler release we encountered a build issue with `IListStream.H`, line 161.
The use of `List<char>&& buffer,` tries to inherit `List<char>` from `Detail::IListStreamAllocator`. However, this is a private member, and so can not be used. I believe the correct usage should be of `Foam::list`.
I have raised this with our internal compiler team, and they believe this to be a code issue rather than a compiler issue.
I believe this relates the the issue shown https://stackoverflow.com/questions/41595208/accessing-the-name-of-a-private-inherited-class-from-a-subclass
### Steps to reproduce
<!-- How one can reproduce the issue - this is very important -->
This issue was encountered when building OpenFOAM 1906 with the Arm Compiler for Linux 20.0 (LLVM 9 based). So I believe this to be an issue for Clang 9.
Simply building with the new compiler 20.0 encountered this issue - as LLVM 9 is being stricter. This was not an issue with the previous version 19.3 (LLVM 7 based) - nor GCC.
### Example case
<!--
If possible, please create a SMALL example and attach it to your report
If you are using an older version of OpenFOAM this will also determine
whether the bug has been fixed in a more recent version
-->
I have reduced the relevant files to the included MWE.
[List_20.0.tar.gz](/uploads/56f54641ce09b4bc4ac35c82c715acf5/List_20.0.tar.gz)
```
> clang++ -std=c++11 -mcpu=native -Wall -Wextra -Wold-style-cast -Wnon-virtual-dtor -Wno-unused-parameter -Wno-invalid-offsetof -Wno-undefined-var-template -Wno-unknown-warning-option -O3 -I. -fPIC -c reproducer.C
In file included from reproducer.C:1:
./IListStream.H:103:10: error: 'List' is a private member of 'Foam::List<char>'
List<char>&& buffer
^
./IListStream.H:61:5: note: constrained by private inheritance here
private List<char>
^~~~~~~~~~~~~~~~~~
./List.H:65:7: note: member is declared here
class List
^
1 error generated.
```
### What is the current *bug* behaviour?
<!-- What actually happens -->
As shown above, the attempt is made to scope `List<char>` from the wrong source - `IListStreamAllocator`.
### What is the expected *correct* behavior?
<!-- What you should see instead -->
`List<char>` should be sourced from `List.H`.
### Relevant logs and/or images
<!--
Paste any relevant logs - please use code blocks (```) to format console
output, logs, and code as it's very hard to read otherwise.
-->
### Environment information
<!--
Providing details of your set-up can help us identify any issues, e.g.
OpenFOAM version : v1806|v1812|v1906 etc
Operating system : ubuntu|openSUSE|centos etc
Hardware info : any info that may help?
Compiler : gcc|intel|clang etc
-->
- OpenFOAM version : v1906
- Operating system : RHEL 7 + 8
- Hardware info : Arm (aarch64)
- Compiler : clang 9 (armclang from Arm Compiler for Linux 20.0)
### Possible fixes
<!--
If you can, link to the line of code that might be responsible for the
problem
The "/label ~bug" text is a gitlab flag that will add the "bug" label to this
issue
-->
https://develop.openfoam.com/Development/openfoam/blob/master/src/OpenFOAM/db/IOstreams/memory/IListStream.H#L161
Before:
`List<char>&& buffer,`
After:
`Foam::List<char>&& buffer,`Mark OLESENMark OLESENhttps://develop.openfoam.com/Development/openfoam/-/issues/938illegal instruction constexpr v1712 v18062019-11-09T15:21:15ZAdminillegal instruction constexpr v1712 v1806Trying to compile a new solver on windows 10 bash with ubuntu. Compiler returns an error saying illegal instruction constexpr. This has occurred on versions 1712 and 1806 in the header file floatScalar.H. I believe it has been a repeated...Trying to compile a new solver on windows 10 bash with ubuntu. Compiler returns an error saying illegal instruction constexpr. This has occurred on versions 1712 and 1806 in the header file floatScalar.H. I believe it has been a repeated issue from what I have seen on the forums so others will probably be able to provide more information. I don't know if this is a version issue because I updated all my compilers. I only come because the only solution I have seen found to this anywhere is revert to OF5. I have seen this exact issue reported on v1706 as well.Mark OLESENMark OLESENhttps://develop.openfoam.com/Development/openfoam/-/issues/1172imperfect restart for turbulence cases2021-07-06T15:18:47ZMattijs Janssens4-Mattijs@users.noreply.develop.openfoam.comimperfect restart for turbulence casesRun for lots of iterations; restart from intermediate dump; results are not identical
[pitzDaily_latest.tgz](/uploads/e249c4d403dbb55ae5c866ecb8444e83/pitzDaily_latest.tgz)Run for lots of iterations; restart from intermediate dump; results are not identical
[pitzDaily_latest.tgz](/uploads/e249c4d403dbb55ae5c866ecb8444e83/pitzDaily_latest.tgz)Mattijs Janssens4-Mattijs@users.noreply.develop.openfoam.comMattijs Janssens4-Mattijs@users.noreply.develop.openfoam.com