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

Add C++20 module #290

Merged
merged 10 commits into from
Oct 20, 2023
Merged

Add C++20 module #290

merged 10 commits into from
Oct 20, 2023

Conversation

Arthapz
Copy link
Contributor

@Arthapz Arthapz commented Oct 15, 2023

This PR add a C++20 module, enable tests with the module when WITH_MODULE define is set
and add xmake build system support (mainly to test module compilation, it's easier to write and use than CMake module support and i'm not a CMake user / expert)

the ARGPARSE_MODULE_USE_STD_MODULE can be set to remove #include of std lib for user that want to use C++23 std module
we need this because mixing #include <stdheader> / import <stdheader> with C++23 std module doesn't work well atm on clang/GCC/msvc

to try it

install xmake: https://xmake.io/#/guide/installation

> xmake f --enable_tests=y --enable_module=y --enable_samples=y
> xmake b
> xmake run argparse_tests
> xmake run argparse_module_tests
> xmake run <sample_name>

Copy link

@github-actions github-actions bot left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

⚠️ clang-tidy found issue(s) with the introduced code (1/1)

include/argparse/argparse.hpp Show resolved Hide resolved
include/argparse/argparse.hpp Show resolved Hide resolved
@Arthapz Arthapz force-pushed the master branch 2 times, most recently from 6d208c9 to 24569f6 Compare October 20, 2023 10:53
@p-ranav p-ranav merged commit 57b63b0 into p-ranav:master Oct 20, 2023
8 checks passed
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

2 participants