# File kwartz.rb, line 3277
        def parse_expression
            expr = parse_logical_or()
            while token() == '?' do
                scan()
                left_expr = parse_logical_or()
                _syntaxerr("':' expected.") unless token() == ':'
                scan()
                right_expr = parse_logical_or()
                condition_expr = expr
                expr = ExprNode.new('?', left_expr, right_expr)
                expr.condition = condition_expr
            end
            return expr
        end