[cfe-dev] error: cannot combine with previous 'type-name' declaration specifier

Sean Hunt rideau3 at gmail.com
Mon Jan 11 13:04:59 PST 2010


On Mon, Jan 11, 2010 at 1:44 PM, Sascha Wildner <swildner at erpicon.de> wrote:
> Hi,
>
> encouraged by the recent improvement in clang's C++ support, I tried
> building DragonFly's devd(8) with it but am getting:
>
> clang -fno-color-diagnostics   -O -pipe  -I.
> -I/home/s/projects/dragonfly/src/sbin/devd  -g  -c devd.cc
> In file included from devd.cc:59:
> In file included from /usr/include/c++/4.1/algorithm:64:
> In file included from /usr/include/c++/4.1/bits/stl_algobase.h:69:
> In file included from /usr/include/c++/4.1/iosfwd:48:
> In file included from /usr/include/c++/4.1/bits/postypes.h:45:
> In file included from /usr/include/c++/4.1/cwchar:54:
> /usr/include/wchar.h:78:19: error: cannot combine with previous
> 'type-name' declaration specifier
> typedef __wchar_t       wchar_t;
>                         ^
> /usr/include/wchar.h:78:1: error: declaration does not declare anything
> typedef __wchar_t       wchar_t;
> ^~~~~~~~~~~~~~~~~~~~~~~~~~~~~~~
> 2 diagnostics generated.
> *** Error code 1
>
> But what is the problem here?
>
> Regards,
> Sascha

wchar_t is a built-in type specifier and it looks like that libstdc++
version, old as it is, is not checking for this, so it's like trying
to typedef __int int; which obviously won't work.

Perhaps this is another place where we special-case a typedef rule to
support older versions of libstdc++?

Sean

P.S. This message was orinally sent directly to Sascha; I still have
not gotten a hang of this list. Sorry for the duplicate, Sascha!




More information about the cfe-dev mailing list