Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

make linbox compile with clang and libc++ on Linux and FreeBSD #21977

Closed
dimpase opened this issue Nov 26, 2016 · 16 comments
Closed

make linbox compile with clang and libc++ on Linux and FreeBSD #21977

dimpase opened this issue Nov 26, 2016 · 16 comments

Comments

@dimpase
Copy link
Member

dimpase commented Nov 26, 2016

Presently linbox assumes that clang and libc++ only come on OSX,
and breaks such a configuration by forcing low-level libstdc++-only features (see #12426, comment 109)

Upstream issue at linbox-team/linbox#46
Pull request for same at linbox-team/linbox#50

cpernet: Pull request has been merged and will be in the next coming release.

Upstream: Fixed upstream, but not in a stable release.

Component: porting

Keywords: clang, libc++

Author: François Bissey

Branch: fc68020

Reviewer: Dima Pasechnik

Issue created by migration from https://trac.sagemath.org/ticket/21977

@dimpase dimpase added this to the sage-7.5 milestone Nov 26, 2016
@dimpase
Copy link
Member Author

dimpase commented Nov 26, 2016

comment:1

reported upstream linbox-team/linbox#46

@dimpase
Copy link
Member Author

dimpase commented Nov 26, 2016

Upstream: Reported upstream. No feedback yet.

@kiwifb
Copy link
Member

kiwifb commented Apr 5, 2017

comment:2

I corrected the bit about std::_Bit_reference at the top of field/gf2.h and there is another similar problem at the end of the same file

[linbox-1.4.2] ../../linbox/field/gf2.h:1010:10: fatal error: 'bits/stl_bvector.h' file not found
[linbox-1.4.2] #include <bits/stl_bvector.h>
[linbox-1.4.2]          ^
[linbox-1.4.2] 1 error generated.

The code is

#if __cplusplus >= 201103L
#if defined( __APPLE__) && defined(__clang__)
#include <__bit_reference>
#else
#include <bits/stl_bvector.h>
#endif /* __clang__ */

You shouldn't use headers under bits directly, they are implementation dependent. Is it hard to understand?

@kiwifb
Copy link
Member

kiwifb commented Apr 5, 2017

comment:3

Also I believe it is time to re-enable spkg-check in linbox

[linbox-1.4.2] make[8]: Leaving directory '/home/fbissey/sandbox/git-fork/sage-clang/local/var/tmp/sage/build/linbox-1.4.2/src/tests'
[linbox-1.4.2] make[7]: Leaving directory '/home/fbissey/sandbox/git-fork/sage-clang/local/var/tmp/sage/build/linbox-1.4.2/src/tests'
[linbox-1.4.2] ============================================================================
[linbox-1.4.2] Testsuite summary for LinBox 1.4.2
[linbox-1.4.2] ============================================================================
[linbox-1.4.2] # TOTAL: 15
[linbox-1.4.2] # PASS:  15
[linbox-1.4.2] # SKIP:  0
[linbox-1.4.2] # XFAIL: 0
[linbox-1.4.2] # FAIL:  0
[linbox-1.4.2] # XPASS: 0
[linbox-1.4.2] # ERROR: 0
[linbox-1.4.2] ============================================================================

@kiwifb

This comment has been minimized.

@kiwifb
Copy link
Member

kiwifb commented Apr 5, 2017

New commits:

fc68020Include upstream PR50 to deal with C++ conformance spotted using clang. Also re-enable spkg-check.

@kiwifb
Copy link
Member

kiwifb commented Apr 5, 2017

Branch: u/fbissey/linbox-cpp

@kiwifb
Copy link
Member

kiwifb commented Apr 5, 2017

Commit: fc68020

@kiwifb
Copy link
Member

kiwifb commented Apr 5, 2017

Author: François Bissey

@kiwifb kiwifb modified the milestones: sage-7.5, sage-8.0 Apr 5, 2017
@dimpase
Copy link
Member Author

dimpase commented Apr 6, 2017

comment:6

I am running ptestlong on freebsd with this branch now.

@dimpase
Copy link
Member Author

dimpase commented Apr 6, 2017

Reviewer: Dima Pasechnik

@dimpase dimpase changed the title make linbox compile with clang and libc++ on Linux make linbox compile with clang and libc++ on Linux and FreeBSD Apr 6, 2017
@dimpase
Copy link
Member Author

dimpase commented Apr 7, 2017

comment:8

looks good.

@vbraun
Copy link
Member

vbraun commented Apr 8, 2017

Changed branch from u/fbissey/linbox-cpp to fc68020

@ClementPernet
Copy link
Contributor

Changed commit from fc68020 to none

@ClementPernet
Copy link
Contributor

Changed upstream from Reported upstream. No feedback yet. to Fixed upstream, but not in a stable release.

@ClementPernet

This comment has been minimized.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Projects
None yet
Development

No branches or pull requests

4 participants