Michael Felt
2016-Oct-10 15:16 UTC
Pacaging/build issues with AIX and vac (dovecot-2.2.25)
On 10/10/2016 14:59, Stephan Bosch wrote:> > > Op 10-10-2016 om 14:39 schreef Michael Felt: >> On 10-Oct-16 06:45, Aki Tuomi wrote: >>> Does your build end at some particular point? >> See **** DETAILS **** for in depth (I hope enough!) study/report. >>> >>> Aki >> >> I would guess this is not "c99" way... > > It seems to fail on a C99 feature called Compound Literal (see > http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1256.pdf, Section > 6.5.2.5). > > It should be supported by AIX: > > https://www.ibm.com/support/knowledgecenter/SSGH3R_13.1.3/com.ibm.xlcpp1313.aix.doc/language_ref/compound_literals.html > > > I have no idea why it would fail here. > > Regards, > > Stephan.Well, if I had the budget to buy the latest version (version 13 is your doclink) - then maybe it would work for me. I do not have the resources to upgrade from v11. Sad day for me I guess. Or lucky for me that "Compound Literal" is not used much - this is the first time I have run into it.
Stephan Bosch
2016-Oct-10 15:29 UTC
Pacaging/build issues with AIX and vac (dovecot-2.2.25)
Op 10-10-2016 om 17:16 schreef Michael Felt:> On 10/10/2016 14:59, Stephan Bosch wrote: >> >> >> Op 10-10-2016 om 14:39 schreef Michael Felt: >>> On 10-Oct-16 06:45, Aki Tuomi wrote: >>>> Does your build end at some particular point? >>> See **** DETAILS **** for in depth (I hope enough!) study/report. >>>> >>>> Aki >>> >>> I would guess this is not "c99" way... >> >> It seems to fail on a C99 feature called Compound Literal (see >> http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1256.pdf, Section >> 6.5.2.5). >> >> It should be supported by AIX: >> >> https://www.ibm.com/support/knowledgecenter/SSGH3R_13.1.3/com.ibm.xlcpp1313.aix.doc/language_ref/compound_literals.html >> >> >> I have no idea why it would fail here. >> >> Regards, >> >> Stephan. > > Well, if I had the budget to buy the latest version (version 13 is > your doclink) - then maybe it would work for me. I do not have the > resources to upgrade from v11. Sad day for me I guess. > > Or lucky for me that "Compound Literal" is not used much - this is the > first time I have run into it.Well, older versions are supposed to support it too: https://www.ibm.com/support/knowledgecenter/SSGH3R_11.1.0/com.ibm.xlcpp111.aix.doc/language_ref/compound_literals.html Regards, Stephan.
Michael Felt
2016-Oct-10 16:14 UTC
Pacaging/build issues with AIX and vac (dovecot-2.2.25)
On 10/10/2016 17:29, Stephan Bosch wrote:> > > Op 10-10-2016 om 17:16 schreef Michael Felt: >> On 10/10/2016 14:59, Stephan Bosch wrote: >>> >>> >>> Op 10-10-2016 om 14:39 schreef Michael Felt: >>>> On 10-Oct-16 06:45, Aki Tuomi wrote: >>>>> Does your build end at some particular point? >>>> See **** DETAILS **** for in depth (I hope enough!) study/report. >>>>> >>>>> Aki >>>> >>>> I would guess this is not "c99" way... >>> >>> It seems to fail on a C99 feature called Compound Literal (see >>> http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1256.pdf, Section >>> 6.5.2.5). >>> >>> It should be supported by AIX: >>> >>> https://www.ibm.com/support/knowledgecenter/SSGH3R_13.1.3/com.ibm.xlcpp1313.aix.doc/language_ref/compound_literals.html >>> >>> >>> I have no idea why it would fail here. >>> >>> Regards, >>> >>> Stephan. >> >> Well, if I had the budget to buy the latest version (version 13 is >> your doclink) - then maybe it would work for me. I do not have the >> resources to upgrade from v11. Sad day for me I guess. >> >> Or lucky for me that "Compound Literal" is not used much - this is >> the first time I have run into it. > > Well, older versions are supposed to support it too: > > https://www.ibm.com/support/knowledgecenter/SSGH3R_11.1.0/com.ibm.xlcpp111.aix.doc/language_ref/compound_literals.html > > > Regards, > > Stephan.I am trying to work on it. Hard to read until you know what you are looking at. I had already seen that 11.1 also shows the link - I guess it does not like the nested form. And, it looks as if you have too many {} pairs (one too many outside pairs) - the .info report was mentioning they were more than needed and 'skipping' iirc.
Michael Felt
2016-Oct-10 17:44 UTC
Pacaging/build issues with AIX and vac (dovecot-2.2.25)
On 10/10/2016 17:29, Stephan Bosch wrote:> > > Op 10-10-2016 om 17:16 schreef Michael Felt: >> On 10/10/2016 14:59, Stephan Bosch wrote: >>> >>> >>> Op 10-10-2016 om 14:39 schreef Michael Felt: >>>> On 10-Oct-16 06:45, Aki Tuomi wrote: >>>>> Does your build end at some particular point? >>>> See **** DETAILS **** for in depth (I hope enough!) study/report. >>>>> >>>>> Aki >>>> >>>> I would guess this is not "c99" way... >>> >>> It seems to fail on a C99 feature called Compound Literal (see >>> http://www.open-std.org/jtc1/sc22/wg14/www/docs/n1256.pdf, Section >>> 6.5.2.5). >>> >>> It should be supported by AIX: >>> >>> https://www.ibm.com/support/knowledgecenter/SSGH3R_13.1.3/com.ibm.xlcpp1313.aix.doc/language_ref/compound_literals.html >>> >>> >>> I have no idea why it would fail here. >>> >>> Regards, >>> >>> Stephan. >> >> Well, if I had the budget to buy the latest version (version 13 is >> your doclink) - then maybe it would work for me. I do not have the >> resources to upgrade from v11. Sad day for me I guess. >> >> Or lucky for me that "Compound Literal" is not used much - this is >> the first time I have run into it. > > Well, older versions are supposed to support it too: > > https://www.ibm.com/support/knowledgecenter/SSGH3R_11.1.0/com.ibm.xlcpp111.aix.doc/language_ref/compound_literals.html >As I said, or implied - reading the code was new - as actually, normally I saw the C89 way to do things. I wrote a simple test for myself to come to grips on the syntax expected - nothing nested, but seems to be passing test #1 +1 typedef struct { +2 char * p1; +3 char * p2; +4 } http_auth_param_t; +5 +6 http_auth_param_t a[] +7 { "a1", "a2", +8 "b1", "b2" +9 }; +10 +11 main() +12 { +13 http_auth_param_t b[] = { +14 (http_auth_param_t) { .p1 = "c1" }, +15 (http_auth_param_t) { .p2 = "e2" } +16 }; +17 +18 printf("%s\n", a[0].p1); +19 printf("%s\n", b[1].p2); +20 } returns: !cc c99_comp_literal.c; ./a.out a1 e2> > Regards, > > Stephan.