Landing: d3b2edb26648

Project / Subsystem

gcc / c-family

Date

2026-05-11

Author

Jason Merrill

Commit

d3b2edb2664893cc0deb3d8815effa27436b39f9

Source

github

Perf win

No

Breaking

No

All attributes

project
gcc
subsystem
c-family
patch_id
commit_hash
d3b2edb2664893cc0deb3d8815effa27436b39f9
source_type
github
headline
C-family: Look through non-user-facing typedef
tldr
The compiler now correctly identifies user-facing types even when going through non-user-facing typedefs.
author
Jason Merrill
outcome
committed
performance_win
false
breaking_change
false
series_id
series_parts
[]
tags
  • c++
  • typedef
  • type resolution
  • bugfix
discussion_id_link
bugzilla_pr
date
2026-05-11T00:00:00.000Z

The compiler’s ‘aka’ printing (used to display type information) could differ between in-tree and installed compilers, due to differences in how libstdc++ headers are treated. The issue was that the compiler would stop looking for the underlying user type when it encountered a non-user-facing typedef (e.g., __iter_type<T>). This commit fixes this by making the type resolution recurse through such typedefs.