summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--lib/spack/spack/solver/concretize.lp9
1 files changed, 6 insertions, 3 deletions
diff --git a/lib/spack/spack/solver/concretize.lp b/lib/spack/spack/solver/concretize.lp
index f1126f9fb0..307a8719a8 100644
--- a/lib/spack/spack/solver/concretize.lp
+++ b/lib/spack/spack/solver/concretize.lp
@@ -1148,12 +1148,15 @@ error(100, "Compiler {1}@{2} requested for {0} cannot be found. Set install_miss
% propagate flags when compiler match
can_inherit_flags(PackageNode, DependencyNode, FlagType)
+ :- same_compiler(PackageNode, DependencyNode),
+ not attr("node_flag_set", DependencyNode, FlagType, _),
+ flag_type(FlagType).
+
+same_compiler(PackageNode, DependencyNode)
:- depends_on(PackageNode, DependencyNode),
node_compiler(PackageNode, CompilerID),
node_compiler(DependencyNode, CompilerID),
- not attr("node_flag_set", DependencyNode, FlagType, _),
- compiler_id(CompilerID),
- flag_type(FlagType).
+ compiler_id(CompilerID).
node_flag_inherited(DependencyNode, FlagType, Flag)
:- attr("node_flag_set", PackageNode, FlagType, Flag),