__END__ # NAME foo found where operator expected myfunc 1,2,3 EXPECT Number found where operator expected (Do you need to predeclare "myfunc"?) at - line 1, near "myfunc 1" syntax error at - line 1, near "myfunc 1" Execution of - aborted due to compilation errors. ######## # NAME foo found where operator expected (after strict error, w/fatal warnings) use warnings FATAL => 'all'; use strict; $foo; myfunc 1,2,3 EXPECT Global symbol "$foo" requires explicit package name (did you forget to declare "my $foo"?) at - line 3. Number found where operator expected (Do you need to predeclare "myfunc"?) at - line 4, near "myfunc 1" syntax error at - line 4, near "myfunc 1" Execution of - aborted due to compilation errors. ######## # NAME (Missing operator before "${"?) [perl #123737] 0${ EXPECT Scalar found where operator expected (Missing operator before "${"?) at - line 1, near "0${" syntax error at - line 1, near "0$" Execution of - aborted due to compilation errors. ######## # NAME (Missing operator before "$#{"?) [perl #123737] 0$#{ EXPECT Array length found where operator expected (Missing operator before "$#{"?) at - line 1, near "0$#{" syntax error at - line 1, near "0$#" Execution of - aborted due to compilation errors. ######## # NAME (Missing operator before "@foo") [perl #123737] 0@foo EXPECT Array found where operator expected (Missing operator before "@foo"?) at - line 1, near "0@foo" syntax error at - line 1, near "0@foo " Execution of - aborted due to compilation errors. ######## # NAME (Missing operator before "@{") [perl #123737] 0@{ EXPECT Array found where operator expected (Missing operator before "@{"?) at - line 1, near "0@{" syntax error at - line 1, near "0@" Execution of - aborted due to compilation errors. ######## # NAME Unterminated here-doc in string eval eval "< sub {}; undef *^H } 1 EXPECT Constant(1) unknown at - line 3, at end of line Execution of - aborted due to compilation errors. ######## # NAME Float constant overloading returning undef use overload; BEGIN { overload::constant float => sub {}; undef *^H } 1.1 EXPECT Constant(1.1) unknown at - line 3, at end of line Execution of - aborted due to compilation errors. ######## # NAME Binary constant overloading returning undef use overload; BEGIN { overload::constant binary => sub {}; undef *^H } 0x1 EXPECT Constant(0x1) unknown at - line 3, at end of line Execution of - aborted due to compilation errors. ######## # NAME String constant overloading returning undef use overload; BEGIN { overload::constant q => sub {}; undef *^H } '1', "1$_", tr"a"", s""a" EXPECT Constant(q) unknown at - line 3, near "'1'" Constant(qq) unknown at - line 3, within string Constant(tr) unknown at - line 3, within string Constant(s) unknown at - line 3, within string Execution of - aborted due to compilation errors. ######## # NAME Regexp constant overloading when *^H is undefined use overload; BEGIN { overload::constant qr => sub {}; undef *^H } /a/ EXPECT Constant(qq) unknown at - line 3, within pattern Execution of - aborted due to compilation errors. ######## # NAME Regexp constant overloading when *^H is undefined use overload; BEGIN { overload::constant qr => sub {}; undef *^H } m'a' EXPECT Constant(q) unknown at - line 3, within pattern Execution of - aborted due to compilation errors. ######## # NAME \N{...} when charnames fails to load but without an error # SKIP ? exists $ENV{PERL_UNICODE} ? "Unreliable under some PERL_UNICODE settings" : 0 BEGIN { ++$_ for @INC{"charnames.pm","_charnames.pm"} } "\N{a}" EXPECT Constant(\N{a}) unknown at - line 2, within string Execution of - aborted due to compilation errors. ######## # NAME Integer constant overloading returning undef use overload; BEGIN { overload::constant integer => sub {} } 1 EXPECT Constant(1): Call to &{$^H{integer}} did not return a defined value at - line 3, at end of line Execution of - aborted due to compilation errors. ######## # NAME Float constant overloading returning undef use overload; BEGIN { overload::constant float => sub {} } 1.1 EXPECT Constant(1.1): Call to &{$^H{float}} did not return a defined value at - line 3, at end of line Execution of - aborted due to compilation errors. ######## # NAME Binary constant overloading returning undef use overload; BEGIN { overload::constant binary => sub {} } 0x1 EXPECT Constant(0x1): Call to &{$^H{binary}} did not return a defined value at - line 3, at end of line Execution of - aborted due to compilation errors. ######## # NAME String constant overloading returning undef use overload; BEGIN { overload::constant q => sub {} } '1', "1$_", tr"a"", s""a" EXPECT Constant(q): Call to &{$^H{q}} did not return a defined value at - line 3, near "'1'" Constant(qq): Call to &{$^H{q}} did not return a defined value at - line 3, within string Constant(tr): Call to &{$^H{q}} did not return a defined value at - line 3, within string Constant(s): Call to &{$^H{q}} did not return a defined value at - line 3, within string Execution of - aborted due to compilation errors. ######## # NAME Regexp constant overloading returning undef use overload; BEGIN { overload::constant qr => sub {} } /a/ EXPECT Constant(qq): Call to &{$^H{qr}} did not return a defined value at - line 3, within pattern Execution of - aborted due to compilation errors. ######## # NAME Regexp constant overloading returning undef use overload; BEGIN { overload::constant qr => sub {} } m'a' EXPECT Constant(q): Call to &{$^H{qr}} did not return a defined value at - line 3, within pattern Execution of - aborted due to compilation errors. ######## # NAME Failed constant overloading should not cause a double free use overload; BEGIN { overload::constant q => sub {}; undef *^H } undef(1,2); undef(1,2); undef(1,2); undef(1,2); undef(1,2); undef(1,2); undef(1,2); undef(1,2); undef(1,2); "a" EXPECT Too many arguments for undef operator at - line 3, near "2)" Too many arguments for undef operator at - line 4, near "2)" Too many arguments for undef operator at - line 5, near "2)" Too many arguments for undef operator at - line 6, near "2)" Too many arguments for undef operator at - line 7, near "2)" Too many arguments for undef operator at - line 8, near "2)" Too many arguments for undef operator at - line 9, near "2)" Too many arguments for undef operator at - line 10, near "2)" Too many arguments for undef operator at - line 11, near "2)" Constant(q) unknown at - line 12, near ""a"" - has too many errors. ######## # NAME Bad name after ' (with other helpful messages) sub has{} has erdef => ( isa => 'Int', is => 'ro, default => sub { 1 } ); has cxxc => ( isa => 'Int', is => 'ro', default => sub { 1 } ); EXPECT Bareword found where operator expected (Do you need to predeclare "isa"?) at - line 9, near "isa => 'Int" (Might be a runaway multi-line '' string starting on line 4) Bad name after Int' at - line 9. ######## # NAME Bad name after :: (with other helpful messages) sub has{} has erdef => ( isa => 'Int', is => "ro, default => sub { 1 } ); has cxxc => ( isa => "Foo::$subpackage", is => 'ro', default => sub { 1 } ); EXPECT Bareword found where operator expected (Do you need to predeclare "isa"?) at - line 9, near "isa => "Foo" (Might be a runaway multi-line "" string starting on line 4) Bad name after Foo:: at - line 9. ######## # NAME Unterminated delimiter for here document <<"foo EXPECT Unterminated delimiter for here document at - line 1. ######## # NAME my (our $x) errors my (our $x); EXPECT Can't redeclare "our" in "my" at - line 1, near "(our" Execution of - aborted due to compilation errors. ######## # NAME our (my $x) errors our (my $x); EXPECT Can't redeclare "my" in "our" at - line 1, near "(my" Execution of - aborted due to compilation errors. ######## # NAME state (my $x) errors use feature 'state'; state (my $x); EXPECT Can't redeclare "my" in "state" at - line 2, near "(my" Execution of - aborted due to compilation errors. ######## # NAME our (state $x) errors use feature 'state'; our (state $x); EXPECT Can't redeclare "state" in "our" at - line 2, near "(state" Execution of - aborted due to compilation errors. ######## # NAME my (my $x) errors my (my $x, $y, $z); EXPECT Can't redeclare "my" in "my" at - line 1, near "(my" Execution of - aborted due to compilation errors. ######## # NAME our (our $x) errors our ($x, our($y), $z); EXPECT Can't redeclare "our" in "our" at - line 1, near ", our" Execution of - aborted due to compilation errors. ######## # NAME state (state $x) errors use feature 'state'; state ($x, $y, state $z); EXPECT Can't redeclare "state" in "state" at - line 2, near ", state" Execution of - aborted due to compilation errors. ######## # NAME BEGIN <> [perl #125341] BEGIN <> EXPECT Illegal declaration of subroutine BEGIN at - line 1. ######## # NAME multiple conflict markers. # NOTE the CONFLICT> theirs:sample.txt EXPECT Version control conflict marker at - line 1, near "CONFLICT>" Execution of - aborted due to compilation errors. ######## # NAME (Might be a runaway multi-line...) with Latin-1 delimiters in utf8 BEGIN { binmode STDERR, ':utf8' } use utf8; no warnings 'deprecated'; q« « time EXPECT syntax error at - line 5, near "« time" (Might be a runaway multi-line «« string starting on line 4) Execution of - aborted due to compilation errors. ######## # NAME (Might be a runaway multi-line...) with non-Latin-1 delimiters BEGIN { binmode STDERR, ':utf8' } use utf8; q ϡ ϡ time EXPECT syntax error at - line 4, near "ϡ time" (Might be a runaway multi-line ϡϡ string starting on line 3) Execution of - aborted due to compilation errors. ######## # NAME tr/// handling of mis-formatted \o characters # may only fail with ASAN tr/\o-0//; EXPECT Missing braces on \o{} at - line 2, within string Execution of - aborted due to compilation errors. ######## # NAME bare << $a = <<; EXPECT Use of bare << to mean <<"" is forbidden at - line 1. ######## # NAME bare <<~ $a = <<~; EXPECT Use of bare << to mean <<"" is forbidden at - line 1. ######## # NAME bare <<~ $a = <<~ ; EXPECT Use of bare << to mean <<"" is forbidden at - line 1. ######## # NAME incomplete floating point decimal exponent (#131725) 1e--5 EXPECT Bareword found where operator expected (Missing operator before "e"?) at - line 1, near "1e" syntax error at - line 1, near "1e" Execution of - aborted due to compilation errors. ######## # NAME signature with non-"=" assignop #131777 use feature 'signatures'; sub foo ($a += 1) EXPECT Illegal operator following parameter in a subroutine signature at - line 2, near "($a += 1" syntax error at - line 2, near "($a += 1" Execution of - aborted due to compilation errors. ######## # NAME tr/// range with empty \N{} at the start tr//\N{}-0/; EXPECT Unknown charname '' at - line 1, within string Execution of - aborted due to compilation errors. ######## # NAME octal fp with non-octal digits after the decimal point 01.1234567p0; 07.8p0; EXPECT Bareword found where operator expected (Missing operator before "p0"?) at - line 2, near "8p0" syntax error at - line 2, near "8p0" Execution of - aborted due to compilation errors. ######## # NAME binary fp with non-binary digits after the decimal point 0b1.10p0; 0b1.2p0; EXPECT Bareword found where operator expected (Missing operator before "p0"?) at - line 2, near "2p0" syntax error at - line 2, near "2p0" Execution of - aborted due to compilation errors. ######## # NAME dump() must be written as CORE::dump() as of Perl 5.30 BEGIN { $^C = 1; } dump; CORE::dump; EXPECT dump() must be written as CORE::dump() as of Perl 5.30 at - line 2. ######## # NAME check Prototype not terminated includes line number (133524) sub t1 {} sub t2 (} EXPECT Prototype not terminated at - line 2. ######## # NAME [perl #132158] format with syntax errors format= @ =h =cut EXPECT syntax error at - line 4, next token ??? Execution of - aborted due to compilation errors. ######## # NAME [perl #134125] [gh #17010] incomplete hex number 0x x 2; 0xx 2; 0x_; 0b; EXPECT No digits found for hexadecimal literal at - line 1, near "0x " No digits found for hexadecimal literal at - line 2, near "0xx" No digits found for hexadecimal literal at - line 3, near "0x_;" No digits found for binary literal at - line 4, near "0b;" Execution of - aborted due to compilation errors. ######## # NAME [perl #130585] close paren in subparse qr!@{s{0})(?{!; EXPECT syntax error at - line 1, near "})" Execution of - aborted due to compilation errors. ######## # NAME [perl #130585] close paren in subparse - a few more tests my ($x, %y, @z); qq!$x\U $z[0] $y{a}\E $z[1]!; qq!$x\U@{s{0})(?{!; EXPECT syntax error at - line 3, near ")(" Execution of - aborted due to compilation errors. ######## # NAME [perl #134310] don't confuse S_no_op() with PL_bufptr after s 0 0x@ EXPECT Number found where operator expected (Missing operator before "0x"?) at - line 1, near "0 0x" No digits found for hexadecimal literal at - line 1, near "0 0x@" syntax error at - line 1, near "0 0x" Execution of - aborted due to compilation errors. ######## # NAME Forbid illegal \x{} code points use Config; if ($Config{uvsize} < 8) { my $a = "\x{8000_0000}"; } else { my $a = "\x{8000_0000_0000_0000}"; } EXPECT OPTIONS regex Use of code point 0x80000000(00000000)? is not allowed; the permissible max is 0x7FFFFFFF(FFFFFFFF)? at - line \d+. ######## # NAME Forbid illegal \o{} code points use Config; if ($Config{uvsize} < 8) { my $b = "\o{20_000_000_000}"; } else { my $b = "\o{1_000_000_000_000_000_000_000}"; } EXPECT OPTIONS regex Use of code point 0x80000000(00000000)? is not allowed; the permissible max is 0x7FFFFFFF(FFFFFFFF)? at - line \d+. ######## # NAME gh-17645: conflict marker detection should not read out of bounds m/$0[ ==0/ EXPECT syntax error at - line 2, near "[ ==" (Might be a runaway multi-line // string starting on line 1) Execution of - aborted due to compilation errors.