Landing: fe059756ddc4

Project / Subsystem

gcc / gcc/c++

Date

2026-05-22

Author

Jason Merrill

Commit

fe059756ddc4ec4e357a73d6385fd93db202c66e

Source

github

Perf win

No

Breaking

No

All attributes

project
gcc
subsystem
gcc/c++
patch_id
commit_hash
fe059756ddc4ec4e357a73d6385fd93db202c66e
source_type
github
headline
c++: defaulted ctor vs template ctor
tldr
Fixes a compiler cycle related to defaulted constructors and template constructors in C++.
author
Jason Merrill
outcome
committed
performance_win
false
breaking_change
false
series_id
series_parts
[]
tags
  • c++
  • bugfix
  • constructor
  • templates
discussion_id_link
bugzilla_pr
date
2026-05-22T00:00:00.000Z

This commit resolves a circular dependency issue in C++ when the compiler tries to lazily declare the RE move constructor while considering a template constructor. The fix involves handling LOOKUP_DEFAULTED in check_non_deducible_conversions to break the cycle. A new test case is added.