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

Testing full C++ compatibility of the headers #319

Closed
steve-s opened this issue May 5, 2022 · 3 comments
Closed

Testing full C++ compatibility of the headers #319

steve-s opened this issue May 5, 2022 · 3 comments
Milestone

Comments

@steve-s
Copy link
Contributor

steve-s commented May 5, 2022

In order to make sure HPy headers are fully C++ compatible, we need to have C++ tests that exercise all macros and static inline functions. Some ideas:

  • use pycparser to extract a list of all static inline functions and macros from the headers
    • can pycparser do that?
  • check that the tests are calling all of them
    • how to check? Just "grep" the test sources may be enough?
    • how to test?
      • pytest tests (maybe we can reuse some existing ones and just run them with C++ compiler)
      • C++ "proof of concept" extension

Related:

@steve-s
Copy link
Contributor Author

steve-s commented May 6, 2022

With #321 we are running the tests with a C++ compiler. What remains is to make sure that we test all macros and inline functions, but in general we may want to do some test coverage that would show this too.

@steve-s
Copy link
Contributor Author

steve-s commented Nov 3, 2022

I would say this is fixed by #321 and #375 is a follow-up that's maybe not as important to be part of the first milestone.

@steve-s steve-s closed this as completed Nov 3, 2022
@KubaO
Copy link
Contributor

KubaO commented Jun 20, 2023

See also #441 for a manifestation of this problem under MSVC.

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

No branches or pull requests

3 participants