From 719d3f77bea23bbdb9c530ee2dde09383f03bc71 Mon Sep 17 00:00:00 2001 From: Mark Olesen <Mark.Olesen@esi-group.com> Date: Tue, 1 Sep 2020 09:32:13 +0200 Subject: [PATCH] COMP: Intel compiler bug with inheriting constructors (fixes #1821) - the compiler reports Internal error loop: assertion failed: find_seq_in_lookup_table: seq_number not found (shared/cfe/edgcpfe/il.c, line 4118) Seems to be the same as the bug report https://community.intel.com/t5/Intel-C-Compiler/Internal-error-loop-assertion-failed-find-seq-in-lookup-table/td-p/1087603 This _should_ be fixed in icc 17.0 update 1, but appears to have struck here as well. - workaround: explicitly construct member elements. --- .../cylinder/cylinderImplicitFunction.C | 13 ++++++------- .../implicitFunctions/sin/sinImplicitFunction.C | 16 +++++++--------- 2 files changed, 13 insertions(+), 16 deletions(-) diff --git a/applications/utilities/preProcessing/setAlphaField/alphaFieldFunctions/implicitFunctions/cylinder/cylinderImplicitFunction.C b/applications/utilities/preProcessing/setAlphaField/alphaFieldFunctions/implicitFunctions/cylinder/cylinderImplicitFunction.C index 909087e4732..1c68b7fef22 100644 --- a/applications/utilities/preProcessing/setAlphaField/alphaFieldFunctions/implicitFunctions/cylinder/cylinderImplicitFunction.C +++ b/applications/utilities/preProcessing/setAlphaField/alphaFieldFunctions/implicitFunctions/cylinder/cylinderImplicitFunction.C @@ -69,13 +69,12 @@ Foam::implicitFunctions::cylinderImplicitFunction::cylinderImplicitFunction const dictionary& dict ) : - cylinderImplicitFunction - ( - dict.get<point>("origin"), - dict.get<scalar>("radius"), - dict.getOrDefault<scalar>("scale", 1), - dict.get<vector>("direction") - ) + // __INTEL_COMPILER bug with inheriting constructors?? (issue #1821) + origin_(dict.get<point>("origin")), + radius_(dict.get<scalar>("radius")), + scale_(dict.getOrDefault<scalar>("scale", 1)), + direction_(dict.get<vector>("direction").normalise()), + project_(tensor::I - direction_*direction_) // outer product {} diff --git a/applications/utilities/preProcessing/setAlphaField/alphaFieldFunctions/implicitFunctions/sin/sinImplicitFunction.C b/applications/utilities/preProcessing/setAlphaField/alphaFieldFunctions/implicitFunctions/sin/sinImplicitFunction.C index a193d2b663b..4256baad94b 100644 --- a/applications/utilities/preProcessing/setAlphaField/alphaFieldFunctions/implicitFunctions/sin/sinImplicitFunction.C +++ b/applications/utilities/preProcessing/setAlphaField/alphaFieldFunctions/implicitFunctions/sin/sinImplicitFunction.C @@ -72,15 +72,13 @@ Foam::implicitFunctions::sinImplicitFunction::sinImplicitFunction const dictionary& dict ) : - sinImplicitFunction - ( - dict.get<scalar>("period"), - dict.getOrDefault<scalar>("phase", 0), - dict.get<scalar>("amplitude"), - dict.get<vector>("direction"), - dict.get<vector>("up"), - dict.get<vector>("origin") - ) + // __INTEL_COMPILER bug with inheriting constructors?? (issue #1821) + period_(dict.get<scalar>("period")), + phase_(dict.getOrDefault<scalar>("phase", 0)), + amplitude_(dict.get<scalar>("amplitude")), + up_(dict.get<vector>("up").normalise()), + direction_(dict.get<vector>("direction").normalise()), + origin_(dict.get<vector>("origin")) {} -- GitLab