Reduce compiler requirement to C++0x? #73

Closed
petterreinholdtsen opened this Issue Aug 12, 2016 · 2 comments

Comments

Projects
None yet
2 participants
@petterreinholdtsen
Contributor

petterreinholdtsen commented Aug 12, 2016

The current code no longer seem to require --std=c++11, and build just fine with --std=c++0x. Perhaps the requirement in the README should be reduced a little bit? It work with GCC 4.9 in Debian Stable.

If you agree, I suggest something like this should be applied to the source.

index f0e3955..960f5b0 100644
--- a/README.md
+++ b/README.md
@@ -22,7 +22,7 @@ that Counts with Causal Profiling
 Coz, our prototype causal profiler, runs with unmodified Linux executables. Coz requires:

 - [Python](http://www.python.org)
-- [Clang 3.1 or newer](http://clang.llvm.org) or another compiler with C++11 support
+- [Clang 3.1 or newer](http://clang.llvm.org) or another compiler with C++0x support
 - [Linux](http://kernel.org) version 2.6.32 or newer (must support the `perf_event_open` system call)

 ## Building
@ccurtsinger

This comment has been minimized.

Show comment
Hide comment
@ccurtsinger

ccurtsinger Aug 15, 2016

Member

C++0x isn't a formal standard, so I don't want to promise that it will work with any compiler that accepts --std=c++0x. GCC 4.6 is the most recent version that doesn't accept the C++11 flag, and the latest release on this branch was over 3 years ago.

We could add a disclaimer that says older versions may work. It may even be reasonable to have the Makefile check if the C++ compiler accepts --std=c++11 and fall back to 0x if it doesn't.

Member

ccurtsinger commented Aug 15, 2016

C++0x isn't a formal standard, so I don't want to promise that it will work with any compiler that accepts --std=c++0x. GCC 4.6 is the most recent version that doesn't accept the C++11 flag, and the latest release on this branch was over 3 years ago.

We could add a disclaimer that says older versions may work. It may even be reasonable to have the Makefile check if the C++ compiler accepts --std=c++11 and fall back to 0x if it doesn't.

@petterreinholdtsen

This comment has been minimized.

Show comment
Hide comment
@petterreinholdtsen

petterreinholdtsen Aug 16, 2016

Contributor

Right. My point was just to mention that the code now build with more compilers and do not seem to require any C++11 features not present when using --std=c++0x.

Contributor

petterreinholdtsen commented Aug 16, 2016

Right. My point was just to mention that the code now build with more compilers and do not seem to require any C++11 features not present when using --std=c++0x.

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