mirror of
https://github.com/DeusData/codebase-memory-mcp.git
synced 2026-11-06 08:35:21 +08:00
Major improvements to the C/C++ type-aware call resolver: - Template argument substitution for qualified calls (std::get<T>, std::any_cast<T>, std::make_shared<T>) — strip template args from AST, substitute TYPE_PARAMs in return types, wrap NAMED→TEMPLATE for downstream smart pointer deduction - Smart pointer deref uses suffix matching (handles module-prefixed QNs like "test.main.std.shared_ptr") - Fix storage_class_specifier/type_qualifier skipping in c_parse_declaration_type (static/const/virtual methods now get correct return types) - Scope-aware alias resolution in c_resolve_name_to_type (typedef/using) - Template namespace fallback in c_parse_type_node (resolve types within current namespace during template class pre-pass) - Pending template call resolution emits with correct caller QN - Add ~330 new tests covering C++17 (structured bindings, if-init, CTAD, optional), C++20 (coroutines, concepts, ranges), heavy templates, real-world patterns (smart pointers, iterators, RAII, factories), STL completeness, and C patterns