Skip to content

Deleted function can return incomplete type #52802

@Fedr

Description

@Fedr

The following program is valid:

struct A;
A f() = delete;

It is accepted by GCC, but rejected by Clang with the error:

error: incomplete result type 'A' in function definition

which is wrong per https://timsong-cpp.github.io/cppwp/n4868/dcl.fct.def#general-2.sentence-3

Demo: https://gcc.godbolt.org/z/937PEz1h3

Related discussion: https://stackoverflow.com/q/70410542/7325599

Metadata

Metadata

Assignees

Labels

clang:frontendLanguage frontend issues, e.g. anything involving "Sema"

Type

No type

Projects

No projects

Milestone

No milestone

Relationships

None yet

Development

No branches or pull requests

Issue actions