-
Notifications
You must be signed in to change notification settings - Fork 10
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
Update xtypes #113
Merged
Merged
Update xtypes #113
Changes from 1 commit
Commits
Show all changes
49 commits
Select commit
Hold shift + click to select a range
09aa5b6
Refs 16497. CMake upgrade.
9759c2e
Refs 16497. Fixing cross-platform issues.
d8b7827
Refs 16497. Fixing cross-platform issues.
ae117a5
Refs 16497. Update peglib api.
2140440
Refs 16497. Preprocessor strategy refactored
5aa3020
Refs 16497. Fixing gtest on windows
737860a
Refs 16497. Fixing testing
f1de241
Refs 16497. Fixing testing
48c4260
Refs 16497. Fixing testing
0ced5c0
Refs 16497. Populating test environment to locate preprocessor on win…
377a0dd
Refs 16497. Introducing some c++17 improvements
abdc04b
Refs 16497. Fixing encoding issues.
caedbef
Refs 16497. Enabling ctest for individual gtest execution
1e95e8a
Refs 16497. Fixing Parser::is_token()
2d82086
Refs 16497. Refactor static Parser object lifeliness
7a78e99
Refs 16497. Fix pipes crossplatform issues
9bb112e
Refs 16497. Refactor temporary filename generation. Fixings on crossp…
8ac4da9
Refs 16497. Fixing testing if xtypes exceptions are disabled
7f1461d
Refs 16497. Forcing current workding dir as preprocessor include path.
2522234
Refs 16497. Fixing windows type size on tests literals
2576179
Refs 16497. Match preprocessor and build platform and add copyright.
f5989aa
Refs 16497. Module ownership refactor from Parser to Context.
e0cf42f
Refs 16497. Simplify temporary files management
14f32e4
Refs 16497. Add github source indexing to pdb files
6c51e53
Refs 16497. Enabling Windows Error Reporting for ci purposes
0132181
Refs 16497. Fix the examples
81c70f8
Refs 16497. Fixing old ci
1696ece
Refs 16497. avoid deprecated string conversions
6fcb0c4
Refs 16497. New CI
7465b7e
Refs 16497. fixing clang/OS X errors
e1db308
Refs 16497. Fixing move semantics on DynamicData
fed71ef
Refs 16497. Compile warnings as errors.
a10b7ce
Refs 16497. Fixing clang/OS X errors
e30d3b3
Refs 16497. Avoid using as primitive size_t whose definition is platf…
8eae165
Refs 16497. Fixing assertion regex usage
bfdd7ae
Refs 16497. Nightly CI
8d2443a
Fix c++20 compatibility issues
cb25040
Refs 16497. Fix C++20 compatibility issues
9b69a74
Refs 16497. Refactor to link DataType lifecycle to their associated o…
87522f7
Refs 16497. Allow custom cpp-peglib version selection
2a6168a
Refs 16497. Added test StructType.russkel_issue
05c955a
Fix some errors
8e58611
Print types with scope
9b57378
Modify generator to return also the IDL separated by structures
f7be0a3
update log traces
1d2dc38
Print types with scope
49c936b
Fixing parser tool pin point issue
dc74a6d
Making platform tool distro independent
f22f500
Joakim Haugen's review
File filter
Filter by extension
Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
There are no files selected for viewing
This file contains bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
If the environment variable is undefined,
std::getenv
returns a null pointer. Thestd::string
constructor throws astd::logic_error
instead of the graceful exit message. Suggestconst char* distro = std::getenv("ROS_DISTRO");
, check for null pointer and construct distro string in else.. + std::string(distro) +..
.Is the
xtypes_idl_validator
only intended for ROS? The current implementation demandsROS_DISTRO
to be defined.There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Got me! I turns out that construct a
std::string
fromnullptr
is undefined behavior. On MSVC leads to an empty string and in gcc astd::logic_error
is raised. Crossplatform pitfalls 🙄.We only used
xtypes_idl_validator
in an Integration-Service ROS2-SH related project. It is interesting for us to fail without a ROS2 overlay. But is a good hint too. Let's turn it into a warning.