Remove ambient validation markers, show ptr64 as void*, add struct types to picker, add README

- Remove M_ERR and M_PTR0 ambient markers from compose (validation only during inline edit)
- Change ptr64 display name to void* in kKindMeta
- Type picker now includes custom struct type names from the tree
- Controller handles struct type selection from picker
- Add project README

Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
sysadmin
2026-02-06 08:02:08 -07:00
parent be0c818075
commit 8daed45414
9 changed files with 566 additions and 368 deletions

View File

@@ -150,7 +150,8 @@ private slots:
ComposeResult result = compose(tree, prov);
QCOMPARE(result.meta.size(), 4);
QVERIFY(result.meta[2].markerMask & (1u << M_PTR0));
// No ambient validation markers — M_PTR0 is no longer set
QVERIFY(!(result.meta[2].markerMask & (1u << M_PTR0)));
}
void testCollapsedStruct() {
@@ -182,7 +183,7 @@ private slots:
}
void testUnreadablePointerNoRead() {
// A pointer at an unreadable address should get M_ERR, not M_PTR0
// No ambient validation — neither M_ERR nor M_PTR0 set
NodeTree tree;
tree.baseAddress = 0;
@@ -206,8 +207,8 @@ private slots:
ComposeResult result = compose(tree, prov);
QCOMPARE(result.meta.size(), 4);
// Should have M_ERR, should NOT have M_PTR0
QVERIFY(result.meta[2].markerMask & (1u << M_ERR));
// No ambient validation markers
QVERIFY(!(result.meta[2].markerMask & (1u << M_ERR)));
QVERIFY(!(result.meta[2].markerMask & (1u << M_PTR0)));
}