Strange wrong reesult in ImprovedWildcardStringMatcher
In the StringMatcher_speedtest test case "Short Wildcard many many matches (aaa) > (a)" the matcher ImprovedWildcardStringMatcher still produces a wrong result.
I could not create a unit test to reproduce this.
======== Run benchmark: Short Wildcard many many matches (aa*a) > (a)* ========
Time: 1390ms [1376ms, 1394ms] { 41us [ 40us, 42us]} WildcardStringMatcher (16777214 matches)
Time: 1027ms [1010ms, 1035ms] { 40us [ 40us, 41us]} WildcardParallelStringMatcher (16777214 matches)
WARNING: Different result size for matcher ImprovedWildcardStringMatcher
Time: 1844ms [1823ms, 1861ms] { 41us [ 40us, 42us]} ImprovedWildcardStringMatcher (33554428 matches)
Time: 1140ms [1126ms, 1149ms] { 42us [ 41us, 45us]} ImprovedWildcardStringMatcher2 (16777214 matches)