In the following example function f() returning incomplete type A is marked as deleted:
struct A;
A f() = delete;
It is accepted by GCC, but not in Clang, which complains:
error: incomplete result type 'A' in function definition
Demo: https://gcc.godbolt.org/z/937PEz1h3
Which compiler is right here according to the standard?