Andrew Hundt
c51e5cb01e
fix(extract,mcp): retain pointer returns and exact signature status
...
Both merge parents be89d496 and 97ce23f stored only the base type node for C/C++ functions and methods, so const char * and char ** were published as char. The feature parent also marked requested get_code signature output as truncated source and emitted repair-oriented clipping metadata.
Add c_declarator_return_type_text at internal/cbm/extract_defs.c:3154 to retain leading qualifiers and every pointer_declarator in O(D) traversal time with O(return-type bytes) arena storage and checked size arithmetic. Route free-function and method return metadata through it. In src/mcp/mcp.c:13543, treat signature mode as a complete requested representation: retain total_lines, omit truncated/source_clipped/clipped_at_lines, and reuse one signature_mode predicate.
Tests require const char *, char **, unchanged scalar int, C++ method parity, total_lines=300, and absence of false clipping fields. Verified extraction 329/329, C LSP 752/752, token_reduction 56/56, MCP 314/314 under ASan/UBSan; test-leak 1194/1194 with 0 leaks; explicit four-file test-syntax and source safety pass. Clang analyzer reports no diagnostics in changed production ranges.
Signed-off-by: Andrew Hundt <ATHundt@gmail.com >
2026-07-26 23:45:54 -04:00
..
2026-07-10 09:12:40 +00:00
2026-07-25 10:06:10 -04:00
2026-07-22 17:48:20 +02:00
2026-06-05 21:53:25 +02:00
2026-06-05 21:53:25 +02:00
2026-07-19 14:09:36 -04:00
2026-03-15 22:37:34 +01:00
2026-07-23 00:53:41 +02:00
2026-07-13 05:21:55 +02:00
2026-07-20 22:53:48 -04:00
2026-05-30 18:26:44 +02:00
2026-07-26 14:06:55 -04:00
2026-06-29 09:45:28 -06:00
2026-07-23 20:29:05 -04:00
2026-07-23 23:01:19 -04:00
2026-07-23 23:08:45 -04:00
2026-07-23 20:44:39 -04:00
2026-07-22 17:48:20 +02:00
2026-07-25 16:24:15 -04:00
2026-07-26 14:42:37 -04:00
2026-07-13 01:50:02 +02:00
2026-07-14 21:13:52 +02:00
2026-07-13 02:00:32 +02:00
2026-07-21 18:56:39 -04:00
2026-07-02 07:37:19 -04:00
2026-06-28 06:34:23 -04:00
2026-06-06 22:16:04 +02:00
2026-07-26 03:41:47 -04:00
2026-07-23 17:36:00 +02:00
2026-05-19 22:47:53 +02:00
2026-07-26 09:50:11 -04:00
2026-07-25 10:06:10 -04:00
2026-07-21 15:32:15 +02:00
2026-07-21 15:32:15 +02:00
2026-07-21 15:32:15 +02:00
2026-07-18 11:48:59 +02:00
2026-07-21 15:32:15 +02:00
2026-07-18 01:26:08 +02:00
2026-07-18 01:26:08 +02:00
2026-07-18 01:26:08 +02:00
2026-07-25 22:22:35 -04:00
2026-07-25 10:06:10 -04:00
2026-07-25 10:06:10 -04:00
2026-06-24 17:03:07 -04:00
2026-06-23 06:38:45 +09:00
2026-03-25 09:28:11 +01:00
2026-07-19 14:09:36 -04:00
2026-07-15 15:44:06 -04:00
2026-07-19 14:09:36 -04:00
2026-06-07 12:35:53 +02:00
2026-07-26 10:14:35 -04:00
2026-07-26 23:45:54 -04:00
2026-07-14 01:47:43 -04:00
2026-07-26 07:24:16 -04:00
2026-07-25 16:24:15 -04:00
2026-07-25 15:43:08 -04:00
2026-06-22 23:51:49 +02:00
2026-03-15 22:37:34 +01:00
2026-07-15 15:44:06 -04:00
2026-07-15 15:44:06 -04:00
2026-06-28 06:34:23 -04:00
2026-06-28 06:34:23 -04:00
2026-06-28 06:34:23 -04:00
2026-07-14 01:47:43 -04:00
2026-06-28 06:34:23 -04:00
2026-06-28 06:34:23 -04:00
2026-07-14 01:47:43 -04:00
2026-07-08 00:05:19 +05:30
2026-07-14 05:06:05 -04:00
2026-06-30 00:38:07 -04:00
2026-05-21 22:52:16 +02:00
2026-07-25 10:06:10 -04:00
2026-07-25 10:06:10 -04:00
2026-07-01 23:52:19 -04:00
2026-07-25 10:06:10 -04:00
2026-07-25 10:06:10 -04:00
2026-07-19 00:42:19 +02:00
2026-07-01 04:04:08 -04:00
2026-07-26 13:17:34 -04:00
2026-07-25 10:06:10 -04:00
2026-06-02 18:52:37 +02:00
2026-07-01 07:37:23 -04:00
2026-07-01 07:22:12 -04:00
2026-07-24 00:41:37 -04:00
2026-07-08 00:05:19 +05:30
2026-07-18 14:38:07 +02:00
2026-07-14 01:47:43 -04:00
2026-07-15 15:44:06 -04:00
2026-03-15 22:37:34 +01:00
2026-07-26 05:03:36 -04:00
2026-07-25 18:46:11 -04:00
2026-07-18 01:26:08 +02:00
2026-07-24 01:34:02 -04:00
2026-06-28 06:34:23 -04:00
2026-07-26 23:00:35 -04:00
2026-07-23 01:33:58 +02:00
2026-06-28 06:34:23 -04:00
2026-07-23 22:51:58 -04:00
2026-07-25 10:06:10 -04:00
2026-07-25 10:06:10 -04:00
2026-07-26 05:06:13 -04:00
2026-07-03 19:57:01 +02:00
2026-07-09 14:09:39 -05:00
2026-07-09 22:32:26 +02:00
2026-07-26 20:09:43 -04:00
2026-07-25 18:03:34 -04:00
2026-07-18 01:26:08 +02:00
2026-07-18 01:26:08 +02:00
2026-07-23 17:36:00 +02:00
2026-07-25 16:47:15 -04:00
2026-05-09 14:16:15 +02:00
2026-07-19 14:09:36 -04:00
2026-07-23 22:26:15 -04:00
2026-06-30 06:05:15 -04:00
2026-07-26 16:15:57 -04:00
2026-07-06 18:32:50 +02:00
2026-07-25 15:43:08 -04:00
2026-05-08 22:26:56 +02:00
2026-07-18 11:48:59 +02:00
2026-06-24 03:15:36 +02:00
2026-07-19 14:09:36 -04:00
2026-07-18 01:26:08 +02:00
2026-07-26 07:01:51 -04:00
2026-06-28 21:57:35 -06:00
2026-07-21 15:32:15 +02:00
2026-06-30 11:00:27 -04:00
2026-07-19 14:09:36 -04:00
2026-07-19 14:09:36 -04:00
2026-07-26 02:41:58 -04:00
2026-04-11 09:22:23 -04:00
2026-07-18 01:26:08 +02:00
2026-07-14 01:47:43 -04:00
2026-07-25 22:09:14 -04:00
2026-07-19 14:09:36 -04:00
2026-07-26 21:47:16 -04:00
2026-03-24 23:48:23 +01:00
2026-07-25 19:02:24 -04:00
2026-07-25 12:04:03 -04:00
2026-07-23 23:08:45 -04:00
2026-07-26 23:45:54 -04:00
2026-07-26 23:00:35 -04:00
2026-03-24 23:48:23 +01:00
2026-07-02 03:55:39 -04:00
2026-06-10 12:11:02 +02:00
2026-07-21 15:32:15 +02:00
2026-07-23 00:53:41 +02:00
2026-04-09 23:15:10 -04:00
2026-07-23 00:53:41 +02:00
2026-07-21 15:32:15 +02:00
2026-06-05 21:53:25 +02:00
2026-07-26 04:48:15 -04:00
2026-07-21 15:32:15 +02:00
2026-07-21 15:32:15 +02:00
2026-07-01 23:42:49 -04:00
2026-07-16 19:20:46 +02:00
2026-04-10 20:09:37 -04:00
2026-04-15 23:56:03 +02:00