-
Notifications
You must be signed in to change notification settings - Fork 422
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
Empty node creates asan AddressSanitizer: new-delete-type-mismatch abort on construction #1925
Comments
…ort on construction ros2/rclcpp#1925 Signed-off-by: Tomoya Fujita <[email protected]>
this can be observed on master ros2/ros2@077c53b. but i am not sure why it deallocate the different type... any thoughts? |
I wonder if this is related to #1324 . That's been a long outstanding PR that we still haven't been able to get in. |
@clalancette thanks for the info, i will look into it. |
I see I created a duplicate issue for this here: #1948 My issue has a link to a minimal example that runs in a Github Actions CI job and demonstrates this bug. You will note that this failure does not exist in Galactic. I just discovered this after migrating a project from Galactic to Rolling that runs ASAN in CI. |
I'm using galactic, and seeing the issue. I'm building from source, but specifying galactic to
|
Maybe the older version of gcc on 20.04 just doesn't catch this error. What compiler are you using when building from source? |
Gcc 10.3. It's from I'm not on 11 because a different package I depend on (not ROS related) is broken on 11, annoyingly. |
Bug report
Required Info:
rosinstall_generator
, specifyinggalactic
as the release version. Relevant revisions:rclcpp
: 2a5daafe0c12541904b72f19e4afa07c3052969drcl
: fac8347437b3d8e1e38f8e1e6728ff03c638792arclcpp
Steps to reproduce issue
Compile the following node:
main.cpp
CMakeLists.txt
:Build with colcon+asan (https://github.com/colcon/colcon-sanitizer-reports)
colcon build --mixin asan-gcc
Execute the resulting binary:
The binary aborts during startup.
Specifying
ASAN_OPTIONS=new_delete_type_mismatch=0
causes the binary to operate as expected.Expected behavior
Considering apparently asan is built as part of the standard CI process (ros2/ros2#665), I'd expect to be able to instantiate about the minimum
rclcpp
node possible without abort being called.Actual behavior
asan
triggers an abort.I think this is harmless, but it makes using asan annoying, if nothing else.
The text was updated successfully, but these errors were encountered: