PGI 16.5 and GCC 6.1.1

I just upgraded my Linux system to Fedora 24, which defaults to the GCC 6.1.1 compilers. Now, PGI complains about a lot of include files (see below). Is there a PGI release compatible with the current versions of GCC?

"/usr/include/c++/6.1.1/bits/stringfwd.h", line 69: error: expected a ";"
    template<typename _CharT, typename _Traits = char_traits<_CharT>,
    ^

"/usr/include/c++/6.1.1/bits/stringfwd.h", line 74: error: basic_string is not
          a template
    typedef basic_string<char>    string;   
            ^

"/usr/include/c++/6.1.1/bits/stringfwd.h", line 78: error: basic_string is not
          a template
    typedef basic_string<wchar_t> wstring;   
            ^

"/usr/include/c++/6.1.1/bits/stringfwd.h", line 95: error: expected a ";"
  } // namespace std
  ^

"/usr/include/c++/6.1.1/iosfwd", line 92: error: variable
          "std::_GLIBCXX_BEGIN_NAMESPACE_CXX11" has already been defined
  _GLIBCXX_BEGIN_NAMESPACE_CXX11
  ^

"/usr/include/c++/6.1.1/iosfwd", line 94: error: expected a ";"
    template<typename _CharT, typename _Traits = char_traits<_CharT>,
    ^

"/usr/include/c++/6.1.1/iosfwd", line 110: error: variable
          "std::_GLIBCXX_END_NAMESPACE_CXX11" has already been defined
  _GLIBCXX_END_NAMESPACE_CXX11
  ^

"/usr/include/c++/6.1.1/iosfwd", line 112: error: expected a ";"
    template<typename _CharT, typename _Traits = char_traits<_CharT> >
    ^

"/usr/include/c++/6.1.1/iosfwd", line 147: error: basic_stringbuf is not a
          template
    typedef basic_stringbuf<char> 	stringbuf;
            ^

"/usr/include/c++/6.1.1/iosfwd", line 159: error: basic_filebuf is not a
          template
    typedef basic_filebuf<char> 		filebuf;
            ^

"/usr/include/c++/6.1.1/iosfwd", line 187: error: basic_stringbuf is not a
          template
    typedef basic_stringbuf<wchar_t> 	wstringbuf;
            ^

"/usr/include/c++/6.1.1/iosfwd", line 199: error: basic_filebuf is not a
          template
    typedef basic_filebuf<wchar_t> 	wfilebuf;
            ^

"/usr/include/c++/6.1.1/exception", line 64: error: expected a ";"
      virtual ~exception() _GLIBCXX_TXN_SAFE_DYN _GLIBCXX_USE_NOEXCEPT;
                           ^

"/usr/include/c++/6.1.1/exception", line 69: error: expected a ";"
      what() const _GLIBCXX_TXN_SAFE_DYN _GLIBCXX_USE_NOEXCEPT;
                   ^

"/usr/include/c++/6.1.1/exception", line 81: error: expected a ";"
      virtual ~bad_exception() _GLIBCXX_TXN_SAFE_DYN _GLIBCXX_USE_NOEXCEPT;
                               ^

"/usr/include/c++/6.1.1/exception", line 85: error: expected a ";"
      what() const _GLIBCXX_TXN_SAFE_DYN _GLIBCXX_USE_NOEXCEPT;
                   ^

"/usr/include/c++/6.1.1/bits/predefined_ops.h", line 40: error: not a valid
          member class or function template declaration
        _GLIBCXX14_CONSTEXPR
        ^

"/usr/include/c++/6.1.1/bits/predefined_ops.h", line 41: error: expected a ";"
        bool
        ^

"/usr/include/c++/6.1.1/bits/predefined_ops.h", line 46: error: expected a ";"
    inline _Iter_less_iter
    ^

"/usr/include/c++/6.1.1/bits/predefined_ops.h", line 58: error: identifier
          "_Iter_less_val" is undefined
    inline _Iter_less_val
           ^

"/usr/include/c++/6.1.1/bits/predefined_ops.h", line 60: error: identifier
          "_Iter_less_val" is undefined
    { return _Iter_less_val(); }
             ^

"/usr/include/c++/6.1.1/bits/predefined_ops.h", line 62: error: identifier
          "_Iter_less_val" is undefined
    inline _Iter_less_val
           ^

"/usr/include/c++/6.1.1/bits/predefined_ops.h", line 64: error: identifier
          "_Iter_less_val" is undefined
    { return _Iter_less_val(); }
             ^

"/usr/include/c++/6.1.1/bits/predefined_ops.h", line 114: error: variable
          "__gnu_cxx::__ops::_GLIBCXX14_CONSTEXPR" is not a type name
        _GLIBCXX14_CONSTEXPR
        ^

"/usr/include/c++/6.1.1/bits/predefined_ops.h", line 115: error: member
          function with the same name as its class must be a constructor
        _Iter_comp_iter(_Compare __comp)
        ^

"/usr/include/c++/6.1.1/bits/predefined_ops.h", line 116: error: expected a ";"
  	: _M_comp(__comp)
  	^

"/usr/include/c++/6.1.1/bits/predefined_ops.h", line 127: error:
          "_GLIBCXX14_CONSTEXPR" is not a function or static data member
      _GLIBCXX14_CONSTEXPR
      ^

"/usr/include/c++/6.1.1/bits/predefined_ops.h", line 148: error: _Iter_comp_val
          is not a template
     inline _Iter_comp_val<_Compare>
            ^

"/usr/include/c++/6.1.1/bits/predefined_ops.h", line 153: error: _Iter_comp_val
          is not a template
      inline _Iter_comp_val<_Compare>
             ^

"/usr/include/c++/6.1.1/bits/stl_algobase.h", line 193: error:
          "_GLIBCXX14_CONSTEXPR" is not a function or static data member
      _GLIBCXX14_CONSTEXPR
      ^

"/usr/include/c++/6.1.1/bits/stl_algobase.h", line 315: error: __copy_move is
          not a template
      struct __copy_move<false, false, random_access_iterator_tag>
             ^

"/usr/include/c++/6.1.1/bits/stl_algobase.h", line 353: error: a template
          argument list is not allowed in a declaration of a primary template
      struct __copy_move<_IsMove, true, random_access_iterator_tag>
             ^

"/usr/include/c++/6.1.1/bits/localefwd.h", line 153: error: variable
          "std::_GLIBCXX_BEGIN_NAMESPACE_CXX11" has already been defined
  _GLIBCXX_BEGIN_NAMESPACE_CXX11
  ^

"/usr/include/c++/6.1.1/bits/localefwd.h", line 154: error: expected a ";"
    template<typename _CharT> class numpunct;
    ^

"/usr/include/c++/6.1.1/bits/localefwd.h", line 156: error: variable
          "std::_GLIBCXX_END_NAMESPACE_CXX11" is not a type name
  _GLIBCXX_END_NAMESPACE_CXX11
  ^

"/usr/include/c++/6.1.1/bits/localefwd.h", line 158: error: variable
          "std::_GLIBCXX_BEGIN_NAMESPACE_CXX11" has already been defined
  _GLIBCXX_BEGIN_NAMESPACE_CXX11
  ^

"/usr/include/c++/6.1.1/bits/localefwd.h", line 160: error: expected a ";"
    template<typename _CharT>
    ^

"/usr/include/c++/6.1.1/bits/localefwd.h", line 164: error: variable
          "std::_GLIBCXX_END_NAMESPACE_CXX11" has already been defined
  _GLIBCXX_END_NAMESPACE_CXX11
  ^

"/usr/include/c++/6.1.1/bits/localefwd.h", line 167: error: expected a ";"
    class time_base;
    ^

"/usr/include/c++/6.1.1/bits/localefwd.h", line 168: error: variable
          "std::_GLIBCXX_BEGIN_NAMESPACE_CXX11" has already been defined
  _GLIBCXX_BEGIN_NAMESPACE_CXX11
  ^

"/usr/include/c++/6.1.1/bits/localefwd.h", line 169: error: expected a ";"
    template<typename _CharT, typename _InIter =  istreambuf_iterator<_CharT> >
    ^

"/usr/include/c++/6.1.1/bits/localefwd.h", line 173: error: variable
          "std::_GLIBCXX_END_NAMESPACE_CXX11" has already been defined
  _GLIBCXX_END_NAMESPACE_CXX11
  ^

"/usr/include/c++/6.1.1/bits/localefwd.h", line 174: error: expected a ";"
    template<typename _CharT, typename _OutIter = ostreambuf_iterator<_CharT> >
    ^

"/usr/include/c++/6.1.1/bits/localefwd.h", line 182: error: expected a ";"
    template<typename _CharT, typename _InIter =  istreambuf_iterator<_CharT> >
    ^

"/usr/include/c++/6.1.1/bits/localefwd.h", line 186: error: identifier
          "_GLIBCXX_END_NAMESPACE_LDBL_OR_CXX11" is undefined
  _GLIBCXX_END_NAMESPACE_LDBL_OR_CXX11
  ^

"/usr/include/c++/6.1.1/bits/localefwd.h", line 187: error: variable
          "std::_GLIBCXX_BEGIN_NAMESPACE_CXX11" has already been defined
  _GLIBCXX_BEGIN_NAMESPACE_CXX11
  ^

"/usr/include/c++/6.1.1/bits/localefwd.h", line 188: error: expected a ";"
    template<typename _CharT, bool _Intl = false>
    ^

"/usr/include/c++/6.1.1/bits/localefwd.h", line 192: error: variable
          "std::_GLIBCXX_END_NAMESPACE_CXX11" has already been defined
  _GLIBCXX_END_NAMESPACE_CXX11
  ^

"/usr/include/c++/6.1.1/bits/localefwd.h", line 195: error: expected a ";"
    class messages_base;
    ^

"/usr/include/c++/6.1.1/bits/localefwd.h", line 196: error: variable
          "std::_GLIBCXX_BEGIN_NAMESPACE_CXX11" has already been defined
  _GLIBCXX_BEGIN_NAMESPACE_CXX11
  ^

"/usr/include/c++/6.1.1/bits/localefwd.h", line 197: error: expected a ";"
    template<typename _CharT>
    ^

"/usr/include/c++/6.1.1/bits/localefwd.h", line 201: error: variable
          "std::_GLIBCXX_END_NAMESPACE_CXX11" has already been defined
  _GLIBCXX_END_NAMESPACE_CXX11
  ^

"/usr/include/c++/6.1.1/bits/localefwd.h", line 204: error: expected a ";"
  } // namespace std
  ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 169: error: identifier
          "_GLIBCXX14_CONSTEXPR" is undefined
        _GLIBCXX14_CONSTEXPR
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 170: error: template
          parameter "_Tp" may not be redeclared in this scope
        _Tp
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 171: error: expected a ";"
        operator()(const _Tp& __x, const _Tp& __y) const
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 179: error: identifier
          "_GLIBCXX14_CONSTEXPR" is undefined
        _GLIBCXX14_CONSTEXPR
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 180: error: template
          parameter "_Tp" may not be redeclared in this scope
        _Tp
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 181: error: expected a ";"
        operator()(const _Tp& __x, const _Tp& __y) const
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 189: error: identifier
          "_GLIBCXX14_CONSTEXPR" is undefined
        _GLIBCXX14_CONSTEXPR
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 190: error: template
          parameter "_Tp" may not be redeclared in this scope
        _Tp
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 191: error: expected a ";"
        operator()(const _Tp& __x, const _Tp& __y) const
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 199: error: identifier
          "_GLIBCXX14_CONSTEXPR" is undefined
        _GLIBCXX14_CONSTEXPR
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 200: error: template
          parameter "_Tp" may not be redeclared in this scope
        _Tp
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 201: error: expected a ";"
        operator()(const _Tp& __x, const _Tp& __y) const
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 209: error: identifier
          "_GLIBCXX14_CONSTEXPR" is undefined
        _GLIBCXX14_CONSTEXPR
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 210: error: template
          parameter "_Tp" may not be redeclared in this scope
        _Tp
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 211: error: expected a ";"
        operator()(const _Tp& __x, const _Tp& __y) const
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 219: error: identifier
          "_GLIBCXX14_CONSTEXPR" is undefined
        _GLIBCXX14_CONSTEXPR
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 220: error: template
          parameter "_Tp" may not be redeclared in this scope
        _Tp
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 221: error: expected a ";"
        operator()(const _Tp& __x) const
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 355: error: expected a ";"
        bool
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 365: error: expected a ";"
        bool
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 375: error: expected a ";"
        bool
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 385: error: expected a ";"
        bool
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 395: error: expected a ";"
        bool
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 405: error: expected a ";"
        bool
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 528: error: expected a ";"
        bool
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 538: error: expected a ";"
        bool
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 548: error: expected a ";"
        bool
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 620: error: identifier
          "_GLIBCXX14_CONSTEXPR" is undefined
        _GLIBCXX14_CONSTEXPR
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 621: error: template
          parameter "_Tp" may not be redeclared in this scope
        _Tp
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 622: error: expected a ";"
        operator()(const _Tp& __x, const _Tp& __y) const
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 629: error: identifier
          "_GLIBCXX14_CONSTEXPR" is undefined
        _GLIBCXX14_CONSTEXPR
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 630: error: template
          parameter "_Tp" may not be redeclared in this scope
        _Tp
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 631: error: expected a ";"
        operator()(const _Tp& __x, const _Tp& __y) const
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 638: error: identifier
          "_GLIBCXX14_CONSTEXPR" is undefined
        _GLIBCXX14_CONSTEXPR
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 639: error: template
          parameter "_Tp" may not be redeclared in this scope
        _Tp
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 640: error: expected a ";"
        operator()(const _Tp& __x, const _Tp& __y) const
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 647: error: identifier
          "_GLIBCXX14_CONSTEXPR" is undefined
      _GLIBCXX14_CONSTEXPR
      ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 648: error: template
          parameter "_Tp" may not be redeclared in this scope
        _Tp
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 649: error: expected a ";"
        operator()(const _Tp& __x) const
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 750: error: expected a ";"
        explicit
        ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 761: error:
          "_GLIBCXX14_CONSTEXPR" is not a function or static data member
      _GLIBCXX14_CONSTEXPR
      ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 789: error:
          "_GLIBCXX14_CONSTEXPR" is not a function or static data member
      _GLIBCXX14_CONSTEXPR
      ^

"/usr/include/c++/6.1.1/bits/stl_function.h", line 838: error:
          pointer_to_unary_function is not a template
      inline pointer_to_unary_function<_Arg, _Result>
             ^

"/usr/include/c++/6.1.1/bits/basic_string.h", line 5058: error: too few
          arguments for class template "std::basic_string"
      operator==(const basic_string<_CharT>& __lhs,
                                          ^

"/usr/include/c++/6.1.1/bits/basic_string.h", line 5059: error: too few
          arguments for class template "std::basic_string"
  	       const basic_string<_CharT>& __rhs) _GLIBCXX_NOEXCEPT
  	                                ^

"/usr/include/c++/6.1.1/bits/basic_string.h", line 5058: error: nonmember
          operator requires a parameter with class or enum type
      operator==(const basic_string<_CharT>& __lhs,
      ^

"/usr/include/c++/6.1.1/bits/basic_string.h", line 5289: error: expected a ";"
      _GLIBCXX_NOEXCEPT_IF(noexcept(__lhs.swap(__rhs)))
      ^

Error limit reached.

Hello,

gcc 6.anything is not supported yet. gcc 5.3 is not supported yet.

Never a good idea to be developing code on the newest releases of Linux
and gcc, unless you want to find problems before we do.

It may be 16.9 in September before we get these supported.

gcc 5.3 requires front end work on pgc++, and that is coordinated
with EDG. 6.* may also have new features that you will never use,
but will prevent PGI from installing and running in a compatible manner.

dave



dave

ok, that’s for the reply. I compiled gcc 5.2 on that machine (actually needed to first compile gcc 5.4, since 6.1 can’t build 5.2, and then build 5.2 with 5.4), and I managed to get the PGI C++ compiler working off of the 5.2 build.

The key was to run the makelocalrc script to point everything to the separate gcc 5.2 install.

My mistake and apology.
5.2 is not supported yet needs EDG front end work for pgc++.

I am glad the current release is working for you,
but there issues that our QA exposed
that need the additional work. But we are getting there.

dave