summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorFred Hornsey <hornseyf@objectcomputing.com>2018-11-27 18:51:38 -0600
committerFred Hornsey <hornseyf@objectcomputing.com>2018-11-27 18:51:38 -0600
commit9e917ac7c86bd331ed71519b4e25a965fcb5a688 (patch)
tree56d20d2d1c1682002125a97c07ca25f17a387d6a
parent37d93f76dcc5a0c0c3dfbf17e7c4d8ad3f212e10 (diff)
downloadATCD-9e917ac7c86bd331ed71519b4e25a965fcb5a688.tar.gz
tao_idl: Allow Single Nameless Anno. Param.
-rw-r--r--TAO/TAO_IDL/ast/ast_annotation_appl.cpp11
1 files changed, 11 insertions, 0 deletions
diff --git a/TAO/TAO_IDL/ast/ast_annotation_appl.cpp b/TAO/TAO_IDL/ast/ast_annotation_appl.cpp
index abd8ad3fe2b..8a88364c654 100644
--- a/TAO/TAO_IDL/ast/ast_annotation_appl.cpp
+++ b/TAO/TAO_IDL/ast/ast_annotation_appl.cpp
@@ -155,6 +155,17 @@ AST_Annotation_Appl::find_param (const char *name)
Params *parameters = params ();
if (parameters)
{
+ // Check for single nameless parameter
+ if (parameters->size () == 1)
+ {
+ Param *top;
+ parameters->top (top);
+ if (top && !top->id && top->expr)
+ {
+ // Don't reuse it if used
+ return top->used ? 0 : top;
+ }
+ }
Param **param;
for (Param::Iterator it (*parameters);
!it.done (); it.advance ())