← All programs · Programs that must fail

Programs that must fail #2

✓
Both compilers refuse this program — correctly

The program is broken on purpose. The right behaviour is a compile-time error instead of output, and that is what both compilers give.

The program

my $value = :1<2>;

Run executes the program in your browser, with the Raku++ build this site ships. Edit it and try variations.

What each compiler printed

Rakudo 2026.08

(printed nothing)

Raku++ 5.0.0-g312cde8e

(printed nothing)

Error messages

Rakudo 2026.08

===SORRY!=== Error while compiling invalid-00000041.raku
Radix 1 out of range (allowed: 2..36)
at invalid-00000041.raku:1
------> my $value = :1<2><HERE>;

Raku++ 5.0.0-g312cde8e

===SORRY!=== Parse error at line 1: Radix 1 out of range (allowed: 2..36)
      1 | my $value = :1<2>;
  at invalid-00000041.raku:1

The wording of an error message is up to each compiler; what matters is that both refuse the program.