Skip to content

cpplint checks fail for services and actions with buffers in the response/result #264

Description

@mathias-luedtke

Generated by Generative AI

No

Operating System:

any

ROS version or commit hash:

rolling, lyrical

RMW implementation (if applicable):

No response

RMW Configuration (if applicable):

No response

Client library (if applicable):

No response

'ros2 doctor --report' output

No response

Steps to reproduce issue

See #263

Expected behavior

Tests pass

Actual behavior

Tests fail

- rosidl_generator_py.cpplint_rosidl_generated_py build/include_order [4] (/ws/build/rosidl_generator_py/rosidl_generator_py/rosidl_generator_py/srv/_get_buffer_s.c:83)
  <<< failure message
    Found C system header after other header. Should be: _get_buffer_s.h, c system, c++ system, other.
  >>>

Additional information

#250 injects <stdint.h> into the headers, which might appear in the generated code after non-C headers, if the code is for services and actions, which have buffer type in their response/result/feedback, but not in the response/goal.

There are two simple fixes:

  1. silence build/include_order in the cpplint checks
  2. always add <stdint.h>

A more complicated fix would add stdint.h as in the request/goal part, if the parts use buffers.

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions