Commit 806b2ff
printer sid BUGFIX include nodes augmented into other modules
The SID generator collected data-namespace items only from the processed
module's own compiled tree (lysc_module_dfs_full(module, ...)). Nodes that
the module contributes to other modules by augmentation live in the target
modules' trees, so they were never collected and got no SID. For models
that place feature data via augments (e.g. augmenting a common root module),
the generated .sid file ended up with just the module item and no data
items.
Collect all nodes defined by the processed module wherever they are grafted:
after walking the module's own tree, also walk every context module whose
augmented_by references the processed module. collect_data_cb now attributes
each node to its defining module (node->module), so a foreign module's own
nodes are skipped while traversing its tree, and a module's .sid no longer
wrongly includes nodes augmented into it by others.
Add test_augment covering both directions (the augmenting module's .sid
contains the augmented-in node; the base module's .sid does not).
Co-authored-by: Cursor <cursoragent@cursor.com>1 parent 7142ccf commit 806b2ff
2 files changed
Lines changed: 111 additions & 0 deletions
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
50 | 50 | | |
51 | 51 | | |
52 | 52 | | |
| 53 | + | |
53 | 54 | | |
54 | 55 | | |
55 | 56 | | |
| |||
178 | 179 | | |
179 | 180 | | |
180 | 181 | | |
| 182 | + | |
| 183 | + | |
| 184 | + | |
| 185 | + | |
| 186 | + | |
| 187 | + | |
| 188 | + | |
181 | 189 | | |
182 | 190 | | |
183 | 191 | | |
| |||
343 | 351 | | |
344 | 352 | | |
345 | 353 | | |
| 354 | + | |
| 355 | + | |
| 356 | + | |
| 357 | + | |
346 | 358 | | |
347 | 359 | | |
348 | 360 | | |
349 | 361 | | |
350 | 362 | | |
351 | 363 | | |
| 364 | + | |
| 365 | + | |
| 366 | + | |
| 367 | + | |
| 368 | + | |
| 369 | + | |
| 370 | + | |
| 371 | + | |
| 372 | + | |
| 373 | + | |
| 374 | + | |
| 375 | + | |
| 376 | + | |
| 377 | + | |
| 378 | + | |
| 379 | + | |
| 380 | + | |
| 381 | + | |
| 382 | + | |
| 383 | + | |
| 384 | + | |
| 385 | + | |
| 386 | + | |
| 387 | + | |
| 388 | + | |
| 389 | + | |
352 | 390 | | |
353 | 391 | | |
354 | 392 | | |
| |||
| Original file line number | Diff line number | Diff line change | |
|---|---|---|---|
| |||
453 | 453 | | |
454 | 454 | | |
455 | 455 | | |
| 456 | + | |
| 457 | + | |
| 458 | + | |
| 459 | + | |
| 460 | + | |
| 461 | + | |
| 462 | + | |
| 463 | + | |
| 464 | + | |
| 465 | + | |
| 466 | + | |
| 467 | + | |
| 468 | + | |
| 469 | + | |
| 470 | + | |
| 471 | + | |
| 472 | + | |
| 473 | + | |
| 474 | + | |
| 475 | + | |
| 476 | + | |
| 477 | + | |
| 478 | + | |
| 479 | + | |
| 480 | + | |
| 481 | + | |
| 482 | + | |
| 483 | + | |
| 484 | + | |
| 485 | + | |
| 486 | + | |
| 487 | + | |
| 488 | + | |
| 489 | + | |
| 490 | + | |
| 491 | + | |
| 492 | + | |
| 493 | + | |
| 494 | + | |
| 495 | + | |
| 496 | + | |
| 497 | + | |
| 498 | + | |
| 499 | + | |
| 500 | + | |
| 501 | + | |
| 502 | + | |
| 503 | + | |
| 504 | + | |
| 505 | + | |
| 506 | + | |
| 507 | + | |
| 508 | + | |
| 509 | + | |
| 510 | + | |
| 511 | + | |
| 512 | + | |
| 513 | + | |
| 514 | + | |
| 515 | + | |
| 516 | + | |
| 517 | + | |
| 518 | + | |
| 519 | + | |
| 520 | + | |
| 521 | + | |
| 522 | + | |
| 523 | + | |
| 524 | + | |
| 525 | + | |
| 526 | + | |
| 527 | + | |
456 | 528 | | |
457 | 529 | | |
458 | 530 | | |
| |||
461 | 533 | | |
462 | 534 | | |
463 | 535 | | |
| 536 | + | |
464 | 537 | | |
465 | 538 | | |
466 | 539 | | |
| |||
0 commit comments