John Hardin wrote: > Burnie wrote: > >John Hardin wrote: > >> jdow wrote: > >>> Would a corrected syntax version of this work? > >>> > if version > 3.004001 && perl_version >= 5.010000 > >>> body NON_588_COMPATIBLE_RE_SYNTAX /\w++/ > >>> endif > >> > >> Yes. That *does* work. > >> > >> Thank you! I think you just solved it. > > > >Define work... > > > >if version > 3.004001 && perl_version >= 5.010000 > > body NON_588_COMPATIBLE_RE_SYNTAX /\w++/ > >endif > > > ># spamassassin --lint > >Dec 1 15:03:50.365 [28224] warn: Argument "perl_version" isn't numeric in > >numeric ge (>=) at (eval 2520) line 2. > > Dammit. I ran it (against trunk) here (with a different pseudo-var name, and > using version > 9) and did *not* get a type warning!
First, thank you for the fix in the latest updates. I no longer saw any warnings from cron with last nights release cycle. Regarding this syntax I just ran a test here with exactly that syntax in Debian Wheezy Stable. $ spamassassin --version SpamAssassin version 3.3.2 running on Perl version 5.14.2 if version > 3.004001 && perl_version >= 5.010000 meta PDS_FROM_2_EMAILS __PDS_FROM_2_EMAILS && !__VIA_ML && !__VIA_RESIGNER endif if version > 3.004001 && perl_version >= 5.010000 header __PDS_FROM_2_EMAILS From =~ /^\W+([\w+.-]+\@[\w.-]+\.\w\w++)(?:[^\n\w<]{0,80})?<(?!\1)[^\n\s]*\@/i endif This produced no lint warnings with the above combination. I am missing why it is causing problems in Burnie's configuration. Is 3.3.1 really that different here from 3.3.2 which is silent? Bob