## name complex case 1
## failures 1
## cut

use constant { PI => 4 * CORE::atan2(1, 1), ANS => 42 };
say PI;

## name complex case 2
## failures 2
## cut

use constant { PI => 4 * CORE::atan2(1, 1), ANS => 42 };
say 42;

## name Basic
## failures 1
## cut

use constant ANSWER => 42;
say 42;

## name Basic 1
## failures 2
## cut

use constant QUESTION => 42;
use constant ANSWER => 42;
say 42;


## name constant in constant
## failures 0
## cut

use constant A => 42;
use constant B => A + 42;
say B;

## name constant in HashRef with a preceeding plus sign.
## failures 2
## cut

use constant +{
    FOO => 1,
    BAR => 2,
};
say 42;

## name constant in HashRef
## failures 2
## cut

use constant {
    FOO => 1,
    BAR => 2,
};
say 42;

## name constant used in ternery op
## failures 0
## cut

use constant FOO => 1;
use constant BAR => 2;

$x = $y ? FOO : BAR;

## name constant in EXPORT
## failures 0
## cut

use constant TAU => 6.28;
our @EXPORT = qw(TAU);

## name constant in EXPORT_OK
## failures 0
## cut

use constant TAU => 6.28;
our @EXPORT_OK = qw(TAU);