Step 332: Multiple Inheritance in ClassDeclaration (12/12 tests)
BaseClass struct with access specifiers and virtual flags. Backward-compatible getBases() migration from legacy superClass. Diamond inheritance detection via BFS. Updated Serialization for baseClasses array roundtrip. Co-Authored-By: Claude Opus 4.6 <noreply@anthropic.com>
This commit is contained in:
@@ -403,6 +403,13 @@ inline std::string getNodeName(const ASTNode* node) {
|
||||
if (ct == "BooleanLiteral")
|
||||
return static_cast<const BooleanLiteral*>(node)->value
|
||||
? "true" : "false";
|
||||
// Class declarations (Sprint 11c + 12c)
|
||||
if (ct == "ClassDeclaration")
|
||||
return static_cast<const ClassDeclaration*>(node)->name;
|
||||
if (ct == "InterfaceDeclaration")
|
||||
return static_cast<const InterfaceDeclaration*>(node)->name;
|
||||
if (ct == "MethodDeclaration")
|
||||
return static_cast<const MethodDeclaration*>(node)->name;
|
||||
// Host Boundary (Step 288)
|
||||
if (ct == "HostCall")
|
||||
return static_cast<const HostCall*>(node)->name;
|
||||
|
||||
Reference in New Issue
Block a user