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

gcc 8 support #3172

Merged
merged 8 commits into from May 8, 2018

Conversation

Projects
None yet
3 participants
@stronnag
Copy link
Collaborator

commented May 6, 2018

Initial and trivial changes to compile with gcc 8.

  • Compiles and bench tests OK
  • Small reduction in code size

TODO

Resolve function pointer warnings mainly related to PG_REGISTER_ARRAY_WITH_RESET_FN and PG_REGISTER_WITH_RESET_FN

@stronnag

This comment has been minimized.

Copy link
Collaborator Author

commented May 6, 2018

Flys OK (MATEKF405, Omnibus F3)

@stronnag

This comment has been minimized.

Copy link
Collaborator Author

commented May 6, 2018

The last two commits are somewhat ugly and expedient.

  1. Accept it
  2. Reject it, and have three ugly warnings
  3. Propose a better solution, possibly involving a union of acceptable function pointer types for cms functions.

Views on the best solution are appreciated.

@digitalentity

This comment has been minimized.

Copy link
Member

commented May 6, 2018

@stronnag I'm all in for option 3 - a union (possibly unnamed) with acceptable pointer types.

@stronnag

This comment has been minimized.

Copy link
Collaborator Author

commented May 7, 2018

OK, better to do it the right way.

@digitalentity

This comment has been minimized.

Copy link
Member

commented May 7, 2018

@stronnag will you do it as a part of this PR?

@stronnag

This comment has been minimized.

Copy link
Collaborator Author

commented May 7, 2018

@stronnag

This comment has been minimized.

Copy link
Collaborator Author

commented May 7, 2018

This now compiles cleanly on GCC 8.1 without any cheating #pragma.
Sadly, it removes the some highly inventive use of casts, and as a side effect mitigates GET_ID cast.
As I don't have any CMS related gadgets, this is untested.

I'm now going to sit in a dark room and drink vodka.

@stronnag stronnag changed the title initial attempt at gcc 8 gcc 8 support May 7, 2018

@stronnag

This comment has been minimized.

Copy link
Collaborator Author

commented May 7, 2018

This now compiles cleanly on GCC 7.3 and GCC 8.1

@stronnag stronnag merged commit 60b305c into development May 8, 2018

1 check passed

continuous-integration/travis-ci/pr The Travis CI build passed
Details

@stronnag stronnag deleted the jh_gcc_8_dev branch May 8, 2018

@fiam fiam added this to the 2.0 milestone Jun 8, 2018

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
You can’t perform that action at this time.