https://gcc.gnu.org/bugzilla/show_bug.cgi?id=116412
--- Comment #5 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
here is a C testcase for this:
```
double f(_Complex double a, _Complex double *b, int c)
{
if (c) return __real__ a;
return __real__ *b;
}
``
