From 01c1c4b03a5fbc23d34b032a0c7e2832ec853161 Mon Sep 17 00:00:00 2001 From: Jan Travnicek <Jan.Travnicek@fit.cvut.cz> Date: Wed, 20 Sep 2017 14:10:13 +0200 Subject: [PATCH] +correctness check of nonlinear bar notation --- alib2data/src/tree/ranked/PrefixRankedBarNonlinearPattern.h | 4 ++++ 1 file changed, 4 insertions(+) diff --git a/alib2data/src/tree/ranked/PrefixRankedBarNonlinearPattern.h b/alib2data/src/tree/ranked/PrefixRankedBarNonlinearPattern.h index fbc3475f6a..d7ad75dfc6 100644 --- a/alib2data/src/tree/ranked/PrefixRankedBarNonlinearPattern.h +++ b/alib2data/src/tree/ranked/PrefixRankedBarNonlinearPattern.h @@ -284,6 +284,10 @@ void PrefixRankedBarNonlinearPattern < SymbolType, RankType >::arityChecksum ( c if ( ( data[i - 1] == getSubtreeWildcard ( ) ) && ( data[i] != getVariablesBar ( ) ) ) throw TreeException ( "Inconsystency of SubtreeWildcard and variablesBar" ); + for ( unsigned i = 1; i < data.size ( ); ++i ) + if ( ( getNonlinearVariables ( ).count ( data[i - 1] ) ) && ( data[i] != getVariablesBar ( ) ) ) + throw TreeException ( "Inconsystency of NonlinearVariables and variablesBar" ); + } template < class SymbolType, class RankType > -- GitLab