-
Notifications
You must be signed in to change notification settings - Fork 67
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
Mention C++17 (and maybe C++20)? #130
Comments
Wrappers built with CxxWrap need to be compiled at least with |
I guess you're right, while I don't see what ties you to at least c++14. I only see "compiler_abi=CompilerABI(:gcc7,:cxx11))" in the code, and realize the ABI is a different restriction (while I think it only requires C++11). Then I'm not sure you support e.g. full C++20 (or even C++17), as it seems to require GCC 8. Is it maybe time to change to -fabi-version=13 (GCC 8.2), or even just 12, or keep 11 but still use GCC 8? https://gcc.gnu.org/gcc-8/changes.html
E.g. a line I found in the code that would need to change then:
Is it ok if I ask you some other questions in this thread on C++ support (e.g. with the optional GC)? Should I then open separate issues, even if will not be implemented soon. Below is off-topic: I do see (for GCC 9 it seems): "The D programming language front end has been added to GCC. This front end was contributed by Iain Buclaw." That language (or Go, Objective-C or Ada) would be interesting to support, but I guess outside of the scope of this (or Cxx.jl) project. Possibly D (and maybe even the other GC-using languages; and maybe C++ with the optional GC) could reuse Julia's GC (or Go's):
C++ keeps expanding, with
|
I saw in the README: "C++11 lambda and conversion for arrays" and "a functor (generic C++14 lambda here)", implicitly suggesting [full?] support for at least up to C++14
that made me think. All C++ standards up to C++17 and beyond should be supported, right? I believe it just depends on the C++ compiler supporting, not this package.
If I'm not mistaken, maybe it's best to add text explicitly saying that in the README. If course you can't guarantee compatibility with any future version (who knows what will be added, some different name mangling etc.).
Do you know of anything, in say C++17 (or coming in C++20) or in prior versions NOT supported?
--
I see Cxx.jl also added Julia 1.0 support "5 days ago". That's also awesome. There no specific C++ version is mentioned in any way, so implicit that all are supported. Feel free to mention if you know otherwise, or any differences in C++ support between these packages.
The text was updated successfully, but these errors were encountered: