ajhahn.de
← Flash
Flash 40 lines
// PASS probe — everything here folds (or interns) without a diagnostic:
// integer arithmetic over decimal, hex, and binary literals, comparisons
// and boolean logic, bitwise and shift operators, references through
// earlier constants, string interning, type aliases, composite type
// expressions, a container definition, and a block-scoped local fold.

const Answer = 6 * 7
const Grouped = (1 + 2) * 3
const Hex = 0xFF & 0x0F
const Bin = 0b101 | 0b010
const Shift = 1 << 6
const Chain = Answer + Shift
const Quot = 7 / 2
const Rem = 7 % 2
const Neg = -42

const Less = 1 < 2
const Equal = 3 == 3
const Inverted = !false
const Both = true && false
const Either = false || true

const Name = "flash"
const Same = "flash"

const Alias = u8
const Twice = Alias
const Maybe = ?Alias
const Bytes = []u8

const Point = struct {
    x i32,
    y i32,
}

fn scoped() usize {
    const k = 6 * 7
    return k
}