Idézem/Quoting Sam Varshavchik <[email protected]>:
> The forward match of progress is requiring a clean break from the
> pre-c++11 days. Under consideration is migrating the courier-unicode
> library, used by both Courier and Cone, to use C++11's unicode
> support only.
>
> I am taking a poll whether there's still any notable platforms where
> Courier and Cone is used that's still using an old compiler that
> does not support C++11.
>
> According to gcc's documentation, gcc 4.8.1 was the first version
> with full C++11 support; but it's likely that older versions of gcc
> had sufficient support. gcc 4.5's compliance page gives Unicode
> string literals as supported, so I'm fairly confident of sufficient
> C++11 unicode support at least in gcc 4.5, at the latest.
>
> I'd like to know if your compiler does not support C++11 unicode
> strings. This can be determined with a simple test:
>
> #include <string>
>
> int main()
> {
> char32_t c=0;
> std::u32string u;
>
> return 0;
> }
>
> Save the above as "utest.C", then execute either:
>
> g++ -o utest utest.C
>
> or
>
> g++ -std=c++11 -o utest utest.C
>
> If either one completes without errors, you're good. This is if your
> compiler is "g++", of course. Certain platforms, like Debian,
> FreeBSD, and many others, might have multiple versions of gcc
> installed; typically as "g++NN". Use the appropriate command for
> your gcc.
This is the case in Debian releases:
squeeze with gcc-4.4
$ g++ -o utest u.c
u.c: In function ‘int main()’:
u.c:5: error: ‘char32_t’ was not declared in this scope
u.c:5: error: expected ‘;’ before ‘c’
u.c:6: error: ‘u32string’ is not a member of ‘std’
u.c:6: error: expected ‘;’ before ‘u’
$ g++ -std=c++11 -o utest u.c
cc1plus: error: unrecognized command line option "-std=c++11"
wheezy with gcc-4.7
$ g++ -o utest u.c
u.c: In function ‘int main()’:
u.c:5:4: error: ‘char32_t’ was not declared in this scope
u.c:5:13: error: expected ‘;’ before ‘c’
u.c:6:4: error: ‘u32string’ is not a member of ‘std’
u.c:6:19: error: expected ‘;’ before ‘u’
$ g++ -std=c++11 -o utest u.c
(no output)
jessie with gcc-4.9
$ g++ -o utest u.c
u.c: In function ‘int main()’:
u.c:5:4: error: ‘char32_t’ was not declared in this scope
char32_t c=0;
^
u.c:6:4: error: ‘u32string’ is not a member of ‘std’
std::u32string u;
^
$ g++ -std=c++11 -o utest u.c
(no output)
SZÉPE Viktor
https://github.com/szepeviktor/debian-server-tools/blob/master/CV.md
--
+36-20-4242498 [email protected] skype: szepe.viktor
Budapest, III. kerület
------------------------------------------------------------------------------
Check out the vibrant tech community on one of the world's most
engaging tech sites, SlashDot.org! http://sdm.link/slashdot
_______________________________________________
courier-users mailing list
[email protected]
Unsubscribe: https://lists.sourceforge.net/lists/listinfo/courier-users