Any way to make this a c++ module?? #211
Replies: 5 comments
-
Hey @alvarogalloc! I'm waiting for the compilers to catch up with supporting modules. I have tested and played around with it locally, and the support was wonky. Msvc is fairly good, so I could get started with the conversion there and then later expand it to include clang/gcc. If you are using msvc, you can look into converting the single-include header into a header unit. I'm not sure if it will work, but it might :) |
Beta Was this translation helpful? Give feedback.
-
Been working on it, and I have msvc fully working with modules now! https://github.com/kgorking/ecs/blob/module_support/examples/example/example.cpp |
Beta Was this translation helpful? Give feedback.
-
Great! Also another problem I've encountered is the use of the pstl (execution policies for algorithms, etc). Clang does not have this built in libc++. I think the other two work just fine, but still it would make it easier to either change them or to put an alternative. Also i think parallel algorithms don't really have a big advantage to normal ones, measures only differ when working with real big data collections |
Beta Was this translation helpful? Give feedback.
-
I ran into problems using libc++, mostly because of it's incomplete implementation of the standard. The parallel algorithms are a c++17 feature, and they somehow still haven't gotten to implementing yet. There are also some ranges functions missing, so early on I just decided to not support it instead of having to write my way around it's shortcomings. If you use libstdc++ instead, it will work just fine. I'm making progress on getting modules working with clang-16. although the compiler is trying it's best to get in my way. |
Beta Was this translation helpful? Give feedback.
-
@alvarogalloc modules are in the main branch since the #217, and can be enabled with the cmake variable ECS_COMPILE_AS_MODULE. |
Beta Was this translation helpful? Give feedback.
-
Is there a way to bridge this library to be used with
import ...;
rather than#include<...>
?Beta Was this translation helpful? Give feedback.
All reactions