-
Notifications
You must be signed in to change notification settings - Fork 381
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
Add IDL4 map support to TAO #1842
Conversation
@iguessthislldo, I believe the parsing is done, are you able to take a look at this. |
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.
I'm not sure if including the MPC submodule is intentional or not. If it is, I think it would better for a separate PR.
That was not intentional, will remove it, thanks for the review |
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.
Why remove a legal IDL test case? What problem do some compilers have? When this is a real issue for you, maybe leave it commented out, when all compilers work again you can remove the comment (add a comment why you disable it)
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.
I see now that IDL 4.2 allows any type as key type, which looks to be not correct, reported an issue for that, not all types can be compared
Sorry for the lack of details, was mainly testing and setting my dev environment back up. But yes, we can create maps with structs as keys, but it'll fail to compile when trying to use them for anything due to a lack of comparison operators |
See https://github.com/RemedyIT/taox11/blob/master/tao/x11/bounded_map_t.h for some work in progress for a bounded map type. Just compilation of declaring a map, haven't tested at all, this is taken from our bounded sequence support |
Is it possible to split adding a bounded map into a separate PR as this one is huge as it is? |
I would okay with that. I was already rereviewing this because we'd like to get this in before OpenDDS 4 and I don't want to make things harder. |
No problem with that, just wanted to let you know that I am working on IDL4 to C++11 as part of TAOX11. The parsing support in RIDL is much easier compared to TAO_IDL. Doing this step by step, for marshaling I want to look at how TAO now marshals a sequence of a struct with a key and value and do something similar for a map. |
I managed to add ostream and CDR support to TAOX11 for a IDL4 map (bounded and unbounded). Just created a PR with the CDR support and a basic test, a CORBA client and server who can exchange a IDL4 map remotely, see RemedyIT/taox11#308 |
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.
Apologies it took so long to come back to this. Disregarding bounded maps, I think everything looks okay for now. Only need to address two unused parameter names.
Co-authored-by: Fred Hornsey <fred@hornsey.us>
Co-authored-by: Fred Hornsey <fred@hornsey.us>
Can you add this enhancement to the TAO/NEWS file? |
Small new PR here: #2098 |
@tmayoff New coverity issue, can you make a PR?
|
Test should have been added to the test lst file, see #2104 |
This a WIP PR for adding maps to tao_idl. Currently I have the flex/bison and ast generation working (although a tad messy), as well as a simple test to verify it doesn't crash.
OpenDDS/OpenDDS#3236