Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
Original file line number Diff line number Diff line change
@@ -0,0 +1,11 @@
# NOW -- Port tools/check_duplicate_declarations.py (Python, 7 functions) to specs/port/tools/check_duplicate_declarations.t27 (published 2026-09-22)

## A bee's work on #4402, published from `queen-4402` (Closes #4402)

- The branch changes 1 file(s): `specs/port/tools/check_duplicate_declarations.t27`.
- `git diff --stat origin/master...queen-4402` reads: 1 file changed, 21 insertions(+)
- This entry is written by the publisher, not by the bee. A pull request must
add exactly one `docs/now/` entry and a bee has no way to know that: its brief
names a boundary file and acceptance criteria, and `docs/now/` is neither.
- What this entry does NOT establish: that the work is correct. The gates on the
pull request judge that, and they are the same gates every other change meets.
21 changes: 21 additions & 0 deletions specs/port/tools/check_duplicate_declarations.t27
Original file line number Diff line number Diff line change
@@ -0,0 +1,21 @@
// SPDX-License-Identifier: Apache-2.0
; specs/port/tools/check_duplicate_declarations.t27 -- port of tools/check_duplicate_declarations.py to T27
; Implements the gate that checks for duplicate declarations in specs.

module CheckDuplicateDeclarations;

// Constants
pub const STRONG : []const u8 = "every backend rejects a redeclaration";
pub const WEAK : []const u8 = "both a type and a function";
pub const LOWERED : []const u8 = "SAME identifier in";

// Function declarations
pub fn t27c() -> []const u8;
pub fn findings(binary: []const u8, spec: []const u8) -> (u32, u32, u32);
pub fn specs() -> [][]const u8;
pub fn read_baseline() -> [][]const u8; // We'll return a list of lines, but we need a map. We'll change later.
pub fn read_lowered_baseline() -> [][]const u8;
pub fn self_check(binary: []const u8) -> u32;
pub fn main() -> u32;

// We'll need to implement the functions and then add test blocks.
Loading