[patch][pr12684] Use the new mingw abi
Rafael EspĂndola
rafael.espindola at gmail.com
Fri Nov 22 08:32:38 PST 2013
Can you send me a preprocessed file?
On 21 November 2013 03:55, Yaron Keren <yaron.keren at gmail.com> wrote:
> Hi Rafael,
>
> clang can't compile libcxx/src/valarray.cpp after applying the patch (error
> message below).
> Without the patch it compiles OK. I checked and verified with and without.
>
> Yaron
>
> In file included from ../src/valarray.cpp:12:
> /my/ceemple/libcxx/include\valarray:1009:60: error: explicit instantiation
> of
> 'valarray' does not refer to a function template, variable template,
> member function, member class, or static data member
> _LIBCPP_EXTERN_TEMPLATE(_LIBCPP_FUNC_VIS valarray<size_t>::valarray(size_t))
> ^
> ../src/valarray.cpp:10:54: note: expanded from macro
> '_LIBCPP_EXTERN_TEMPLATE'
>
> #define _LIBCPP_EXTERN_TEMPLATE(...) extern template __VA_ARGS__;
> ^
> In file included from ../src/valarray.cpp:12:
> /my/ceemple/libcxx/include\valarray:1010:60: error: explicit instantiation
> of
> '~valarray' does not refer to a function template, variable template,
> member function, member class, or static data member
> _LIBCPP_EXTERN_TEMPLATE(_LIBCPP_FUNC_VIS valarray<size_t>::~valarray())
> ^
> ../src/valarray.cpp:10:54: note: expanded from macro
> '_LIBCPP_EXTERN_TEMPLATE'
>
> #define _LIBCPP_EXTERN_TEMPLATE(...) extern template __VA_ARGS__;
> ^
> In file included from ../src/valarray.cpp:12:
> /my/ceemple/libcxx/include\valarray:1011:65: error: explicit instantiation
> of
> 'resize' does not refer to a function template, variable template,
> member function, member class, or static data member
> _LIBCPP_EXTERN_TEMPLATE(_LIBCPP_FUNC_VIS void valarray<size_t>::resize...
> ^
> ../src/valarray.cpp:10:54: note: expanded from macro
> '_LIBCPP_EXTERN_TEMPLATE'
>
> #define _LIBCPP_EXTERN_TEMPLATE(...) extern template __VA_ARGS__;
> ^
> ../src/valarray.cpp:16:28: error: explicit instantiation of 'valarray' does
> not refer to a function template, variable template, member function,
> member class, or static data member
> template valarray<size_t>::valarray(size_t);
> ^
> ../src/valarray.cpp:17:28: error: explicit instantiation of '~valarray' does
> not refer to a function template, variable template, member function,
> member class, or static data member
>
>
> 2013/11/20 Rafael EspĂndola <rafael.espindola at gmail.com>
>>
>> On 19 November 2013 19:39, NAKAMURA Takumi <geek4civic at gmail.com> wrote:
>> > Rafael,
>> >
>> > Oh yeah, ... It seems C++ ABI diverged between Cygwin and Mingw since
>> > 4.7...
>> > (FYI, also cygwin64 is different from x86_64-mingw32 in some point...)
>>
>> Good catch. I confirmed this with a native gcc 4.8 on cywin. The
>> updated patch change the abi only for mingw and adds a cygwin test.
>>
>> Cheers,
>> Rafael
>>
>> _______________________________________________
>> cfe-commits mailing list
>> cfe-commits at cs.uiuc.edu
>> http://lists.cs.uiuc.edu/mailman/listinfo/cfe-commits
>>
>
More information about the cfe-commits
mailing list