Re: V7R3 C++ questions

Kelly Beard <[email protected]>
Newsgroups gmane.comp.lang.as400.c
Message-ID <CAOvM2St4hs8d7dSP_KhuzWGoxcPctnQC-1N_T8o0y88dTLr8ZA@mail.gmail.com>
Sorry, but I cannot drop the issues I'm having with the V7R3 C++ compiler.

On our new system, ixlc points to this

/bin/ixlc -> /qsys.lib/qdevtools.lib/qczcxlc.pgm

Everytime I run it, a QPRINT spool file gets created which contains the
following, which I assume is debug statements:

Bytes_Return = 35
Bytes_Avail = 35
Libs_In_Syslibl = 0
Prod_Libs = 0
Curr_Libs = 0
Libs_In_Usrlibl = 0
Lib_Name = 'BEAK      '

That's it.  I also can't use the compile option "-qlanglvl=..." like the
following:

ixlc -+ QUSRJOBI_0400.cpp -omother -qprint -prtmsgid -qlanglvl=*extended0x
INVALID COMPILING OPTIONS:-qlanglvl=*extended0x

This, however, works fine

CRTBNDCPP PGM(BEAK/MOTHER)
          SRCSTMF('/home/beak/QUSRJOBI_0400.cpp')
          OUTPUT(*print)
          LANGLVL(*EXTENDED0X)
          TGTRLS(V7R3M0)

If I am reading the V7R3 C++ reference manual correctly, I should be
getting more print statements out than I am.  This program code

#include <iostream>
#include <string>
#include <sstream>
#include <iomanip>
#include <unistd.h>
using namespace std;

void function()
{
    cout << __FUNCTION__ << ": I will do nothing sir, and like it!" << endl;
}


int main(int argc, char* argv[])
{
#if defined(__C99_FUNC__)
    cout << "__C99_FUNC__ yes" << endl;
#endif
    cout << __IBMCPP__ << endl;
#if defined(__IBMCPP_NULLPTR)
    cout << "__IBMCPP_NULLPTR yes" << endl;
#endif
#if defined(__IBMCPP_CONSTEXPR)
    cout << "__IBMCPP_CONSTEXPR yes" << endl;
#endif
    cout <<  __C99_MAX_LINE_NUMBER << endl;
    cout <<  __FUNCTION__          << endl;
    function();
}

Doesn't print anything in regards to __C99_FUNC__, __IBMCPP_NULLPTR or
__IBMCPP_CONSTEXPR.  I thought that they should if the *EXTENDED0X option
is specified.


On Fri, Feb 3, 2017 at 2:09 PM, Justin Taylor <[email protected]> wrote:

> Thanks
>
> -----Original Message-----
> From: Aaron Albertson [mailto:albertaa-r/[email protected]]
> Sent: Friday, February 03, 2017 12:50 PM
> To: Bare Metal Programming IBM i (AS/400 and iSeries) <c400-l-Zwy7GipZuJhWk0Htik3J/[email protected]
> >
> Subject: Re: [C400-L] V7R3 C++ questions
>
>
> Hi Justin,
>
>         My apologies for misremembering the original question.  I looked
> at the 7.1 version of the supported language extensions, and as you said,
> C++
> 11 does not appear in that list.  That means that either C++ 11 is
> entirely unsupported or only a small subset of C++ 11 features are
> supported.  You can assume that any set of compiler features that does not
> appear in the list is either not supported or only partially supported.
>
>         IBM i 7.1 GA'ed in 2010, prior to the ratification of C++ 11 in
> 2011.
> There might be some limited subset of the functionality in the compiler,
> implemented with the assumption that they would become part of the standard
> when it was ratified.  If there is a particular function that you are
> interested in you should try it to see if it is part of the compiler.
>
> Thanks,
>
> Aaron Albertson
>
>
>
> --
> This is the Bare Metal Programming IBM i (AS/400 and iSeries) (C400-L)
> mailing list
> To post a message email: C400-L-Zwy7GipZuJhWk0Htik3J/[email protected]
> To subscribe, unsubscribe, or change list options,
> visit: http://lists.midrange.com/mailman/listinfo/c400-l
> or email: C400-L-request-Zwy7GipZuJhWk0Htik3J/[email protected]
> Before posting, please take a moment to review the archives
> at http://archive.midrange.com/c400-l.
>
>


-- 
Kelly Beard
-- 
This is the Bare Metal Programming IBM i (AS/400 and iSeries) (C400-L) mailing list
To post a message email: C400-L-Zwy7GipZuJhWk0Htik3J/[email protected]
To subscribe, unsubscribe, or change list options,
visit: http://lists.midrange.com/mailman/listinfo/c400-l
or email: C400-L-request-Zwy7GipZuJhWk0Htik3J/[email protected]
Before posting, please take a moment to review the archives
at http://archive.midrange.com/c400-l.
lmpx.com only provides a reader for public news (NNTP) servers. It is not affiliated with the servers or forums shown here and is not responsible for the content of articles, which is written by their respective authors.