diff options
author | parsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1999-05-02 02:04:31 +0000 |
---|---|---|
committer | parsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795> | 1999-05-02 02:04:31 +0000 |
commit | 6eee1744ae95573a7d4563a37bf2967732e5c9c9 (patch) | |
tree | 62eb09f835c704b6d98e2c3c6eb3e3b5ae4c8cec /TAO/TAO_IDL/be/be_visitor_argument/compiled_marshal_cs.cpp | |
parent | b0e4091a015bcc12830971397fea8408fe6ddfc4 (diff) | |
download | ATCD-6eee1744ae95573a7d4563a37bf2967732e5c9c9.tar.gz |
*** empty log message ***
Diffstat (limited to 'TAO/TAO_IDL/be/be_visitor_argument/compiled_marshal_cs.cpp')
-rw-r--r-- | TAO/TAO_IDL/be/be_visitor_argument/compiled_marshal_cs.cpp | 37 |
1 files changed, 35 insertions, 2 deletions
diff --git a/TAO/TAO_IDL/be/be_visitor_argument/compiled_marshal_cs.cpp b/TAO/TAO_IDL/be/be_visitor_argument/compiled_marshal_cs.cpp index 3b1ce2ebfc9..824fefabbca 100644 --- a/TAO/TAO_IDL/be/be_visitor_argument/compiled_marshal_cs.cpp +++ b/TAO/TAO_IDL/be/be_visitor_argument/compiled_marshal_cs.cpp @@ -382,8 +382,41 @@ int be_visitor_args_compiled_marshal_cs::visit_predefined_type (be_predefined_ty case AST_Argument::dir_IN: break; case AST_Argument::dir_INOUT: - *os << arg->local_name (); - break; + switch (node->pt ()) + { + case AST_PredefinedType::PT_pseudo: + case AST_PredefinedType::PT_any: + case AST_PredefinedType::PT_long: + case AST_PredefinedType::PT_ulong: + case AST_PredefinedType::PT_longlong: + case AST_PredefinedType::PT_ulonglong: + case AST_PredefinedType::PT_short: + case AST_PredefinedType::PT_ushort: + case AST_PredefinedType::PT_float: + case AST_PredefinedType::PT_double: + case AST_PredefinedType::PT_longdouble: + *os << arg->local_name (); + break; + case AST_PredefinedType::PT_char: + *os << "CORBA::Any::to_char (" << arg->local_name () << ")"; + break; + case AST_PredefinedType::PT_wchar: + *os << "CORBA::Any::to_wchar (" << arg->local_name () << ")"; + break; + case AST_PredefinedType::PT_boolean: + *os << "CORBA::Any::to_boolean (" << arg->local_name () << ")"; + break; + case AST_PredefinedType::PT_octet: + *os << "CORBA::Any::to_octet (" << arg->local_name () << ")"; + break; + default: + ACE_ERROR_RETURN ((LM_ERROR, + "be_visitor_operation_rettype_compiled_marshal_cs::" + "visit_array - " + "Bad predefined type\n"), + -1); + } + break; case AST_Argument::dir_OUT: switch (node->pt ()) { |