It works with Perl 5.14.2 but not with 5.20.2
It seems that Perl preprocessor does something with repeated chars before the 
regex engine that makes it consider it wrongly
if i change ss for s{2} like this:
body            __Z_NEGATIVE_LOOKBEHIND  /(?<!s{2}) text/i

then it works
try it Olivier and let us know..
---PedroD

  >On Friday, August 31, 2018, 4:00:05 PM GMT+2, Olivier Coutu 
<[email protected]> wrote:  >  >I wrote a rule that throws a variable 
length lookbehind error where the lookbehind is fixed length. Here is a MWE:
>body            __Z_NEGATIVE_LOOKBEHIND  /(?<!ss) text/i
>
>spamassassin --siteconfigpath=${HOME}/sa-rules/ --lint
>aoû 31 09:53:45.343 [9074] warn: config: invalid regexp for rule 
>__Z_NEGATIVE_LOOKBEHIND: /(?<!ss) text/i: Variable length lookbehind not 
>implemented in regex m/(?i)(?<!ss) text/>The error goes away if I remove the 
>case insensitive, or if I put a character between the two s characters. Using 
>nn instead of ss makes the error go away. The error stays if I add characters 
>before or after the ss. Is there a special non-text signification to the 
>characters ss? Here is my config:
 >SpamAssassin version 3.4.1
 > running on Perl version 5.22.1

 
   

Reply via email to