Skip site navigation (1)Skip section navigation (2)
Date:      Sat, 01 Sep 2018 13:56:17 +0000
From:      bugzilla-noreply@freebsd.org
To:        python@FreeBSD.org
Subject:   maintainer-feedback requested: [Bug 231073] lang/python27: consumers cannot build with Clang in C++17 mode
Message-ID:  <bug-231073-21822-Xm2OcGB0Cl@https.bugs.freebsd.org/bugzilla/>
In-Reply-To: <bug-231073-21822@https.bugs.freebsd.org/bugzilla/>
References:  <bug-231073-21822@https.bugs.freebsd.org/bugzilla/>

next in thread | previous in thread | raw e-mail | index | archive | help
Bugzilla Automation <bugzilla@FreeBSD.org> has asked freebsd-python mailing
list <python@FreeBSD.org> for maintainer-feedback:
Bug 231073: lang/python27: consumers cannot build with Clang in C++17 mode
https://bugs.freebsd.org/bugzilla/show_bug.cgi?id=3D231073



--- Description ---
Consumers may want to switch to C++17 but some dependencies aren't ready for
Python 3.* or C++17 library may want to keep supporting Python 2.* in addit=
ion
to Python 3.*.

$ echo '#include <Python.h>' >a.cc
$ c++ -std=3Dgnu++17 $(python2.7-config --cflags) -c a.cc
In file included from a.cc:1:
In file included from /usr/local/include/python2.7/Python.h:88:
/usr/local/include/python2.7/unicodeobject.h:534:5: error: ISO C++17 does n=
ot
allow 'register' storage class
      specifier [-Wregister]
    register PyObject *obj,	/* Object */
    ^~~~~~~~~
/usr/local/include/python2.7/unicodeobject.h:553:5: error: ISO C++17 does n=
ot
allow 'register' storage class
      specifier [-Wregister]
    register PyObject *obj	/* Object */
    ^~~~~~~~~
/usr/local/include/python2.7/unicodeobject.h:575:5: error: ISO C++17 does n=
ot
allow 'register' storage class
      specifier [-Wregister]
    register const wchar_t *w,	/* wchar_t buffer */
    ^~~~~~~~~
/usr/local/include/python2.7/unicodeobject.h:593:5: error: ISO C++17 does n=
ot
allow 'register' storage class
      specifier [-Wregister]
    register wchar_t *w,	/* wchar_t buffer */
    ^~~~~~~~~
In file included from a.cc:1:
In file included from /usr/local/include/python2.7/Python.h:97:
/usr/local/include/python2.7/stringobject.h:173:5: error: ISO C++17 does not
allow 'register' storage class
      specifier [-Wregister]
    register PyObject *obj,	/* string or Unicode object */
    ^~~~~~~~~
/usr/local/include/python2.7/stringobject.h:174:5: error: ISO C++17 does not
allow 'register' storage class
      specifier [-Wregister]
    register char **s,		/* pointer to buffer variable */
    ^~~~~~~~~
/usr/local/include/python2.7/stringobject.h:175:5: error: ISO C++17 does not
allow 'register' storage class
      specifier [-Wregister]
    register Py_ssize_t *len	/* pointer to length variable or NULL
    ^~~~~~~~~
7 errors generated.



Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?bug-231073-21822-Xm2OcGB0Cl>