Re: [courier-users] Poll: C++11 compiler support

2017-03-05 Thread Sam Varshavchik

SZÉPE Viktor writes:


Idézem/Quoting Freddie Witherden :

> Hi,
>
> On 05/03/2017 13:03, Sam Varshavchik wrote:
>>> $ 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"
>>
>> Ok, so gcc 4.4 is not going to work.
>>
>> According to https://wiki.debian.org/LTS, squeeze has EOLed a year ago.
>>
>>> 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)
>>
>> Ok, so with wheezy, and going forward, you should be ok by explicitly
>> using the -std=c++11 compiler flag.
>>
>> CentOS 5 also comes with gcc 4.4, and CentOS 5 EOLs and the end of this
>> month. But looks like CentOS 6 still uses gcc 4.4, until 2020. That's
>> likely to be problematic, but I'd still like to verify this. It's
>> remotely possible that Red Hat patched in some C++11 support in their
>> build of gcc 4.4.
>
> You can try with -std=c++0x which enables limited support and has been
> available since early 4.x releases.
>

Works on g++ 4.4:

$ g++ -std=c++0x -o utest u.c
(no output)


Ok, so squeeze should be taken care of, and most likely CentOS 5 and 6.  
Thanks for testing it.




pgpRDqpncGAhs.pgp
Description: PGP signature
--
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
courier-users@lists.sourceforge.net
Unsubscribe: https://lists.sourceforge.net/lists/listinfo/courier-users


Re: [courier-users] Poll: C++11 compiler support

2017-03-05 Thread SZÉPE Viktor
Idézem/Quoting Freddie Witherden :

> Hi,
>
> On 05/03/2017 13:03, Sam Varshavchik wrote:
>>> $ 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"
>>
>> Ok, so gcc 4.4 is not going to work.
>>
>> According to https://wiki.debian.org/LTS, squeeze has EOLed a year ago.
>>
>>> 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)
>>
>> Ok, so with wheezy, and going forward, you should be ok by explicitly
>> using the -std=c++11 compiler flag.
>>
>> CentOS 5 also comes with gcc 4.4, and CentOS 5 EOLs and the end of this
>> month. But looks like CentOS 6 still uses gcc 4.4, until 2020. That's
>> likely to be problematic, but I'd still like to verify this. It's
>> remotely possible that Red Hat patched in some C++11 support in their
>> build of gcc 4.4.
>
> You can try with -std=c++0x which enables limited support and has been
> available since early 4.x releases.
>

Works on g++ 4.4:

$ g++ -std=c++0x -o utest u.c
(no output)



SZÉPE Viktor
https://github.com/szepeviktor/debian-server-tools/blob/master/CV.md
-- 
+36-20-4242498  s...@szepe.net  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
courier-users@lists.sourceforge.net
Unsubscribe: https://lists.sourceforge.net/lists/listinfo/courier-users


Re: [courier-users] Poll: C++11 compiler support

2017-03-05 Thread Freddie Witherden
Hi,

On 05/03/2017 13:03, Sam Varshavchik wrote:
>> $ 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"
> 
> Ok, so gcc 4.4 is not going to work.
> 
> According to https://wiki.debian.org/LTS, squeeze has EOLed a year ago.
> 
>> 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)
> 
> Ok, so with wheezy, and going forward, you should be ok by explicitly
> using the -std=c++11 compiler flag.
> 
> CentOS 5 also comes with gcc 4.4, and CentOS 5 EOLs and the end of this
> month. But looks like CentOS 6 still uses gcc 4.4, until 2020. That's
> likely to be problematic, but I'd still like to verify this. It's
> remotely possible that Red Hat patched in some C++11 support in their
> build of gcc 4.4.

You can try with -std=c++0x which enables limited support and has been
available since early 4.x releases.

Regards, Freddie.

> 
> 
> --
> 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
> courier-users@lists.sourceforge.net
> Unsubscribe: https://lists.sourceforge.net/lists/listinfo/courier-users
> 




signature.asc
Description: OpenPGP digital signature
--
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
courier-users@lists.sourceforge.net
Unsubscribe: https://lists.sourceforge.net/lists/listinfo/courier-users


Re: [courier-users] Poll: C++11 compiler support

2017-03-05 Thread Sam Varshavchik

SZÉPE Viktor writes:


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"


Ok, so gcc 4.4 is not going to work.

According to https://wiki.debian.org/LTS, squeeze has EOLed a year ago.


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)


Ok, so with wheezy, and going forward, you should be ok by explicitly using  
the -std=c++11 compiler flag.


CentOS 5 also comes with gcc 4.4, and CentOS 5 EOLs and the end of this  
month. But looks like CentOS 6 still uses gcc 4.4, until 2020. That's likely  
to be problematic, but I'd still like to verify this. It's remotely possible  
that Red Hat patched in some C++11 support in their build of gcc 4.4.


pgpB3RP2KfSLP.pgp
Description: PGP signature
--
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
courier-users@lists.sourceforge.net
Unsubscribe: https://lists.sourceforge.net/lists/listinfo/courier-users


Re: [courier-users] Poll: C++11 compiler support

2017-03-05 Thread SZÉPE Viktor
Idézem/Quoting Sam Varshavchik :

> 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 
>
> 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  s...@szepe.net  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
courier-users@lists.sourceforge.net
Unsubscribe: https://lists.sourceforge.net/lists/listinfo/courier-users


[courier-users] Poll: C++11 compiler support

2017-03-05 Thread Sam Varshavchik
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 

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.





pgpQXVyrO_vcO.pgp
Description: PGP signature
--
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
courier-users@lists.sourceforge.net
Unsubscribe: https://lists.sourceforge.net/lists/listinfo/courier-users