tier4 / nebula

A universal LiDAR and radar driver for ROS 2, supporting Hesai, Velodyne, Robosense and Continental sensors.
https://tier4.github.io/nebula/
Apache License 2.0
51 stars 51 forks source link

fix: make Nebula Clang-compatible #160

Closed mojomex closed 5 months ago

mojomex commented 5 months ago

PR Type

Related Links

Description

This PR moves the EIGEN_ALIGN16 from behind point structs to after the struct keyword, remaining compatible with GCC while enabling compilation with Clang (and enabling usage of all the great Clang tools :tada:)

:warning: Note: Nebula still does not compile on the newest Clang version (18) due to a tricky error in transport_drivers. The newest version I have tested with is Clang 15.

Review Procedure

The code should still compile on GCC, but now compiles on Clang as well.

Pre-Review Checklist for the PR Author

PR Author should check the checkboxes below when creating the PR.

Checklist for the PR Reviewer

Reviewers should check the checkboxes below before approval.

Post-Review Checklist for the PR Author

PR Author should check the checkboxes below before merging.

CI Checks