On Sun, 4 Sep 2016, Uros Bizjak wrote: > It looks that different handling of _Complex char, _Complex short and > _Complex float is there on purpose. Is (was?) there a limitation in a > c language standard that prevents passing of these arguments as > varargs?
Well, ISO C doesn't define complex integers at all. But it's deliberate (see DR#206) that _Complex float doesn't promote to _Complex double in variable arguments. And there is nothing in ISO C to stop _Complex float being passed in variable arguments. For all these types including the complex integer ones: given that the front end doesn't promote them, they should be usable in variable arguments. -- Joseph S. Myers jos...@codesourcery.com