summaryrefslogtreecommitdiff
path: root/TAO/TAO_IDL/be/be_visitor_argument/request_info_ch.cpp
diff options
context:
space:
mode:
Diffstat (limited to 'TAO/TAO_IDL/be/be_visitor_argument/request_info_ch.cpp')
-rw-r--r--TAO/TAO_IDL/be/be_visitor_argument/request_info_ch.cpp34
1 files changed, 12 insertions, 22 deletions
diff --git a/TAO/TAO_IDL/be/be_visitor_argument/request_info_ch.cpp b/TAO/TAO_IDL/be/be_visitor_argument/request_info_ch.cpp
index 8ba93c73b82..1b3234de34e 100644
--- a/TAO/TAO_IDL/be/be_visitor_argument/request_info_ch.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_argument/request_info_ch.cpp
@@ -298,35 +298,25 @@ int be_visitor_args_request_info_ch::visit_string (be_string *node)
{
TAO_OutStream *os = this->ctx_->stream ();
- if (node->width () == 1)
+ switch (this->direction ())
{
- switch (this->direction ())
+ case AST_Argument::dir_IN:
+ *os << "const " << this->type_name (node);
+ break;
+ case AST_Argument::dir_INOUT:
+ *os << this->type_name (node);
+ break;
+ case AST_Argument::dir_OUT:
+ if (node->width () == (long) sizeof (char))
{
- case AST_Argument::dir_IN:
- *os << "const char *";
- break;
- case AST_Argument::dir_INOUT:
- *os << "char *";
- break;
- case AST_Argument::dir_OUT:
*os << "CORBA::String_out ";
- break;
}
- }
- else
- {
- switch (this->direction ())
+ else
{
- case AST_Argument::dir_IN:
- *os << "const CORBA::WChar *";
- break;
- case AST_Argument::dir_INOUT:
- *os << "CORBA::WChar *";
- break;
- case AST_Argument::dir_OUT:
*os << "CORBA::WString_out ";
- break;
}
+
+ break;
}
return 0;