Capture inline-return-type function definitions in the doxygroup scan#64
Merged
estebanzimanyi merged 1 commit intoJul 17, 2026
Conversation
`doxygroup._name_to_group` maps each `@ingroup` tag to the function it labels by scanning forward to the next definition. The regex only matched the return type on its own line, so an inline-return-type definition (`bool pcpatch_eq( ...)`) slipped through and the tag mis-bound to the following own-line definition. Capture the signature head up to the first `(` and take the last identifier as the function name, which handles both the own-line and inline forms. On the MEOS-C sources this recovers 24 functions that were missing a group (the terse pcpatch, pcpoint, and tpcbox comparison and accessor one-liners) and corrects two that were mis-attributed (`left_tpcbox_tpcbox`, `pcpoint_as_pcpt`) because the scan previously skipped their inline neighbours. Add a test covering the inline case and the mis-attribution it prevents.
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment
Add this suggestion to a batch that can be applied as a single commit.This suggestion is invalid because no changes were made to the code.Suggestions cannot be applied while the pull request is closed.Suggestions cannot be applied while viewing a subset of changes.Only one suggestion per line can be applied in a batch.Add this suggestion to a batch that can be applied as a single commit.Applying suggestions on deleted lines is not supported.You must change the existing code in this line in order to create a valid suggestion.Outdated suggestions cannot be applied.This suggestion has been applied or marked resolved.Suggestions cannot be applied from pending reviews.Suggestions cannot be applied on multi-line comments.Suggestions cannot be applied while the pull request is queued to merge.Suggestion cannot be applied right now. Please check back later.
doxygroup._name_to_groupmaps each@ingrouptag to the function it labels byscanning forward to the next definition. Its regex matches the return type only
on its own line, so an inline-return-type definition (
bool pcpatch_eq(...))slips through and the tag binds to the following own-line definition instead.
This captures the signature head up to the first
(and takes the lastidentifier as the function name, which handles both the own-line and inline
forms. On the MEOS-C sources it recovers 24 functions that lack a group (the
terse
pcpatch/pcpoint/tpcboxcomparison and accessor one-liners) andfixes two mis-attributions:
left_tpcbox_tpcboxbelongs to its ownmeos_pointcloud_box_pos, notmeos_pointcloud_box_comp; andpcpoint_as_pcptis an untagged internal helper, not a
meos_pointcloud_compmember.A new test covers the inline case and the mis-attribution it prevents.