Skip to content

Fix all compiler warnings, bugs, and deprecated API usage - #62

Merged
dwarakeshbaraneetharan merged 2 commits into
umdloop:mainfrom
dwarakeshbaraneetharan:fix-build-warnings-errors
Feb 17, 2026
Merged

dwarakeshbaraneetharan merged 2 commits into
umdloop:mainfrom
dwarakeshbaraneetharan:fix-build-warnings-errors

Conversation

@dwarakeshbaraneetharan

Copy link
Copy Markdown
Contributor

Bug fixes

  • Fix assignment (=) instead of comparison (==) in manual_arm_joint_by_joint_controller.cpp
  • Zero-initialize can_frame structs in odrive_can_node.cpp to prevent undefined behavior
  • Fix format string mismatch in stepper_hardware_interface.cpp

Warning fixes

  • Remove unused variables in rmd_hardware_interface.cpp, swerve_drive_controller.cpp, talon_hardware_interface.cpp
  • Suppress unused parameter names in rmd_hardware_interface.cpp, double_ackermann_controller.cpp, odrive_can_node.cpp
  • Fix signed/unsigned comparison in smc_hardware_interface.cpp
  • Suppress unused parameter warnings in vendored CTRE Phoenix and ODrive headers
  • Fix jobserver warning

Deprecated API updates

  • Update realtime_tools includes from .h to .hpp (6 controller headers)
  • Update generate_parameter_library includes to namespaced form (6 controller headers)
  • Replace deprecated parameter_traits::OK/ERROR with tl::expected API (3 validation headers)

@IshanDutta11 IshanDutta11 left a comment

Copy link
Copy Markdown
Contributor

Choose a reason for hiding this comment

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

Looks good to me

…repo

- Fix assignment (=) vs comparison (==) bug in manual_arm_joint_by_joint_controller
- Zero-initialize can_frame structs in odrive_can_node to prevent UB
- Remove unused variables (rmd, swerve_drive) and comment out unused params (rmd, double_ackermann, odrive_can)
- Fix sign comparison warnings in smc_hardware_interface
- Fix format string mismatch in stepper_hardware_interface
- Update realtime_tools includes from deprecated .h to .hpp (6 headers)
- Update parameter includes to namespaced form (6 headers)
- Replace deprecated parameter_traits::OK/ERROR with tl::expected API (3 validation headers)
@dwarakeshbaraneetharan
dwarakeshbaraneetharan force-pushed the fix-build-warnings-errors branch 2 times, most recently from 4b40ba3 to ea5f2c3 Compare February 17, 2026 14:07
- Suppress unused parameter in CTRE Phoenix PigeonIMU_StickyFaults.h
- Suppress unused parameter in ODrive can_simple_messages.hpp (Estop/DFU)
- Remove unused joint_angle/joint_velocity in talon_hardware_interface.cpp
- Remove -Wpedantic and fix jobserver warning in umdloop_can_library CMakeLists
- Fix single_ackermann_controller.hpp includes to match main branch
@mdurrani808

Copy link
Copy Markdown
Collaborator

goated these errors always bothered me

@dwarakeshbaraneetharan
dwarakeshbaraneetharan merged commit 0b87ad9 into umdloop:main Feb 17, 2026
1 check passed
@dwarakeshbaraneetharan
dwarakeshbaraneetharan deleted the fix-build-warnings-errors branch February 17, 2026 15:27
a-cires pushed a commit to a-cires/athena-code that referenced this pull request Apr 13, 2026
* Fix all compiler warnings, bugs, and deprecated API usage across the repo

- Fix assignment (=) vs comparison (==) bug in manual_arm_joint_by_joint_controller
- Zero-initialize can_frame structs in odrive_can_node to prevent UB
- Remove unused variables (rmd, swerve_drive) and comment out unused params (rmd, double_ackermann, odrive_can)
- Fix sign comparison warnings in smc_hardware_interface
- Fix format string mismatch in stepper_hardware_interface
- Update realtime_tools includes from deprecated .h to .hpp (6 headers)
- Update parameter includes to namespaced form (6 headers)
- Replace deprecated parameter_traits::OK/ERROR with tl::expected API (3 validation headers)

* Fix remaining third-party warnings and unused variables

- Suppress unused parameter in CTRE Phoenix PigeonIMU_StickyFaults.h
- Suppress unused parameter in ODrive can_simple_messages.hpp (Estop/DFU)
- Remove unused joint_angle/joint_velocity in talon_hardware_interface.cpp
- Remove -Wpedantic and fix jobserver warning in umdloop_can_library CMakeLists
- Fix single_ackermann_controller.hpp includes to match main branch
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.

3 participants