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; } ``