Skip to content

[ntuple] use only "true type name" for class members#21373

Merged
jblomer merged 2 commits intoroot-project:masterfrom
jblomer:ntuple-typename-member
Feb 26, 2026
Merged

[ntuple] use only "true type name" for class members#21373
jblomer merged 2 commits intoroot-project:masterfrom
jblomer:ntuple-typename-member

Conversation

@jblomer
Copy link
Contributor

@jblomer jblomer commented Feb 25, 2026

Do not set the full type name as type alias. Pass only the true type name to RFieldBase::Create(). The true type name will contain Long64_t and Double32_t type name tokens, so we are still able to treat those correctly.

The full type name would provide additional information. However, normalizing the full type name can cause header auto parsing. Also, the full type name, in general, cannot be used directly because it may be a type that is only valid within the class context.

Partially fixes #21394

Do not set the full type name as type alias. Pass only the true type
name to RFieldBase::Create(). The true type name will contain Long64_t
and Double32_t type name tokens, so we are still able to treat those
correctly.

The full type name would provide additional information. However,
normalizing the full type name can cause header auto parsing. Also, the
full type name, in general, cannot be used directly because it may be
a type that is only valid within the class context.
@jblomer jblomer self-assigned this Feb 25, 2026
@github-actions
Copy link

github-actions bot commented Feb 25, 2026

Test Results

    22 files      22 suites   3d 4h 48m 41s ⏱️
 3 800 tests  3 796 ✅ 1 💤 3 ❌
76 414 runs  76 401 ✅ 9 💤 4 ❌

For more details on these failures, see this check.

Results for commit 1bf27d9.

♻️ This comment has been updated with latest results.

Copy link
Member

@hahnjo hahnjo left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

LGTM! One possibility for cleanup, I believe.

Do we want to backport to ROOT v6.36 to help experiments, or will this be released with 6.40 only?

@makortel
Copy link

For my education, what exactly do "full type name" and "true type name" mean in this context?

@jblomer
Copy link
Contributor Author

jblomer commented Feb 26, 2026

This refers to TDataMember::GetFullTypeName() and TDataMember::GetTrueTypeName()

@jblomer jblomer merged commit 390b6cd into root-project:master Feb 26, 2026
25 of 30 checks passed
@jblomer jblomer deleted the ntuple-typename-member branch February 26, 2026 21:44
@jblomer
Copy link
Contributor Author

jblomer commented Feb 27, 2026

/backport to 6.36, 6.38

@root-project-bot
Copy link

Something went wrong with the backport to 6.36: @jblomer please see the logs

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Projects

None yet

Development

Successfully merging this pull request may close these issues.

[ntuple] Avoid header auto parsing

4 participants