diff options
Diffstat (limited to 'TAO/TAO_IDL/ast')
31 files changed, 0 insertions, 9411 deletions
diff --git a/TAO/TAO_IDL/ast/Makefile b/TAO/TAO_IDL/ast/Makefile deleted file mode 100644 index 9cc6c17fb69..00000000000 --- a/TAO/TAO_IDL/ast/Makefile +++ /dev/null @@ -1,1376 +0,0 @@ -#---------------------------------------------------------------------------- -# $Id$ -# -# Makefile for libast -#---------------------------------------------------------------------------- - -MAKEFILE = Makefile -LIBNAME = libast -LIB = $(LIBNAME).a -SHLIB = $(LIBNAME).$(SOEXT) -IDL_CFE_VERSION = \"1.3.0\" - -# These are components that are sources of -AST_FILES = \ - ast_array \ - ast_argument \ - ast_attribute \ - ast_check \ - ast_concrete_type \ - ast_constant \ - ast_decl \ - ast_enum \ - ast_enum_val \ - ast_exception \ - ast_expression \ - ast_field \ - ast_interface \ - ast_interface_fwd \ - ast_module \ - ast_native \ - ast_operation \ - ast_predefined_type \ - ast_root \ - ast_sequence \ - ast_string \ - ast_structure \ - ast_type \ - ast_typedef \ - ast_union \ - ast_union_branch \ - ast_union_label \ - ast_generator \ - ast_redef \ - ast_recursive - -FILES = $(AST_FILES) - -LSRC = $(addsuffix .cpp,$(FILES)) -LOBJ = $(addsuffix .o,$(FILES)) -SHOBJ = $(addsuffix .so,$(FILES)) - - -LDLIBS = -lACE -LIBS = -lACE -VLDLIBS = $(LDLIBS:%=%$(VAR)) - -BUILD = $(VSHLIB) #$(VLIB) - - -#---------------------------------------------------------------------------- -# Include macros and targets -#---------------------------------------------------------------------------- - -include $(ACE_ROOT)/include/makeinclude/wrapper_macros.GNU -include $(ACE_ROOT)/include/makeinclude/macros.GNU -include $(ACE_ROOT)/include/makeinclude/rules.common.GNU -include $(ACE_ROOT)/include/makeinclude/rules.nonested.GNU -include $(ACE_ROOT)/include/makeinclude/rules.lib.GNU -include $(ACE_ROOT)/include/makeinclude/rules.bin.GNU -include $(ACE_ROOT)/include/makeinclude/rules.local.GNU - -#---------------------------------------------------------------------------- -# Local targets (and local hacks) -#---------------------------------------------------------------------------- - -CPPFLAGS += -I../include -I. -DCPP_LOCATION=\"$(CXX)\" -DIDL_CFE_VERSION=$(IDL_CFE_VERSION) - -#---------------------------------------------------------------------------- -# Dependencies -#---------------------------------------------------------------------------- - -# DO NOT DELETE THIS LINE -- g++dep uses it. -# DO NOT PUT ANYTHING AFTER THIS LINE, IT WILL GO AWAY. - -.obj/ast_array.o .obj/ast_array.so .shobj/ast_array.o .shobj/ast_array.so: ast_array.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h -.obj/ast_argument.o .obj/ast_argument.so .shobj/ast_argument.o .shobj/ast_argument.so: ast_argument.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h -.obj/ast_attribute.o .obj/ast_attribute.so .shobj/ast_attribute.o .shobj/ast_attribute.so: ast_attribute.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h -.obj/ast_check.o .obj/ast_check.so .shobj/ast_check.o .shobj/ast_check.so: ast_check.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h -.obj/ast_concrete_type.o .obj/ast_concrete_type.so .shobj/ast_concrete_type.o .shobj/ast_concrete_type.so: ast_concrete_type.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h -.obj/ast_constant.o .obj/ast_constant.so .shobj/ast_constant.o .shobj/ast_constant.so: ast_constant.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h -.obj/ast_decl.o .obj/ast_decl.so .shobj/ast_decl.o .shobj/ast_decl.so: ast_decl.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h -.obj/ast_enum.o .obj/ast_enum.so .shobj/ast_enum.o .shobj/ast_enum.so: ast_enum.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h -.obj/ast_enum_val.o .obj/ast_enum_val.so .shobj/ast_enum_val.o .shobj/ast_enum_val.so: ast_enum_val.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h -.obj/ast_exception.o .obj/ast_exception.so .shobj/ast_exception.o .shobj/ast_exception.so: ast_exception.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h -.obj/ast_expression.o .obj/ast_expression.so .shobj/ast_expression.o .shobj/ast_expression.so: ast_expression.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h -.obj/ast_field.o .obj/ast_field.so .shobj/ast_field.o .shobj/ast_field.so: ast_field.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h -.obj/ast_interface.o .obj/ast_interface.so .shobj/ast_interface.o .shobj/ast_interface.so: ast_interface.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h -.obj/ast_interface_fwd.o .obj/ast_interface_fwd.so .shobj/ast_interface_fwd.o .shobj/ast_interface_fwd.so: ast_interface_fwd.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h -.obj/ast_module.o .obj/ast_module.so .shobj/ast_module.o .shobj/ast_module.so: ast_module.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h -.obj/ast_native.o .obj/ast_native.so .shobj/ast_native.o .shobj/ast_native.so: ast_native.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h -.obj/ast_operation.o .obj/ast_operation.so .shobj/ast_operation.o .shobj/ast_operation.so: ast_operation.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h -.obj/ast_predefined_type.o .obj/ast_predefined_type.so .shobj/ast_predefined_type.o .shobj/ast_predefined_type.so: ast_predefined_type.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h -.obj/ast_root.o .obj/ast_root.so .shobj/ast_root.o .shobj/ast_root.so: ast_root.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h -.obj/ast_sequence.o .obj/ast_sequence.so .shobj/ast_sequence.o .shobj/ast_sequence.so: ast_sequence.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h -.obj/ast_string.o .obj/ast_string.so .shobj/ast_string.o .shobj/ast_string.so: ast_string.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h -.obj/ast_structure.o .obj/ast_structure.so .shobj/ast_structure.o .shobj/ast_structure.so: ast_structure.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h -.obj/ast_type.o .obj/ast_type.so .shobj/ast_type.o .shobj/ast_type.so: ast_type.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h -.obj/ast_typedef.o .obj/ast_typedef.so .shobj/ast_typedef.o .shobj/ast_typedef.so: ast_typedef.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h -.obj/ast_union.o .obj/ast_union.so .shobj/ast_union.o .shobj/ast_union.so: ast_union.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h -.obj/ast_union_branch.o .obj/ast_union_branch.so .shobj/ast_union_branch.o .shobj/ast_union_branch.so: ast_union_branch.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h -.obj/ast_union_label.o .obj/ast_union_label.so .shobj/ast_union_label.o .shobj/ast_union_label.so: ast_union_label.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h -.obj/ast_generator.o .obj/ast_generator.so .shobj/ast_generator.o .shobj/ast_generator.so: ast_generator.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h -.obj/ast_redef.o .obj/ast_redef.so .shobj/ast_redef.o .shobj/ast_redef.so: ast_redef.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h -.obj/ast_recursive.o .obj/ast_recursive.so .shobj/ast_recursive.o .shobj/ast_recursive.so: ast_recursive.cpp ../include/idl.h \ - $(ACE_ROOT)/ace/ACE.h \ - $(ACE_ROOT)/ace/OS.h \ - $(ACE_ROOT)/ace/inc_user_config.h \ - $(ACE_ROOT)/ace/config.h \ - $(ACE_ROOT)/ace/streams.h \ - $(ACE_ROOT)/ace/Basic_Types.h \ - $(ACE_ROOT)/ace/Basic_Types.i \ - $(ACE_ROOT)/ace/OS.i \ - $(ACE_ROOT)/ace/Trace.h \ - $(ACE_ROOT)/ace/Log_Msg.h \ - $(ACE_ROOT)/ace/Log_Record.h \ - $(ACE_ROOT)/ace/Log_Priority.h \ - $(ACE_ROOT)/ace/Log_Record.i \ - $(ACE_ROOT)/ace/Version.h \ - $(ACE_ROOT)/ace/ACE.i \ - ../include/intlmacros.h ../include/idl_narrow.h \ - ../include/idl_defines.h ../include/idl_fwd.h ../include/idl_bool.h \ - ../include/utl_string.h ../include/utl_identifier.h ../include/ast.h \ - ../include/utl_scoped_name.h ../include/ast_decl.h \ - ../include/ast_expression.h ../include/utl_scope.h \ - ../include/ast_type.h ../include/ast_concrete_type.h \ - ../include/ast_predefined_type.h ../include/ast_module.h \ - ../include/ast_root.h ../include/ast_interface.h \ - ../include/ast_interface_fwd.h ../include/ast_structure.h \ - ../include/ast_exception.h ../include/ast_enum.h \ - ../include/ast_operation.h ../include/utl_list.h \ - ../include/ast_field.h ../include/ast_argument.h \ - ../include/ast_attribute.h ../include/ast_union.h \ - ../include/ast_union_branch.h ../include/ast_union_label.h \ - ../include/ast_constant.h ../include/ast_enum_val.h \ - ../include/ast_array.h ../include/ast_sequence.h \ - ../include/ast_string.h ../include/ast_typedef.h \ - ../include/ast_native.h ../include/utl_strlist.h \ - ../include/utl_exprlist.h ../include/ast_generator.h \ - ../include/util.h ../include/utl_stack.h ../include/utl_idlist.h \ - ../include/utl_exceptlist.h ../include/utl_namelist.h \ - ../include/utl_labellist.h ../include/utl_decllist.h \ - ../include/idl_global.h ../include/utl_error.h \ - ../include/utl_indenter.h ../include/idl_extern.h \ - ../include/fe_extern.h ../include/be_extern.h ../include/drv_extern.h \ - ../include/ast_extern.h ../include/nr_extern.h \ - ../include/global_extern.h - -# IF YOU PUT ANYTHING HERE IT WILL GO AWAY diff --git a/TAO/TAO_IDL/ast/ast_argument.cpp b/TAO/TAO_IDL/ast/ast_argument.cpp deleted file mode 100644 index 496922bf326..00000000000 --- a/TAO/TAO_IDL/ast/ast_argument.cpp +++ /dev/null @@ -1,154 +0,0 @@ -// $Id$ - -/* - -COPYRIGHT - -Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United -States of America. All Rights Reserved. - -This product is protected by copyright and distributed under the following -license restricting its use. - -The Interface Definition Language Compiler Front End (CFE) is made -available for your use provided that you include this license and copyright -notice on all media and documentation and the software program in which -this product is incorporated in whole or part. You may copy and extend -functionality (but may not remove functionality) of the Interface -Definition Language CFE without charge, but you are not authorized to -license or distribute it to anyone else except as part of a product or -program developed by you or with the express written consent of Sun -Microsystems, Inc. ("Sun"). - -The names of Sun Microsystems, Inc. and any of its subsidiaries or -affiliates may not be used in advertising or publicity pertaining to -distribution of Interface Definition Language CFE as permitted herein. - -This license is effective until terminated by Sun for failure to comply -with this license. Upon termination, you shall destroy or return all code -and documentation for the Interface Definition Language CFE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF -ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS -FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF -DEALING, USAGE OR TRADE PRACTICE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT -ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES -TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. - -SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH -RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY -INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. - -IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR -ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL -DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -Use, duplication, or disclosure by the government is subject to -restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in -Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR -52.227-19. - -Sun, Sun Microsystems and the Sun logo are trademarks or registered -trademarks of Sun Microsystems, Inc. - -SunSoft, Inc. -2550 Garcia Avenue -Mountain View, California 94043 - -NOTE: - -SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are -trademarks or registered trademarks of Sun Microsystems, Inc. - - */ - -/* - * ast_argument.cc - Implementation of class AST_Argument.cc - * - * AST_Argument nodes denote arguments to an operation. They - * are AST_Fields with directions. Thus, they have a name - * (an UTL_ScopedName) and a type (a subclass of AST_Type). - * Additionally they have a direction field which takes values - * from the enum AST_Argument::Direction. - */ - -#include "idl.h" -#include "idl_extern.h" - -/* - * Static functions - */ - -/* - * Convert an enum Direction value to a char * - */ -static char * -direction_to_string(AST_Argument::Direction d) -{ - switch (d) { - case AST_Argument::dir_IN: - return "in"; - case AST_Argument::dir_OUT: - return "out"; - case AST_Argument::dir_INOUT: - return "inout"; - } - return NULL; -} - -/* - * Constructor(s) and destructor - */ - -AST_Argument::AST_Argument() - : pd_direction(dir_IN) -{ -} - -AST_Argument::AST_Argument(Direction d, AST_Type *ft, UTL_ScopedName *n, - UTL_StrList *p) - : AST_Field(AST_Decl::NT_argument, ft, n, p), - AST_Decl(AST_Decl::NT_argument, n, p), - pd_direction(d) -{ -} - -/* - * Private operations - */ - -/* - * Public operations - */ - -/* - * Redefinition of inherited virtual operations - */ - -/* - * Dump this AST_Argument node to the ostream o - */ -void -AST_Argument::dump(ostream &o) -{ - o << direction_to_string(pd_direction) << " "; - AST_Field::dump(o); -} - -/* - * Data accessors - */ - -AST_Argument::Direction -AST_Argument::direction() -{ - return pd_direction; -} - -/* - * Narrowing operations - */ -IMPL_NARROW_METHODS1(AST_Argument, AST_Field) -IMPL_NARROW_FROM_DECL(AST_Argument) diff --git a/TAO/TAO_IDL/ast/ast_array.cpp b/TAO/TAO_IDL/ast/ast_array.cpp deleted file mode 100644 index 6a273498668..00000000000 --- a/TAO/TAO_IDL/ast/ast_array.cpp +++ /dev/null @@ -1,189 +0,0 @@ -// $Id$ - -/* - -COPYRIGHT - -Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United -States of America. All Rights Reserved. - -This product is protected by copyright and distributed under the following -license restricting its use. - -The Interface Definition Language Compiler Front End (CFE) is made -available for your use provided that you include this license and copyright -notice on all media and documentation and the software program in which -this product is incorporated in whole or part. You may copy and extend -functionality (but may not remove functionality) of the Interface -Definition Language CFE without charge, but you are not authorized to -license or distribute it to anyone else except as part of a product or -program developed by you or with the express written consent of Sun -Microsystems, Inc. ("Sun"). - -The names of Sun Microsystems, Inc. and any of its subsidiaries or -affiliates may not be used in advertising or publicity pertaining to -distribution of Interface Definition Language CFE as permitted herein. - -This license is effective until terminated by Sun for failure to comply -with this license. Upon termination, you shall destroy or return all code -and documentation for the Interface Definition Language CFE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF -ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS -FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF -DEALING, USAGE OR TRADE PRACTICE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT -ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES -TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. - -SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH -RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY -INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. - -IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR -ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL -DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -Use, duplication, or disclosure by the government is subject to -restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in -Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR -52.227-19. - -Sun, Sun Microsystems and the Sun logo are trademarks or registered -trademarks of Sun Microsystems, Inc. - -SunSoft, Inc. -2550 Garcia Avenue -Mountain View, California 94043 - -NOTE: - -SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are -trademarks or registered trademarks of Sun Microsystems, Inc. - - */ - -/* - * ast_array.cc - Implementation of class AST_Array - * - * AST_Array nodes denote array type and field modifiers. - * AST_Array nodes have a list of dimensions (a UTL_ExprList) - * a count of the number of dimensions and a base type (a - * subtype of AST_ConcreteType. This means that we cannot have - * arrays of AST_Interfaces??? - */ - -#include "idl.h" -#include "idl_extern.h" - -/* - * Constructor(s) and destructor - */ -AST_Array::AST_Array() - : pd_n_dims(0), - pd_dims(NULL), - pd_base_type(NULL) -{ -} - -AST_Array::AST_Array(UTL_ScopedName *n, unsigned long nd, UTL_ExprList *ds) - : AST_Decl(AST_Decl::NT_array, n, NULL), - pd_n_dims(nd), pd_base_type(NULL) -{ - pd_dims = compute_dims(ds, nd); -} - -/* - * Private operations - */ - -/* - * Compute how many dimensions there are and collect their expressions - * into an array - */ -AST_Expression ** -AST_Array::compute_dims(UTL_ExprList *ds, unsigned long nds) -{ - AST_Expression **result; - UTL_ExprlistActiveIterator *l; - unsigned long i; - - if (ds == NULL) - return NULL; - - result = new AST_Expression *[nds]; - l = new UTL_ExprlistActiveIterator(ds); - - for (i = 0; !(l->is_done()) && i < nds; l->next(), i++) - result[i] = l->item(); - delete l; - return result; -} - -/* - * Public operations - */ - - -/* - * Redefinition of inherited virtual operations - */ - -/* - * Dump this AST_Array node to the ostream o - */ -void -AST_Array::dump(ostream &o) -{ - unsigned long i; - - pd_base_type->dump(o); - o << " "; - local_name()->dump(o); - for (i = 0; i < pd_n_dims; i++) { - o << "["; - pd_dims[i]->dump(o); - o << "]"; - } -} - -/* - * Data accessors - */ -unsigned long -AST_Array::n_dims() -{ - return pd_n_dims; -} - -AST_Expression ** -AST_Array::dims() -{ - return pd_dims; -} - -AST_Type * -AST_Array::base_type() -{ - return pd_base_type; -} - -void -AST_Array::set_base_type(AST_Type *nbt) -{ - pd_base_type = nbt; -} - -void -AST_Array::set_dims(AST_Expression **ds, unsigned long nds) -{ - pd_dims = ds; - pd_n_dims = nds; -} - -/* - * Narrowing methods - */ -IMPL_NARROW_METHODS1(AST_Array, AST_ConcreteType) -IMPL_NARROW_FROM_DECL(AST_Array) diff --git a/TAO/TAO_IDL/ast/ast_attribute.cpp b/TAO/TAO_IDL/ast/ast_attribute.cpp deleted file mode 100644 index 20c272431e8..00000000000 --- a/TAO/TAO_IDL/ast/ast_attribute.cpp +++ /dev/null @@ -1,134 +0,0 @@ -// $Id$ - -/* - -COPYRIGHT - -Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United -States of America. All Rights Reserved. - -This product is protected by copyright and distributed under the following -license restricting its use. - -The Interface Definition Language Compiler Front End (CFE) is made -available for your use provided that you include this license and copyright -notice on all media and documentation and the software program in which -this product is incorporated in whole or part. You may copy and extend -functionality (but may not remove functionality) of the Interface -Definition Language CFE without charge, but you are not authorized to -license or distribute it to anyone else except as part of a product or -program developed by you or with the express written consent of Sun -Microsystems, Inc. ("Sun"). - -The names of Sun Microsystems, Inc. and any of its subsidiaries or -affiliates may not be used in advertising or publicity pertaining to -distribution of Interface Definition Language CFE as permitted herein. - -This license is effective until terminated by Sun for failure to comply -with this license. Upon termination, you shall destroy or return all code -and documentation for the Interface Definition Language CFE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF -ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS -FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF -DEALING, USAGE OR TRADE PRACTICE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT -ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES -TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. - -SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH -RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY -INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. - -IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR -ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL -DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -Use, duplication, or disclosure by the government is subject to -restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in -Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR -52.227-19. - -Sun, Sun Microsystems and the Sun logo are trademarks or registered -trademarks of Sun Microsystems, Inc. - -SunSoft, Inc. -2550 Garcia Avenue -Mountain View, California 94043 - -NOTE: - -SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are -trademarks or registered trademarks of Sun Microsystems, Inc. - - */ - -/* - * ast_attribute.cc - Implementation of class AST_Attribute.cc - * - * AST_Attribute nodes denote IDL attribute declarations. - * AST_Attribute nodes are AST_Fields with a readonly indication. - * Hence they have a name (an UTL_ScopedName), a type (a subtype - * of AST_Type) and a boolean indicating whether the attribute is - * readonly. - */ - -#include "idl.h" -#include "idl_extern.h" - -/* - * Constructor(s) and destructor - */ -AST_Attribute::AST_Attribute() - : pd_readonly(I_TRUE) -{ -} - -AST_Attribute::AST_Attribute(idl_bool ro, - AST_Type *ft, - UTL_ScopedName *n, - UTL_StrList *p) - : AST_Field(AST_Decl::NT_attr, ft, n, p), - AST_Decl(AST_Decl::NT_attr, n, p), - pd_readonly(ro) -{ -} - -/* - * Private operations - */ - -/* - * Public operations - */ - -/* - * Redefinition of inherited virtual operations - */ - -/* - * Dump this AST_Attribute to the ostream o - */ -void -AST_Attribute::dump(ostream &o) -{ - o << (pd_readonly == I_TRUE ? "readonly" : "") << " attribute "; - AST_Field::dump(o); -} - -/* - * Data accessors - */ - -idl_bool -AST_Attribute::readonly() -{ - return pd_readonly; -} - -/* - * Narrowing methods - */ -IMPL_NARROW_METHODS1(AST_Attribute, AST_Field) -IMPL_NARROW_FROM_DECL(AST_Attribute) diff --git a/TAO/TAO_IDL/ast/ast_check.cpp b/TAO/TAO_IDL/ast/ast_check.cpp deleted file mode 100644 index ed37a75dc86..00000000000 --- a/TAO/TAO_IDL/ast/ast_check.cpp +++ /dev/null @@ -1,140 +0,0 @@ -// $Id$ - -/* - -COPYRIGHT - -Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United -States of America. All Rights Reserved. - -This product is protected by copyright and distributed under the following -license restricting its use. - -The Interface Definition Language Compiler Front End (CFE) is made -available for your use provided that you include this license and copyright -notice on all media and documentation and the software program in which -this product is incorporated in whole or part. You may copy and extend -functionality (but may not remove functionality) of the Interface -Definition Language CFE without charge, but you are not authorized to -license or distribute it to anyone else except as part of a product or -program developed by you or with the express written consent of Sun -Microsystems, Inc. ("Sun"). - -The names of Sun Microsystems, Inc. and any of its subsidiaries or -affiliates may not be used in advertising or publicity pertaining to -distribution of Interface Definition Language CFE as permitted herein. - -This license is effective until terminated by Sun for failure to comply -with this license. Upon termination, you shall destroy or return all code -and documentation for the Interface Definition Language CFE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF -ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS -FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF -DEALING, USAGE OR TRADE PRACTICE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT -ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES -TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. - -SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH -RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY -INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. - -IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR -ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL -DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -Use, duplication, or disclosure by the government is subject to -restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in -Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR -52.227-19. - -Sun, Sun Microsystems and the Sun logo are trademarks or registered -trademarks of Sun Microsystems, Inc. - -SunSoft, Inc. -2550 Garcia Avenue -Mountain View, California 94043 - -NOTE: - -SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are -trademarks or registered trademarks of Sun Microsystems, Inc. - - */ - -/* - * ast_check.cc - Check AST nodes representing fwd declared interfaces - * after parse of AST is completed. - * - * The check ensures that for every forward declared interface we also - * saw a full definition of that interface. - */ - -#include "idl.h" -#include "idl_extern.h" - -/* - * Static storage for remembering nodes - */ -static AST_InterfaceFwd **ast_fwds = NULL; -static long ast_n_fwds_used = 0; -static long ast_n_fwds_alloc = 0; - -#undef INCREMENT -#define INCREMENT 64 - -/* - * Store a node representing a forward declared interface - */ -void -AST_record_fwd_interface(AST_InterfaceFwd *n) -{ - AST_InterfaceFwd **o_ast_fwds; - long o_ast_n_fwds_alloc; - long i; - - /* - * Make sure there's space to store one more - */ - if (ast_n_fwds_used == ast_n_fwds_alloc) { - if (ast_n_fwds_alloc == 0) { - ast_n_fwds_alloc = INCREMENT; - ast_fwds = new AST_InterfaceFwd *[ast_n_fwds_alloc]; - } else { - o_ast_fwds = ast_fwds; - o_ast_n_fwds_alloc = ast_n_fwds_alloc; - - ast_n_fwds_alloc += INCREMENT; - ast_fwds = new AST_InterfaceFwd *[ast_n_fwds_alloc]; - - for (i = 0; i < o_ast_n_fwds_alloc; i++) - ast_fwds[i] = o_ast_fwds[i]; - - delete o_ast_fwds; - } - } - /* - * Insert new node - */ - ast_fwds[ast_n_fwds_used++] = n; -} - -/* - * Check that all forward declared interfaces were also defined - */ -void -AST_check_fwd_interface() -{ - long i; - AST_InterfaceFwd *d; - AST_Interface *itf; - - for (i = 0; i < ast_n_fwds_used; i++) { - d = ast_fwds[i]; - itf = d->full_definition(); - if (!(itf->is_defined())) - idl_global->err()->fwd_decl_not_defined(itf); - } -} diff --git a/TAO/TAO_IDL/ast/ast_concrete_type.cpp b/TAO/TAO_IDL/ast/ast_concrete_type.cpp deleted file mode 100644 index 11d42dfc93e..00000000000 --- a/TAO/TAO_IDL/ast/ast_concrete_type.cpp +++ /dev/null @@ -1,106 +0,0 @@ -// $Id$ - -/* - -COPYRIGHT - -Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United -States of America. All Rights Reserved. - -This product is protected by copyright and distributed under the following -license restricting its use. - -The Interface Definition Language Compiler Front End (CFE) is made -available for your use provided that you include this license and copyright -notice on all media and documentation and the software program in which -this product is incorporated in whole or part. You may copy and extend -functionality (but may not remove functionality) of the Interface -Definition Language CFE without charge, but you are not authorized to -license or distribute it to anyone else except as part of a product or -program developed by you or with the express written consent of Sun -Microsystems, Inc. ("Sun"). - -The names of Sun Microsystems, Inc. and any of its subsidiaries or -affiliates may not be used in advertising or publicity pertaining to -distribution of Interface Definition Language CFE as permitted herein. - -This license is effective until terminated by Sun for failure to comply -with this license. Upon termination, you shall destroy or return all code -and documentation for the Interface Definition Language CFE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF -ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS -FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF -DEALING, USAGE OR TRADE PRACTICE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT -ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES -TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. - -SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH -RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY -INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. - -IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR -ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL -DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -Use, duplication, or disclosure by the government is subject to -restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in -Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR -52.227-19. - -Sun, Sun Microsystems and the Sun logo are trademarks or registered -trademarks of Sun Microsystems, Inc. - -SunSoft, Inc. -2550 Garcia Avenue -Mountain View, California 94043 - -NOTE: - -SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are -trademarks or registered trademarks of Sun Microsystems, Inc. - - */ - -/* - * ast_concrete_type.cc - Implementation of class AST_ConcreteType - * - * AST_ConcreteType nodes denote all non-interface types of IDL. - * They are AST_Type nodes. - */ - -#include "idl.h" -#include "idl_extern.h" - -/* - * Constructor(s) and destructor - */ -AST_ConcreteType::AST_ConcreteType() -{ -} - -AST_ConcreteType::AST_ConcreteType(AST_Decl::NodeType nt, UTL_ScopedName *n, - UTL_StrList *p) - : AST_Decl(nt, n, p) -{ -} - -/* - * Private operations - */ - -/* - * Public operations - */ - -/* - * Redefinition of inherited virtual operations - */ - -/* - * Narrowing methods - */ -IMPL_NARROW_METHODS1(AST_ConcreteType, AST_Type) -IMPL_NARROW_FROM_DECL(AST_ConcreteType) diff --git a/TAO/TAO_IDL/ast/ast_constant.cpp b/TAO/TAO_IDL/ast/ast_constant.cpp deleted file mode 100644 index 075f8827806..00000000000 --- a/TAO/TAO_IDL/ast/ast_constant.cpp +++ /dev/null @@ -1,212 +0,0 @@ -// $Id$ - -/* - -COPYRIGHT - -Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United -States of America. All Rights Reserved. - -This product is protected by copyright and distributed under the following -license restricting its use. - -The Interface Definition Language Compiler Front End (CFE) is made -available for your use provided that you include this license and copyright -notice on all media and documentation and the software program in which -this product is incorporated in whole or part. You may copy and extend -functionality (but may not remove functionality) of the Interface -Definition Language CFE without charge, but you are not authorized to -license or distribute it to anyone else except as part of a product or -program developed by you or with the express written consent of Sun -Microsystems, Inc. ("Sun"). - -The names of Sun Microsystems, Inc. and any of its subsidiaries or -affiliates may not be used in advertising or publicity pertaining to -distribution of Interface Definition Language CFE as permitted herein. - -This license is effective until terminated by Sun for failure to comply -with this license. Upon termination, you shall destroy or return all code -and documentation for the Interface Definition Language CFE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF -ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS -FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF -DEALING, USAGE OR TRADE PRACTICE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT -ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES -TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. - -SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH -RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY -INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. - -IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR -ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL -DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -Use, duplication, or disclosure by the government is subject to -restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in -Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR -52.227-19. - -Sun, Sun Microsystems and the Sun logo are trademarks or registered -trademarks of Sun Microsystems, Inc. - -SunSoft, Inc. -2550 Garcia Avenue -Mountain View, California 94043 - -NOTE: - -SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are -trademarks or registered trademarks of Sun Microsystems, Inc. - - */ - -/* - * ast_constant.cc - Implementation of class AST_Constant - * - * AST_Constant nodes denote IDL constant declarations. - * AST_Constants have a value (an AST_Expression) and a value type - * (a value from the enum AST_Expression::ExprType). - * AST_Constant has two constructors, one for use in creating constants - * and the other for use in creating enumerators (see the class - * AST_EnumVal) - */ - -#include "idl.h" -#include "idl_extern.h" - -/* - * Static functions - */ - -/* - * Convert a value from the enum AST_Expression::ExprType to a char * - */ -static char * -exprtype_to_string(AST_Expression::ExprType et) -{ - switch (et) { - case AST_Expression::EV_short: - return "short"; - case AST_Expression::EV_ushort: - return "unsigned short"; - case AST_Expression::EV_long: - return "long"; - case AST_Expression::EV_ulong: - return "unsigned long"; - case AST_Expression::EV_float: - return "float"; - case AST_Expression::EV_double: - return "double"; - case AST_Expression::EV_char: - return "char"; - case AST_Expression::EV_octet: - return "octet"; - case AST_Expression::EV_bool: - return "boolean"; - case AST_Expression::EV_string: - return "string"; - case AST_Expression::EV_any: - return "any"; - case AST_Expression::EV_void: - return "void"; - case AST_Expression::EV_none: - return "none"; - case AST_Expression::EV_wstring: - case AST_Expression::EV_wchar: - case AST_Expression::EV_longdouble: - case AST_Expression::EV_ulonglong: - case AST_Expression::EV_longlong: - return NULL; - } - return NULL; -} - -/* - * Constructor(s) and destructor - */ - -/* - * Default constructor - */ -AST_Constant::AST_Constant() - : pd_constant_value(NULL), pd_et(AST_Expression::EV_none) -{ -} - -/* - * Used in constructing AST_EnumVal nodes - */ -AST_Constant::AST_Constant(AST_Expression::ExprType t, - AST_Decl::NodeType nt, - AST_Expression *v, - UTL_ScopedName *n, - UTL_StrList *p) - : AST_Decl(nt, n, p), - pd_constant_value(idl_global->gen()->create_expr(v, t)), - pd_et(t) -{ -} - -/* - * Used when constructing AST_Constant nodes - */ -AST_Constant::AST_Constant(AST_Expression::ExprType t, - AST_Expression *v, - UTL_ScopedName *n, - UTL_StrList *p) - : AST_Decl(AST_Decl::NT_const, n, p), - pd_constant_value(idl_global->gen()->create_expr(v, t)), - pd_et(t) -{ -} - -/* - * Private operations - */ - -/* - * Public operations - */ - - -/* - * Redefinition of inherited virtual operations - */ - -/* - * Dump this AST_Constant node to the ostream o - */ -void -AST_Constant::dump(ostream &o) -{ - o << "const " << exprtype_to_string(pd_et) << " "; - local_name()->dump(o); - o << " = "; - pd_constant_value->dump(o); -} - -/* - * Data accessors - */ - -AST_Expression * -AST_Constant::constant_value() -{ - return pd_constant_value; -} - -AST_Expression::ExprType -AST_Constant::et() -{ - return pd_et; -} - -/* - * Narrowing methods - */ -IMPL_NARROW_METHODS1(AST_Constant, AST_Decl) -IMPL_NARROW_FROM_DECL(AST_Constant) diff --git a/TAO/TAO_IDL/ast/ast_decl.cpp b/TAO/TAO_IDL/ast/ast_decl.cpp deleted file mode 100644 index f01a4f0bf22..00000000000 --- a/TAO/TAO_IDL/ast/ast_decl.cpp +++ /dev/null @@ -1,314 +0,0 @@ -// $Id$ - -/* - -COPYRIGHT - -Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United -States of America. All Rights Reserved. - -This product is protected by copyright and distributed under the following -license restricting its use. - -The Interface Definition Language Compiler Front End (CFE) is made -available for your use provided that you include this license and copyright -notice on all media and documentation and the software program in which -this product is incorporated in whole or part. You may copy and extend -functionality (but may not remove functionality) of the Interface -Definition Language CFE without charge, but you are not authorized to -license or distribute it to anyone else except as part of a product or -program developed by you or with the express written consent of Sun -Microsystems, Inc. ("Sun"). - -The names of Sun Microsystems, Inc. and any of its subsidiaries or -affiliates may not be used in advertising or publicity pertaining to -distribution of Interface Definition Language CFE as permitted herein. - -This license is effective until terminated by Sun for failure to comply -with this license. Upon termination, you shall destroy or return all code -and documentation for the Interface Definition Language CFE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF -ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS -FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF -DEALING, USAGE OR TRADE PRACTICE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT -ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES -TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. - -SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH -RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY -INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. - -IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR -ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL -DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -Use, duplication, or disclosure by the government is subject to -restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in -Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR -52.227-19. - -Sun, Sun Microsystems and the Sun logo are trademarks or registered -trademarks of Sun Microsystems, Inc. - -SunSoft, Inc. -2550 Garcia Avenue -Mountain View, California 94043 - -NOTE: - -SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are -trademarks or registered trademarks of Sun Microsystems, Inc. - - */ - -/* - * ast_decl.cc - Implementation of class AST_Decl - * - * AST_Decl is the base class for all AST nodes except AST_Expression. - * AST_Decls have a node type (a value from the enum AST_Decl::NodeType) - * a name (a UTL_ScopedName) and a list of pragmas (a UTL_StrList). - * Additionally AST_Decl nodes record the scope of definition, the - * file name in which they were defined, the line on which they were - * defined in that file, and a boolean denoting whether this is the - * main file or an #include'd file. - */ - -#include "idl.h" -#include "idl_extern.h" - -/* - * Constructor(s) and destructor - */ - -AST_Decl::AST_Decl() - : pd_imported(I_FALSE), - pd_in_main_file(I_FALSE), - pd_defined_in(NULL), - pd_node_type(NT_module), - pd_line(-1), - pd_file_name(NULL), - pd_name(NULL), - pd_local_name(NULL), - pd_pragmas(NULL), - pd_added(I_FALSE) -{ -} - -AST_Decl::AST_Decl(NodeType nt, UTL_ScopedName *n, UTL_StrList *p) - : pd_imported(idl_global->imported()), - pd_in_main_file(idl_global->in_main_file()), - pd_defined_in(idl_global->scopes()->depth() > 0 - ? idl_global->scopes()->top() - : 0), - pd_node_type(nt), - pd_line(idl_global->lineno()), - pd_file_name(idl_global->filename()), - pd_local_name(n == NULL ? 0 : n->last_component()), - pd_pragmas(p), - pd_added(I_FALSE) -{ - compute_full_name (n); -} - -/* - * Private operations - */ - -/* - * Compute the full scoped name of an AST node - */ -void -AST_Decl::compute_full_name(UTL_ScopedName *n) -{ - UTL_ScopedName *cn = NULL; - AST_Decl *d = NULL; - - /* - * Initialize this name to NULL - */ - pd_name = NULL; - /* - * Global scope? - */ - if (defined_in() == NULL) { - pd_name = n; - return; - } - /* - * OK, not global. So copy name of containing scope, then - * smash last cdr of copy with new component - */ - d = ScopeAsDecl(defined_in()); - if (d != NULL) - cn = d->name(); - if (cn != NULL) - pd_name = (UTL_ScopedName *) cn->copy(); - if (pd_name == NULL) - pd_name = new UTL_ScopedName(local_name(), NULL); - else - pd_name->nconc(new UTL_ScopedName(local_name(), NULL)); -} - -/* - * Public operations - */ - -/* - * Return TRUE if one of my ancestor scopes is "s" - * and FALSE otherwise - */ -idl_bool -AST_Decl::has_ancestor(AST_Decl *s) -{ - if (this == s) - return I_TRUE; - if (pd_defined_in == NULL) - return I_FALSE; - return ScopeAsDecl(pd_defined_in)->has_ancestor(s); -} - -/* - * Dump this AST_Decl to the ostream o - */ -void -AST_Decl::dump(ostream &o) -{ - pd_local_name->dump(o); -} - -/* - * Redefinition of inherited virtual operations - */ - -/* - * Data accessors - */ - -idl_bool -AST_Decl::imported() -{ - return pd_imported; -} - -void -AST_Decl::set_imported(idl_bool is_it) -{ - pd_imported = is_it; -} - -idl_bool -AST_Decl::in_main_file() -{ - return pd_in_main_file; -} - -void -AST_Decl::set_in_main_file(idl_bool is_it) -{ - pd_in_main_file = is_it; -} - -idl_bool -AST_Decl::added() -{ - return pd_added; -} - -void -AST_Decl::set_added(idl_bool is_it) -{ - pd_added = is_it; -} - -UTL_Scope * -AST_Decl::defined_in() -{ - return pd_defined_in; -} - -void -AST_Decl::set_defined_in(UTL_Scope *s) -{ - pd_defined_in = s; -} - -AST_Decl::NodeType -AST_Decl::node_type() -{ - return pd_node_type; -} - -long -AST_Decl::line() -{ - return pd_line; -} - -void -AST_Decl::set_line(long l) -{ - pd_line = l; -} - -String * -AST_Decl::file_name() -{ - return pd_file_name; -} - -void -AST_Decl::set_file_name(String *s) -{ - pd_file_name = s; -} - -UTL_ScopedName * -AST_Decl::name() -{ - return pd_name; -} - -void -AST_Decl::set_name(UTL_ScopedName *n) -{ - pd_name = n; - if (n != NULL) - pd_local_name = n->last_component(); -} - -Identifier * -AST_Decl::local_name() -{ - return pd_local_name; -} - -void -AST_Decl::add_pragmas(UTL_StrList *p) -{ - if (p != NULL) { - if (pd_pragmas != NULL) - pd_pragmas->nconc(p); - else - pd_pragmas = p; - } -} - -UTL_StrList * -AST_Decl::pragmas() -{ - return pd_pragmas; -} - -/* - * Narrowing methods for AST_Decl - */ -IMPL_NARROW_METHODS0(AST_Decl) -IMPL_NARROW_FROM_DECL(AST_Decl) - -/* -** Narrowing methods for COMMON_Base -*/ -IMPL_NARROW_METHODS0(COMMON_Base) diff --git a/TAO/TAO_IDL/ast/ast_enum.cpp b/TAO/TAO_IDL/ast/ast_enum.cpp deleted file mode 100644 index 5072fe282ce..00000000000 --- a/TAO/TAO_IDL/ast/ast_enum.cpp +++ /dev/null @@ -1,255 +0,0 @@ -// $Id$ - -/* - -COPYRIGHT - -Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United -States of America. All Rights Reserved. - -This product is protected by copyright and distributed under the following -license restricting its use. - -The Interface Definition Language Compiler Front End (CFE) is made -available for your use provided that you include this license and copyright -notice on all media and documentation and the software program in which -this product is incorporated in whole or part. You may copy and extend -functionality (but may not remove functionality) of the Interface -Definition Language CFE without charge, but you are not authorized to -license or distribute it to anyone else except as part of a product or -program developed by you or with the express written consent of Sun -Microsystems, Inc. ("Sun"). - -The names of Sun Microsystems, Inc. and any of its subsidiaries or -affiliates may not be used in advertising or publicity pertaining to -distribution of Interface Definition Language CFE as permitted herein. - -This license is effective until terminated by Sun for failure to comply -with this license. Upon termination, you shall destroy or return all code -and documentation for the Interface Definition Language CFE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF -ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS -FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF -DEALING, USAGE OR TRADE PRACTICE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT -ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES -TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. - -SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH -RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY -INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. - -IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR -ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL -DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -Use, duplication, or disclosure by the government is subject to -restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in -Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR -52.227-19. - -Sun, Sun Microsystems and the Sun logo are trademarks or registered -trademarks of Sun Microsystems, Inc. - -SunSoft, Inc. -2550 Garcia Avenue -Mountain View, California 94043 - -NOTE: - -SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are -trademarks or registered trademarks of Sun Microsystems, Inc. - - */ - -/* - * ast_enum.cc - Implementation of class AST_Enum - * - * AST_Enum nodes denote IDL enum declarations. - * AST_Enums are a subclass of AST_ConcreteType and UTL_Scope. - * They have a counter denoting the next value to be assigned to - * an enumerator, and a name (a UTL_ScopedName). - */ - -#include "idl.h" -#include "idl_extern.h" - -/* - * Constructor(s) and destructor - */ -AST_Enum::AST_Enum() - : pd_enum_counter(0) -{ -} - -AST_Enum::AST_Enum(UTL_ScopedName *n, UTL_StrList *p) - : AST_Decl(AST_Decl::NT_enum, n, p), - UTL_Scope(AST_Decl::NT_enum), - pd_enum_counter(0) -{ -} - -/* - * Private operations - */ - -/* - * Public operations - */ - -/* - * Look up an enumerator by the value of the supplied expression - */ -AST_EnumVal * -AST_Enum::lookup_by_value(const AST_Expression *v) -{ - UTL_ScopeActiveIterator *iter; - AST_EnumVal *item; - AST_Decl *i; - - iter = new UTL_ScopeActiveIterator(this, IK_decls); - - while (!iter->is_done()) { - i = iter->item(); - item = AST_EnumVal::narrow_from_decl(i); - if (item->constant_value() == v) { - delete iter; - return item; - } - iter->next(); - } - delete iter; - return NULL; -} - -/* - * Compute the value to be assigned to the next enumerator. Bump the - * counter - */ -unsigned long -AST_Enum::next_enum_val() -{ - unsigned long i = pd_enum_counter++; - - return i; -} - -/* - * Static helper functions - */ - -/* - * Modify scoped name of an enumval so that it is scoped inside the scope - * in which the enum is defined and not inside the enum itself - */ -static UTL_ScopedName * -munge_name_for_enumval(UTL_ScopedName *n, Identifier *last_component) -{ - long l = n->length(); - UTL_ScopedName *hold = n; - - /* - * last three components are: - * - scope in which enum is defined - * - scope for enum - * - name of enumval - * - * We want to stop cdr'ing down the list when the head of the - * list is at the name for the scope in which the enum is defined - */ - while (l > 3) { - l--; - n = (UTL_ScopedName *) n->tail(); - } - - n->set_tail(new UTL_IdList(last_component, NULL)); - - return hold; -} - -/* - * Redefinition of inherited virtual operations - */ - -/* - * Add an AST_EnumVal node to this scope - */ -AST_EnumVal *AST_Enum::fe_add_enum_val(AST_EnumVal *t) -{ - AST_Decl *d; - AST_EnumVal *t1 = NULL; - - if (t != NULL) { - t1 = idl_global->gen()->create_enum_val - (t->constant_value()->coerce(AST_Expression::EV_ulong)->u.ulval, - t->name(), t->pragmas()); - t->set_name(munge_name_for_enumval(t->name(), t->local_name())); - t1->set_name(munge_name_for_enumval(t1->name(), t1->local_name())); - } - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to scope - */ - add_to_scope(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - /* - * Add it to enclosing scope - */ - idl_global->scopes()->next_to_top()->fe_add_enum_val(t1); - - return t; -} - -/* - * Dump this AST_Enum to the ostream o - */ -void -AST_Enum::dump(ostream &o) -{ - UTL_ScopeActiveIterator *i = new UTL_ScopeActiveIterator(this, IK_decls); - AST_Decl *d; - - o << "enum "; - local_name()->dump(o); - o << " {\n"; - - while (!(i->is_done())) { - d = i->item(); - d->local_name()->dump(o); - i->next(); - if (!(i->is_done())) - o << ", "; - } - delete i; - - idl_global->indent()->skip_to(o); - o << "}"; -} - -/* - * Narrowing methods - */ -IMPL_NARROW_METHODS2(AST_Enum, AST_ConcreteType, UTL_Scope) -IMPL_NARROW_FROM_DECL(AST_Enum) -IMPL_NARROW_FROM_SCOPE(AST_Enum) diff --git a/TAO/TAO_IDL/ast/ast_enum_val.cpp b/TAO/TAO_IDL/ast/ast_enum_val.cpp deleted file mode 100644 index ef665127456..00000000000 --- a/TAO/TAO_IDL/ast/ast_enum_val.cpp +++ /dev/null @@ -1,119 +0,0 @@ -// $Id$ - -/* - -COPYRIGHT - -Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United -States of America. All Rights Reserved. - -This product is protected by copyright and distributed under the following -license restricting its use. - -The Interface Definition Language Compiler Front End (CFE) is made -available for your use provided that you include this license and copyright -notice on all media and documentation and the software program in which -this product is incorporated in whole or part. You may copy and extend -functionality (but may not remove functionality) of the Interface -Definition Language CFE without charge, but you are not authorized to -license or distribute it to anyone else except as part of a product or -program developed by you or with the express written consent of Sun -Microsystems, Inc. ("Sun"). - -The names of Sun Microsystems, Inc. and any of its subsidiaries or -affiliates may not be used in advertising or publicity pertaining to -distribution of Interface Definition Language CFE as permitted herein. - -This license is effective until terminated by Sun for failure to comply -with this license. Upon termination, you shall destroy or return all code -and documentation for the Interface Definition Language CFE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF -ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS -FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF -DEALING, USAGE OR TRADE PRACTICE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT -ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES -TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. - -SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH -RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY -INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. - -IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR -ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL -DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -Use, duplication, or disclosure by the government is subject to -restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in -Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR -52.227-19. - -Sun, Sun Microsystems and the Sun logo are trademarks or registered -trademarks of Sun Microsystems, Inc. - -SunSoft, Inc. -2550 Garcia Avenue -Mountain View, California 94043 - -NOTE: - -SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are -trademarks or registered trademarks of Sun Microsystems, Inc. - - */ - -/* - * ast_enum_val.cc - Implementation of class AST_EnumVal - * - * AST_EnumVals denote IDL enumerator declarations - * AST_EnumVals are a subclass of AST_Constant - * AST_EnumVals have no additional fields - */ - -#include "idl.h" -#include "idl_extern.h" - -/* - * Constructor(s) and destructor - */ -AST_EnumVal::AST_EnumVal() -{ -} - -AST_EnumVal::AST_EnumVal(unsigned long v, UTL_ScopedName *n, UTL_StrList *p) - : AST_Constant(AST_Expression::EV_ulong, - AST_Decl::NT_enum_val, - new AST_Expression(v), n, p), - AST_Decl(AST_Decl::NT_enum_val, n, p) -{ -} - -/* - * Private operations - */ - -/* - * Public operations - */ - - -/* - * Redefinition of inherited virtual operations - */ - -/* - * Dump this AST_EnumVal to the ostream o - */ -void -AST_EnumVal::dump(ostream &o) -{ - AST_Constant::dump(o); -} - -/* - * Narrowing methods - */ -IMPL_NARROW_METHODS1(AST_EnumVal, AST_Constant) -IMPL_NARROW_FROM_DECL(AST_EnumVal) diff --git a/TAO/TAO_IDL/ast/ast_exception.cpp b/TAO/TAO_IDL/ast/ast_exception.cpp deleted file mode 100644 index 5ef44d18cba..00000000000 --- a/TAO/TAO_IDL/ast/ast_exception.cpp +++ /dev/null @@ -1,306 +0,0 @@ -// $Id$ - -/* - -COPYRIGHT - -Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United -States of America. All Rights Reserved. - -This product is protected by copyright and distributed under the following -license restricting its use. - -The Interface Definition Language Compiler Front End (CFE) is made -available for your use provided that you include this license and copyright -notice on all media and documentation and the software program in which -this product is incorporated in whole or part. You may copy and extend -functionality (but may not remove functionality) of the Interface -Definition Language CFE without charge, but you are not authorized to -license or distribute it to anyone else except as part of a product or -program developed by you or with the express written consent of Sun -Microsystems, Inc. ("Sun"). - -The names of Sun Microsystems, Inc. and any of its subsidiaries or -affiliates may not be used in advertising or publicity pertaining to -distribution of Interface Definition Language CFE as permitted herein. - -This license is effective until terminated by Sun for failure to comply -with this license. Upon termination, you shall destroy or return all code -and documentation for the Interface Definition Language CFE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF -ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS -FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF -DEALING, USAGE OR TRADE PRACTICE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT -ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES -TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. - -SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH -RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY -INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. - -IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR -ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL -DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -Use, duplication, or disclosure by the government is subject to -restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in -Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR -52.227-19. - -Sun, Sun Microsystems and the Sun logo are trademarks or registered -trademarks of Sun Microsystems, Inc. - -SunSoft, Inc. -2550 Garcia Avenue -Mountain View, California 94043 - -NOTE: - -SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are -trademarks or registered trademarks of Sun Microsystems, Inc. - - */ - -/* - * ast_exception.cc - Implementation of class AST_Exception - * - * AST_Exceptions denote IDL exception declarations - * AST_Exceptions are a subclass of AST_Decl (they are not types!) - * and of UTL_Scope - */ - -#include "idl.h" -#include "idl_extern.h" - -/* - * Constructor(s) and destructor - */ -AST_Exception::AST_Exception() -{ -} - -AST_Exception::AST_Exception(UTL_ScopedName *n, UTL_StrList *p) - : AST_Structure(AST_Decl::NT_except, n, p) -{ -} - -/* - * Private operations - */ - -/* - * Public operations - */ - - -/* - * Redefinition of inherited virtual operations - */ - -/* - * Add this AST_Field node to the current scope - */ -AST_Field *AST_Exception::fe_add_field(AST_Field *t) -{ - AST_Decl *d; - - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to scope - */ - add_to_scope(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add this AST_Union (manifest type declaration) to the current scope - */ -AST_Union *AST_Exception::fe_add_union(AST_Union *t) -{ - AST_Decl *d; - - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to local types - */ - add_to_local_types(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add this AST_Structure (manifest type declaration) to the current - * scope - */ -AST_Structure *AST_Exception::fe_add_structure(AST_Structure *t) -{ - AST_Decl *d; - - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error2(UTL_Error::EIDL_REDEF, t, this); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to local types - */ - add_to_local_types(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add this AST_Enum (manifest type declaration) to the current scope - */ -AST_Enum *AST_Exception::fe_add_enum(AST_Enum *t) -{ - AST_Decl *d; - - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to local types - */ - add_to_local_types(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add this AST_EnumVal (enumerator declaration) to the current scope. - * This is done to conform to the C++ scoping rules which declare - * enumerators in the enclosing scope (in addition to declaring them - * in the enum itself) - */ -AST_EnumVal *AST_Exception::fe_add_enum_val(AST_EnumVal *t) -{ - AST_Decl *d; - - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to scope - */ - add_to_scope(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Dump this AST_Exception node to the ostream o - */ -void -AST_Exception::dump(ostream &o) -{ - o << "exception "; - local_name()->dump(o); - o << " {\n"; - UTL_Scope::dump(o); - idl_global->indent()->skip_to(o); - o << "}"; -} - -/* - * Narrowing methods - */ -IMPL_NARROW_METHODS1(AST_Exception, AST_Structure) -IMPL_NARROW_FROM_DECL(AST_Exception) -IMPL_NARROW_FROM_SCOPE(AST_Exception) diff --git a/TAO/TAO_IDL/ast/ast_expression.cpp b/TAO/TAO_IDL/ast/ast_expression.cpp deleted file mode 100644 index 308fe9b4a3e..00000000000 --- a/TAO/TAO_IDL/ast/ast_expression.cpp +++ /dev/null @@ -1,1599 +0,0 @@ -// $Id$ - -/* - -COPYRIGHT - -Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United -States of America. All Rights Reserved. - -This product is protected by copyright and distributed under the following -license restricting its use. - -The Interface Definition Language Compiler Front End (CFE) is made -available for your use provided that you include this license and copyright -notice on all media and documentation and the software program in which -this product is incorporated in whole or part. You may copy and extend -functionality (but may not remove functionality) of the Interface -Definition Language CFE without charge, but you are not authorized to -license or distribute it to anyone else except as part of a product or -program developed by you or with the express written consent of Sun -Microsystems, Inc. ("Sun"). - -The names of Sun Microsystems, Inc. and any of its subsidiaries or -affiliates may not be used in advertising or publicity pertaining to -distribution of Interface Definition Language CFE as permitted herein. - -This license is effective until terminated by Sun for failure to comply -with this license. Upon termination, you shall destroy or return all code -and documentation for the Interface Definition Language CFE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF -ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS -FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF -DEALING, USAGE OR TRADE PRACTICE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT -ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES -TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. - -SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH -RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY -INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. - -IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR -ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL -DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -Use, duplication, or disclosure by the government is subject to -restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in -Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR -52.227-19. - -Sun, Sun Microsystems and the Sun logo are trademarks or registered -trademarks of Sun Microsystems, Inc. - -SunSoft, Inc. -2550 Garcia Avenue -Mountain View, California 94043 - -NOTE: - -SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are -trademarks or registered trademarks of Sun Microsystems, Inc. - - */ - -/* * ast_expression.cc - Implementation of class AST_Expression - * - * AST_Expression nodes denote IDL expressions used in the IDL input. - */ - -#include "idl.h" -#include "idl_extern.h" - -#include <limits.h> -#include <float.h> - -#undef MAXCHAR -#define MAXCHAR 128 - -// Helper function to fill out the details of where this expression -// is defined -void -AST_Expression::fill_definition_details() -{ - pd_defined_in = idl_global->scopes()->depth() > 0 - ? idl_global->scopes()->top() - : 0 ; - pd_line = idl_global->lineno(); - pd_file_name = idl_global->filename(); -} - -/* - * Constructor(s) and destructor - */ - -/* - * An AST_Expression denoting a symbolic name - */ -AST_Expression::AST_Expression(UTL_ScopedName *nm) - : pd_ec(EC_symbol), - pd_ev(NULL), - pd_v1(NULL), - pd_v2(NULL), - pd_n(nm) -{ - fill_definition_details(); -} - -/* - * An AST_Expression denoting a type coercion from another AST_Expression - */ -AST_Expression::AST_Expression(AST_Expression *v, ExprType t) - : pd_ec(EC_none), - pd_ev(NULL), - pd_v1(NULL), - pd_v2(NULL), - pd_n(NULL) -{ - fill_definition_details(); - - pd_ev = v->coerce(t); - if (pd_ev == NULL) - idl_global->err()->coercion_error(v, t); -} - -/* - * An AST_Expression denoting a binary expression combination from - * two other AST_Expressions - */ -AST_Expression::AST_Expression(ExprComb c, AST_Expression *ev1, - AST_Expression *ev2) - : pd_ec(c), - pd_ev(NULL), - pd_v1(ev1), - pd_v2(ev2), - pd_n(NULL) -{ - fill_definition_details(); -} - -/* - * An AST_Expression denoting a short integer - */ -AST_Expression::AST_Expression(short sv) - : pd_ec(EC_none), - pd_ev(NULL), - pd_v1(NULL), - pd_v2(NULL), - pd_n(NULL) -{ - fill_definition_details(); - - pd_ev = new AST_ExprValue; - pd_ev->et = EV_short; - pd_ev->u.sval = sv; -} - -/* - * An AST_Expression denoting an unsigned short integer - */ -AST_Expression::AST_Expression(unsigned short usv) - : pd_ec(EC_none), - pd_ev(NULL), - pd_v1(NULL), - pd_v2(NULL), - pd_n(NULL) -{ - fill_definition_details(); - - pd_ev = new AST_ExprValue; - pd_ev->et = EV_ushort; - pd_ev->u.usval = usv; -} - -/* - * An AST_Expression denoting a long integer - */ -AST_Expression::AST_Expression(long lv) - : pd_ec(EC_none), - pd_ev(NULL), - pd_v1(NULL), - pd_v2(NULL), - pd_n(NULL) -{ - fill_definition_details(); - - pd_ev = new AST_ExprValue; - pd_ev->et = EV_long; - pd_ev->u.lval = lv; -} - -/* - * An AST_Expression denoting a long integer being used as a boolean - */ -AST_Expression::AST_Expression(long lv, ExprType t) - : pd_ec(EC_none), - pd_ev(NULL), - pd_v1(NULL), - pd_v2(NULL), - pd_n(NULL) -{ - fill_definition_details(); - - pd_ev = new AST_ExprValue; - pd_ev->et = t; - pd_ev->u.lval = lv; -} - -/* - * An AST_Expression denoting an unsigned long integer - */ -AST_Expression::AST_Expression(unsigned long ulv) - : pd_ec(EC_none), - pd_ev(NULL), - pd_v1(NULL), - pd_v2(NULL), - pd_n(NULL) -{ - fill_definition_details(); - - pd_ev = new AST_ExprValue; - pd_ev->et = EV_ulong; - pd_ev->u.ulval = ulv; -} - -/* - * An AST_Expression denoting a 32-bit floating point number - */ -AST_Expression::AST_Expression(float fv) - : pd_ec(EC_none), - pd_ev(NULL), - pd_v1(NULL), - pd_v2(NULL), - pd_n(NULL) -{ - fill_definition_details(); - - pd_ev = new AST_ExprValue; - pd_ev->et = EV_float; - pd_ev->u.fval = fv; -} - -/* - * An AST_Expression denoting a 64-bit floating point number - */ -AST_Expression::AST_Expression(double dv) - : pd_ec(EC_none), - pd_ev(NULL), - pd_v1(NULL), - pd_v2(NULL), - pd_n(NULL) -{ - fill_definition_details(); - - pd_ev = new AST_ExprValue; - pd_ev->et = EV_double; - pd_ev->u.dval = dv; -} - -/* - * An AST_Expression denoting a character - */ -AST_Expression::AST_Expression(char cv) - : pd_ec(EC_none), - pd_ev(NULL), - pd_v1(NULL), - pd_v2(NULL), - pd_n(NULL) -{ - fill_definition_details(); - - pd_ev = new AST_ExprValue; - pd_ev->et = EV_char; - pd_ev->u.cval = cv; -} - -/* - * An AST_Expression denoting an octet (unsigned char) - */ -AST_Expression::AST_Expression(unsigned char ov) - : pd_ec(EC_none), - pd_ev(NULL), - pd_v1(NULL), - pd_v2(NULL), - pd_n(NULL) -{ - fill_definition_details(); - - pd_ev = new AST_ExprValue; - pd_ev->et = EV_octet; - pd_ev->u.oval = ov; -} - -/* - * An AST_Expression denotign a string (char * encapsulated as a String) - */ -AST_Expression::AST_Expression(String *sv) - : pd_ec(EC_none), - pd_ev(NULL), - pd_v1(NULL), - pd_v2(NULL), - pd_n(NULL) -{ - fill_definition_details(); - - pd_ev = new AST_ExprValue; - pd_ev->et = EV_string; - pd_ev->u.strval = sv; -} - -/* - * Static operations - */ - -/* - * Perform the coercion from the given AST_ExprValue to the requested - * ExprType. Return an AST_ExprValue if successful, NULL if failed. - */ -static AST_Expression::AST_ExprValue * -coerce_value(AST_Expression::AST_ExprValue *ev, AST_Expression::ExprType t) -{ - if (ev == NULL) - return NULL; - - switch (t) { - case AST_Expression::EV_short: - switch (ev->et) { - case AST_Expression::EV_short: - return ev; - case AST_Expression::EV_ushort: - if (ev->u.usval > (unsigned short) SHRT_MAX) - return NULL; - ev->u.sval = (short) ev->u.usval; - ev->et = AST_Expression::EV_short; - return ev; - case AST_Expression::EV_long: - if (ev->u.lval > (long) SHRT_MAX || ev->u.lval < (long) -(SHRT_MAX)) - return NULL; - ev->u.sval = (short) ev->u.lval; - ev->et = AST_Expression::EV_short; - return ev; - case AST_Expression::EV_ulong: - if (ev->u.ulval > (unsigned long) SHRT_MAX) - return NULL; - ev->u.sval = (short) ev->u.ulval; - ev->et = AST_Expression::EV_short; - return ev; - case AST_Expression::EV_bool: - ev->u.sval = (short) ev->u.bval; - ev->et = AST_Expression::EV_short; - return ev; - case AST_Expression::EV_float: - if (ev->u.fval > (float) SHRT_MAX || ev->u.fval < (float) -(SHRT_MAX)) - return NULL; - ev->u.sval = (short) ev->u.fval; - ev->et = AST_Expression::EV_short; - return ev; - case AST_Expression::EV_double: - if (ev->u.dval > (double) SHRT_MAX || ev->u.dval < (double) -(SHRT_MAX)) - return NULL; - ev->u.sval = (short) ev->u.dval; - ev->et = AST_Expression::EV_short; - return ev; - case AST_Expression::EV_char: - ev->u.sval = (short) ev->u.cval; - ev->et = AST_Expression::EV_short; - return ev; - case AST_Expression::EV_octet: - ev->u.sval = (short) ev->u.oval; - ev->et = AST_Expression::EV_short; - return ev; - case AST_Expression::EV_longlong: - case AST_Expression::EV_ulonglong: - case AST_Expression::EV_longdouble: - case AST_Expression::EV_wchar: - case AST_Expression::EV_string: - case AST_Expression::EV_wstring: - case AST_Expression::EV_any: - case AST_Expression::EV_void: - case AST_Expression::EV_none: - return NULL; - } - case AST_Expression::EV_ushort: - switch (ev->et) { - case AST_Expression::EV_short: - if (ev->u.sval < 0) - return NULL; - ev->u.usval = (unsigned short) ev->u.sval; - ev->et = AST_Expression::EV_ushort; - return ev; - case AST_Expression::EV_ushort: - return ev; - case AST_Expression::EV_long: - if (ev->u.lval > (long) (SHRT_MAX << 1) || ev->u.lval < 0) - return NULL; - ev->u.usval = (unsigned short) ev->u.lval; - ev->et = AST_Expression::EV_ushort; - return ev; - case AST_Expression::EV_ulong: - if (ev->u.ulval > (unsigned long) (SHRT_MAX << 1)) - return NULL; - ev->u.usval = (unsigned short) ev->u.ulval; - ev->et = AST_Expression::EV_ushort; - return ev; - case AST_Expression::EV_bool: - ev->u.usval = (unsigned short) ev->u.bval; - ev->et = AST_Expression::EV_short; - return ev; - case AST_Expression::EV_float: - if (ev->u.fval < 0.0 || ev->u.fval > (float) (SHRT_MAX << 1)) - return NULL; - ev->u.usval = (unsigned short) ev->u.fval; - ev->et = AST_Expression::EV_short; - return ev; - case AST_Expression::EV_double: - if (ev->u.dval < 0.0 || ev->u.dval > (double) (SHRT_MAX << 1)) - return NULL; - ev->u.usval = (unsigned short) ev->u.dval; - ev->et = AST_Expression::EV_short; - return ev; - case AST_Expression::EV_char: - if ((signed char) ev->u.cval < 0) - return NULL; - ev->u.usval = (unsigned short) ev->u.cval; - ev->et = AST_Expression::EV_ushort; - return ev; - case AST_Expression::EV_octet: - ev->u.usval = (unsigned short) ev->u.oval; - ev->et = AST_Expression::EV_ushort; - return ev; - case AST_Expression::EV_longlong: - case AST_Expression::EV_ulonglong: - case AST_Expression::EV_longdouble: - case AST_Expression::EV_wchar: - case AST_Expression::EV_wstring: - case AST_Expression::EV_string: - case AST_Expression::EV_any: - case AST_Expression::EV_void: - case AST_Expression::EV_none: - return NULL; - } - case AST_Expression::EV_long: - switch (ev->et) { - case AST_Expression::EV_short: - ev->u.lval = (long) ev->u.sval; - ev->et = AST_Expression::EV_long; - return ev; - case AST_Expression::EV_ushort: - ev->u.lval = (long) ev->u.usval; - ev->et = AST_Expression::EV_long; - return ev; - case AST_Expression::EV_long: - return ev; - case AST_Expression::EV_ulong: - if (ev->u.ulval > (unsigned long) LONG_MAX) - return NULL; - ev->u.lval = (long) ev->u.ulval; - ev->et = AST_Expression::EV_long; - return ev; - case AST_Expression::EV_bool: - ev->u.lval = (long) ev->u.bval; - ev->et = AST_Expression::EV_long; - return ev; - case AST_Expression::EV_float: - if (ev->u.fval > (float) LONG_MAX || ev->u.fval < (float) -(LONG_MAX)) - return NULL; - ev->u.lval = (long) ev->u.fval; - ev->et = AST_Expression::EV_long; - return ev; - case AST_Expression::EV_double: - if (ev->u.dval > (double) LONG_MAX || ev->u.dval < (double) -(LONG_MAX)) - return NULL; - ev->u.lval = (long) ev->u.dval; - ev->et = AST_Expression::EV_long; - return ev; - case AST_Expression::EV_char: - ev->u.lval = (long) ev->u.cval; - ev->et = AST_Expression::EV_long; - return ev; - case AST_Expression::EV_octet: - ev->u.lval = (long) ev->u.oval; - ev->et = AST_Expression::EV_long; - return ev; - case AST_Expression::EV_longlong: - case AST_Expression::EV_ulonglong: - case AST_Expression::EV_longdouble: - case AST_Expression::EV_wchar: - case AST_Expression::EV_wstring: - case AST_Expression::EV_string: - case AST_Expression::EV_any: - case AST_Expression::EV_void: - case AST_Expression::EV_none: - return NULL; - } - case AST_Expression::EV_ulong: - switch (ev->et) { - case AST_Expression::EV_short: - if (ev->u.sval < 0) - return NULL; - ev->u.ulval = (unsigned long) ev->u.sval; - ev->et = AST_Expression::EV_ulong; - return ev; - case AST_Expression::EV_ushort: - ev->u.ulval = (unsigned long) ev->u.usval; - ev->et = AST_Expression::EV_ulong; - return ev; - case AST_Expression::EV_long: - if (ev->u.lval < 0) - return NULL; - ev->u.ulval = (unsigned long) ev->u.lval; - ev->et = AST_Expression::EV_ulong; - return ev; - case AST_Expression::EV_ulong: - return ev; - case AST_Expression::EV_bool: - ev->u.ulval = (unsigned long) ev->u.bval; - ev->et = AST_Expression::EV_ulong; - return ev; - case AST_Expression::EV_float: - if (ev->u.fval < 0.0 || ev->u.fval > (float) LONG_MAX) - return NULL; - ev->u.ulval = (unsigned long) ev->u.fval; - ev->et = AST_Expression::EV_ulong; - return ev; - case AST_Expression::EV_double: - if (ev->u.dval < 0.0 || ev->u.dval > (double) LONG_MAX) - return NULL; - ev->u.ulval = (unsigned long) ev->u.dval; - ev->et = AST_Expression::EV_ulong; - return ev; - case AST_Expression::EV_char: - if ((signed char) ev->u.cval < 0) - return NULL; - ev->u.ulval = (unsigned long) ev->u.cval; - ev->et = AST_Expression::EV_ulong; - return ev; - case AST_Expression::EV_octet: - ev->u.ulval = (unsigned long) ev->u.oval; - ev->et = AST_Expression::EV_ulong; - return ev; - case AST_Expression::EV_longlong: - case AST_Expression::EV_ulonglong: - case AST_Expression::EV_longdouble: - case AST_Expression::EV_wchar: - case AST_Expression::EV_wstring: - case AST_Expression::EV_string: - case AST_Expression::EV_any: - case AST_Expression::EV_void: - case AST_Expression::EV_none: - return NULL; - } - case AST_Expression::EV_bool: - switch (ev->et) { - case AST_Expression::EV_short: - ev->u.bval = (ev->u.sval == 0) ? I_FALSE : I_TRUE; - ev->et = AST_Expression::EV_bool; - return ev; - case AST_Expression::EV_ushort: - ev->u.bval = (ev->u.usval == 0) ? I_FALSE : I_TRUE; - ev->et = AST_Expression::EV_bool; - return ev; - case AST_Expression::EV_long: - ev->u.bval = (ev->u.lval == 0) ? I_FALSE : I_TRUE; - ev->et = AST_Expression::EV_bool; - return ev; - case AST_Expression::EV_ulong: - ev->u.bval = (ev->u.ulval == 0) ? I_FALSE : I_TRUE; - ev->et = AST_Expression::EV_bool; - return ev; - case AST_Expression::EV_bool: - return ev; - case AST_Expression::EV_float: - ev->u.bval = (ev->u.fval == 0.0) ? I_FALSE : I_TRUE; - ev->et = AST_Expression::EV_bool; - return ev; - case AST_Expression::EV_double: - ev->u.bval = (ev->u.dval == 0.0) ? I_FALSE : I_TRUE; - ev->et = AST_Expression::EV_bool; - return ev; - case AST_Expression::EV_char: - ev->u.bval = (ev->u.cval == 0) ? I_FALSE : I_TRUE; - ev->et = AST_Expression::EV_bool; - return ev; - case AST_Expression::EV_octet: - ev->u.bval = (ev->u.oval == 0) ? I_FALSE : I_TRUE; - ev->et = AST_Expression::EV_bool; - return ev; - case AST_Expression::EV_longlong: - case AST_Expression::EV_ulonglong: - case AST_Expression::EV_longdouble: - case AST_Expression::EV_wchar: - case AST_Expression::EV_wstring: - case AST_Expression::EV_string: - case AST_Expression::EV_any: - case AST_Expression::EV_void: - case AST_Expression::EV_none: - return NULL; - } - case AST_Expression::EV_float: - switch (ev->et) { - case AST_Expression::EV_short: - ev->u.fval = (float) ev->u.sval; - ev->et = AST_Expression::EV_float; - return ev; - case AST_Expression::EV_ushort: - ev->u.fval = (float) ev->u.usval; - ev->et = AST_Expression::EV_float; - return ev; - case AST_Expression::EV_long: - ev->u.fval = (float) ev->u.lval; - ev->et = AST_Expression::EV_float; - return ev; - case AST_Expression::EV_ulong: - ev->u.fval = (float) ev->u.ulval; - ev->et = AST_Expression::EV_float; - return ev; - case AST_Expression::EV_bool: - ev->u.fval = (float) ((ev->u.bval == I_TRUE) ? 1.0 : 0.0); - ev->et = AST_Expression::EV_float; - return ev; - case AST_Expression::EV_float: - return ev; - case AST_Expression::EV_double: - if (ev->u.dval > FLT_MAX || ev->u.dval < -FLT_MAX) - return NULL; - ev->u.fval = (float) ev->u.dval; - ev->et = AST_Expression::EV_float; - return ev; - case AST_Expression::EV_char: - ev->u.fval = (float) ev->u.cval; - ev->et = AST_Expression::EV_float; - return ev; - case AST_Expression::EV_octet: - ev->u.fval = (float) ev->u.oval; - ev->et = AST_Expression::EV_float; - return ev; - case AST_Expression::EV_longlong: - case AST_Expression::EV_ulonglong: - case AST_Expression::EV_longdouble: - case AST_Expression::EV_wchar: - case AST_Expression::EV_wstring: - case AST_Expression::EV_string: - case AST_Expression::EV_any: - case AST_Expression::EV_void: - case AST_Expression::EV_none: - return NULL; - } - case AST_Expression::EV_double: - switch (ev->et) { - case AST_Expression::EV_short: - ev->u.dval = (double) ev->u.sval; - ev->et = AST_Expression::EV_double; - return ev; - case AST_Expression::EV_ushort: - ev->u.dval = (double) ev->u.usval; - ev->et = AST_Expression::EV_double; - return ev; - case AST_Expression::EV_long: - ev->u.dval = (double) ev->u.lval; - ev->et = AST_Expression::EV_double; - return ev; - case AST_Expression::EV_ulong: - ev->u.dval = (double) ev->u.ulval; - ev->et = AST_Expression::EV_double; - return ev; - case AST_Expression::EV_bool: - ev->u.dval = (ev->u.bval == I_TRUE) ? 1.0 : 0.0; - ev->et = AST_Expression::EV_double; - return ev; - case AST_Expression::EV_float: - ev->u.dval = (double) ev->u.fval; - ev->et = AST_Expression::EV_double; - return ev; - case AST_Expression::EV_double: - return ev; - case AST_Expression::EV_char: - ev->u.dval = (double) ev->u.cval; - ev->et = AST_Expression::EV_double; - return ev; - case AST_Expression::EV_octet: - ev->u.dval = (double) ev->u.oval; - ev->et = AST_Expression::EV_double; - return ev; - case AST_Expression::EV_longlong: - case AST_Expression::EV_ulonglong: - case AST_Expression::EV_longdouble: - case AST_Expression::EV_wchar: - case AST_Expression::EV_wstring: - case AST_Expression::EV_string: - case AST_Expression::EV_any: - case AST_Expression::EV_void: - case AST_Expression::EV_none: - return NULL; - } - case AST_Expression::EV_char: - switch (ev->et) { - case AST_Expression::EV_short: - if (ev->u.sval > (short) MAXCHAR || ev->u.sval < (short) -(MAXCHAR)) - return NULL; - ev->u.cval = (char) ev->u.sval; - ev->et = AST_Expression::EV_char; - return ev; - case AST_Expression::EV_ushort: - if (ev->u.usval > (unsigned short) MAXCHAR) - return NULL; - ev->u.cval = (char) ev->u.usval; - ev->et = AST_Expression::EV_char; - return ev; - case AST_Expression::EV_long: - if (ev->u.lval > (long) MAXCHAR || ev->u.lval < (long) -(MAXCHAR)) - return NULL; - ev->u.cval = (char) ev->u.lval; - ev->et = AST_Expression::EV_char; - return ev; - case AST_Expression::EV_ulong: - if (ev->u.ulval > (unsigned long) MAXCHAR) - return NULL; - ev->u.cval = (char) ev->u.ulval; - ev->et = AST_Expression::EV_char; - return ev; - case AST_Expression::EV_bool: - ev->u.cval = (char) ev->u.bval; - ev->et = AST_Expression::EV_char; - return ev; - case AST_Expression::EV_float: - if (ev->u.fval > (float) MAXCHAR || ev->u.fval < (float) -(MAXCHAR)) - return NULL; - ev->u.cval = (char) ev->u.fval; - ev->et = AST_Expression::EV_char; - return ev; - case AST_Expression::EV_double: - if (ev->u.dval > (double) MAXCHAR || ev->u.dval < (double) -(MAXCHAR)) - return NULL; - ev->u.cval = (char) ev->u.dval; - ev->et = AST_Expression::EV_char; - return ev; - case AST_Expression::EV_char: - return ev; - case AST_Expression::EV_octet: - if (ev->u.oval > (unsigned char) MAXCHAR) - return NULL; - ev->u.cval = (char) ev->u.oval; - ev->et = AST_Expression::EV_char; - return ev; - case AST_Expression::EV_longlong: - case AST_Expression::EV_ulonglong: - case AST_Expression::EV_longdouble: - case AST_Expression::EV_wchar: - case AST_Expression::EV_wstring: - case AST_Expression::EV_string: - case AST_Expression::EV_any: - case AST_Expression::EV_void: - case AST_Expression::EV_none: - return NULL; - } - case AST_Expression::EV_octet: - switch (ev->et) { - case AST_Expression::EV_short: - if (ev->u.sval < 0 || ev->u.sval > (short) (MAXCHAR << 1)) - return NULL; - ev->u.oval = (unsigned char) ev->u.sval; - ev->et = AST_Expression::EV_octet; - return ev; - case AST_Expression::EV_ushort: - if (ev->u.usval > (unsigned short) (MAXCHAR << 1)) - return NULL; - ev->u.oval = (unsigned char) ev->u.usval; - ev->et = AST_Expression::EV_octet; - return ev; - case AST_Expression::EV_long: - if (ev->u.lval < 0 || ev->u.lval > (long) (MAXCHAR << 1)) - return NULL; - ev->u.oval = (unsigned char) ev->u.lval; - ev->et = AST_Expression::EV_octet; - return ev; - case AST_Expression::EV_ulong: - if (ev->u.ulval > (unsigned long) (MAXCHAR << 1)) - return NULL; - ev->u.oval = (unsigned char) ev->u.ulval; - ev->et = AST_Expression::EV_octet; - return ev; - case AST_Expression::EV_bool: - ev->u.oval = (ev->u.bval == I_FALSE) ? 1 : 0; - ev->et = AST_Expression::EV_octet; - return ev; - case AST_Expression::EV_float: - if (ev->u.fval < 0.0 || ev->u.fval > (float) (MAXCHAR << 1)) - return NULL; - ev->u.oval = (unsigned char) ev->u.fval; - ev->et = AST_Expression::EV_octet; - return ev; - case AST_Expression::EV_double: - if (ev->u.dval < 0.0 || ev->u.dval > (double) (MAXCHAR << 1)) - return NULL; - ev->u.oval = (unsigned char) ev->u.dval; - ev->et = AST_Expression::EV_octet; - return ev; - case AST_Expression::EV_char: - if ((signed char) ev->u.cval < 0) - return NULL; - ev->u.oval = (unsigned char) ev->u.cval; - ev->et = AST_Expression::EV_octet; - return ev; - case AST_Expression::EV_octet: - return ev; - case AST_Expression::EV_longlong: - case AST_Expression::EV_ulonglong: - case AST_Expression::EV_longdouble: - case AST_Expression::EV_wchar: - case AST_Expression::EV_wstring: - case AST_Expression::EV_string: - case AST_Expression::EV_any: - case AST_Expression::EV_void: - case AST_Expression::EV_none: - return NULL; - } - case AST_Expression::EV_any: - switch (ev->et) { - case AST_Expression::EV_any: - return ev; - default: - return NULL; - } - case AST_Expression::EV_void: - switch (ev->et) { - case AST_Expression::EV_void: - return ev; - default: - return NULL; - } - case AST_Expression::EV_none: - return NULL; - case AST_Expression::EV_string: - switch (ev->et) { - case AST_Expression::EV_string: - return ev; - default: - return NULL; - } - case AST_Expression::EV_longlong: - case AST_Expression::EV_ulonglong: - case AST_Expression::EV_longdouble: - case AST_Expression::EV_wchar: - case AST_Expression::EV_wstring: - return NULL; - } - return NULL; -} - -/* - * Evaluate the expression wrt the evaluation kind requested. Supported - * evaluation kinds are - * - EK_const: The expression must evaluate to a constant - * - EK_positive_int: The expression must further evaluate to a - * positive integer - */ -static AST_Expression::AST_ExprValue * -eval_kind(AST_Expression::AST_ExprValue *ev, AST_Expression::EvalKind ek) -{ - if (ek == AST_Expression::EK_const) - return ev; - if (ek == AST_Expression::EK_positive_int) - return coerce_value(ev, AST_Expression::EV_ulong); - - return NULL; -} - -/* - * Private operations - */ - -/* - * Apply binary operators to an AST_Expression after evaluating - * its sub-expressions. - * Operations supported: - * - * '+', '-', '*', '/' - */ -AST_Expression::AST_ExprValue * -AST_Expression::eval_bin_op(AST_Expression::EvalKind ek) -{ - AST_ExprValue *retval = NULL; - - if (ek != EK_const && ek != EK_positive_int) - return NULL; - if (pd_v1 == NULL || pd_v2 == NULL) - return NULL; - pd_v1->set_ev(pd_v1->eval_internal(ek)); - if (pd_v1->ev() == NULL) - return NULL; - pd_v1->set_ev(pd_v1->coerce(EV_double)); - if (pd_v1->ev() == NULL) - return NULL; - pd_v2->set_ev(pd_v2->eval_internal(ek)); - if (pd_v2->ev() == NULL) - return NULL; - pd_v2->set_ev(pd_v2->coerce(EV_double)); - if (pd_v2->ev() == NULL) - return NULL; - - retval = new AST_ExprValue; - retval->et = EV_double; - - switch (pd_ec) { - case EC_mod: - if (pd_v2->ev()->u.lval == 0) - return NULL; - retval->u.lval = pd_v1->ev()->u.lval % pd_v2->ev()->u.lval; - break; - case EC_add: - retval->u.dval = pd_v1->ev()->u.dval + pd_v2->ev()->u.dval; - break; - case EC_minus: - retval->u.dval = pd_v1->ev()->u.dval - pd_v2->ev()->u.dval; - break; - case EC_mul: - retval->u.dval = pd_v1->ev()->u.dval * pd_v2->ev()->u.dval; - break; - case EC_div: - if (pd_v2->ev()->u.dval == 0.0) - return NULL; - retval->u.dval = pd_v1->ev()->u.dval / pd_v2->ev()->u.dval; - break; - default: - return NULL; - } - return retval; -} - -/* - * Apply bitwise operations to an AST_Expression after evaluating - * its sub-expressions. - * Operations supported: - * - * '%', '|', '&', '^', '<<', '>>' - */ -AST_Expression::AST_ExprValue * -AST_Expression::eval_bit_op(AST_Expression::EvalKind ek) -{ - AST_Expression::AST_ExprValue *retval=NULL; - - if (ek != EK_const && ek != EK_positive_int) - return NULL; - if (pd_v1 == NULL || pd_v2 == NULL) - return NULL; - pd_v1->set_ev(pd_v1->eval_internal(ek)); - if (pd_v1->ev() == NULL) - return NULL; - pd_v1->set_ev(pd_v1->coerce(EV_long)); - if (pd_v1->ev() == NULL) - return NULL; - pd_v2->set_ev(pd_v2->eval_internal(ek)); - if (pd_v2->ev() == NULL) - return NULL; - pd_v2->set_ev(pd_v2->coerce(EV_long)); - if (pd_v2->ev() == NULL) - return NULL; - - retval = new AST_ExprValue; - retval->et = EV_long; - - switch (pd_ec) { - case EC_or: - retval->u.lval = pd_v1->ev()->u.lval | pd_v2->ev()->u.lval; - break; - case EC_xor: - retval->u.lval = pd_v1->ev()->u.lval ^ pd_v2->ev()->u.lval; - break; - case EC_and: - retval->u.lval = pd_v1->ev()->u.lval & pd_v2->ev()->u.lval; - break; - case EC_left: - retval->u.lval = pd_v1->ev()->u.lval << pd_v2->ev()->u.lval; - break; - case EC_right: - retval->u.lval = pd_v1->ev()->u.lval >> pd_v2->ev()->u.lval; - break; - default: - return NULL; - } - return retval; -} - -/* - * Apply unary operators to an AST_Expression after evaluating its - * sub-expression. - * Operations supported: - * - * '-', '+', '~' - */ -AST_Expression::AST_ExprValue * -AST_Expression::eval_un_op(AST_Expression::EvalKind ek) -{ - AST_ExprValue *retval = NULL; - - if (pd_ev != NULL) - return pd_ev; - - if (ek != EK_const && ek != EK_positive_int) - return NULL; - if (pd_v1 == NULL) - return NULL; - pd_v1->set_ev(pd_v1->eval_internal(ek)); - if (pd_v1->ev() == NULL) - return NULL; - pd_v1->set_ev(pd_v1->coerce(EV_double)); - if (pd_v1->ev() == NULL) - return NULL; - - retval = new AST_ExprValue; - retval->et = EV_double; - - switch (pd_ec) { - case EC_u_plus: - retval->u.lval = pd_v1->ev()->u.lval; - break; - case EC_u_minus: - retval->u.lval = -(pd_v1->ev()->u.lval); - break; - case EC_bit_neg: - pd_v1->set_ev(pd_v1->coerce(EV_long)); - if (pd_v1->ev() == NULL) - return NULL; - retval->u.lval = ~pd_v1->ev()->u.lval; - break; - default: - return NULL; - } - return retval; -} - -/* - * Evaluate a symbolic AST_Expression by looking up the named - * symbol. - */ -AST_Expression::AST_ExprValue * -AST_Expression::eval_symbol(AST_Expression::EvalKind ek) -{ - UTL_Scope *s = 0; - AST_Decl *d = 0; - AST_Constant *c = 0; - - /* - * Is there a symbol stored? - */ - if (pd_n == NULL) { - idl_global->err()->eval_error(this); - return NULL; - } - /* - * Get current scope for lookup - */ - if (idl_global->scopes()->depth() > 0) - s = idl_global->scopes()->top_non_null(); - if (s == NULL) { - idl_global->err()->lookup_error(pd_n); - return NULL; - } - /* - * Do lookup - */ - d = s->lookup_by_name(pd_n, I_TRUE); - if (d == NULL) { - idl_global->err()->lookup_error(pd_n); - return NULL; - } - /* - * Is it a constant? - */ - if (d->node_type() != AST_Decl::NT_const && - d->node_type() != AST_Decl::NT_enum_val) { - idl_global->err()->constant_expected(pd_n, d); - return NULL; - } - /* - * OK, now evaluate the constant we just got, to produce its value - */ - c = AST_Constant::narrow_from_decl(d); - if (c == NULL) return NULL; - return c->constant_value()->eval_internal(ek); -} - -/* - * Coerce "this" to the ExprType required. Returns a copy of the - * original ExprValue with the coercion applied, if successful, or - * NULL if failed. - */ -AST_Expression::AST_ExprValue * -AST_Expression::coerce(AST_Expression::ExprType t) -{ - AST_ExprValue *copy; - - /* - * Is it already of the right type? - */ - if (pd_ev != NULL && pd_ev->et == t) - return pd_ev; - /* - * OK, must coerce - * - * First, evaluate it, then try to coerce result type - * If already evaluated, return the result - */ - pd_ev = eval_internal(EK_const); - if (pd_ev == NULL) - return NULL; - - /* - * Create a copy to contain coercion result - */ - copy = new AST_ExprValue; - - copy->et = pd_ev->et; - switch (pd_ev->et) { - case EV_longlong: - case EV_ulonglong: - case EV_longdouble: - case EV_wchar: - case EV_wstring: - case EV_void: - case EV_none: - case EV_any: - return NULL; - case EV_short: - copy->u.sval = pd_ev->u.sval; - break; - case EV_ushort: - copy->u.usval = pd_ev->u.usval; - break; - case EV_long: - copy->u.lval = pd_ev->u.lval; - break; - case EV_ulong: - copy->u.ulval = pd_ev->u.ulval; - break; - case EV_bool: - copy->u.bval = pd_ev->u.bval; - break; - case EV_float: - copy->u.fval = pd_ev->u.fval; - break; - case EV_double: - copy->u.dval = pd_ev->u.dval; - break; - case EV_char: - copy->u.cval = pd_ev->u.cval; - break; - case EV_octet: - copy->u.oval = pd_ev->u.oval; - break; - case EV_string: - copy->u.strval = pd_ev->u.strval; - break; - } - - return coerce_value(copy, t); -} - -/* - * Eval used internally - */ -AST_Expression::AST_ExprValue * -AST_Expression::eval_internal(AST_Expression::EvalKind ek) -{ - /* - * Already evaluated? - */ - if (pd_ev != NULL) - return eval_kind(pd_ev, ek); - /* - * OK, must evaluate operator - */ - switch (pd_ec) { - case EC_add: - case EC_minus: - case EC_mul: - case EC_div: - case EC_mod: - pd_ev = eval_bin_op(ek); - return eval_kind(pd_ev, ek); - case EC_or: - case EC_xor: - case EC_and: - case EC_left: - case EC_right: - pd_ev = eval_bit_op(ek); - return eval_kind(pd_ev, ek); - case EC_u_plus: - case EC_u_minus: - case EC_bit_neg: - pd_ev = eval_un_op(ek); - return eval_kind(pd_ev, ek); - case EC_symbol: - pd_ev = eval_symbol(ek); - return eval_kind(pd_ev, ek); - case EC_none: - return NULL; - } - return NULL; -} - -/* - * Public operations - */ - -/* - * Evaluate an AST_Expression, producing an AST_ExprValue or NULL - */ -AST_Expression::AST_ExprValue * -AST_Expression::eval(AST_Expression::EvalKind ek) -{ - AST_Expression::AST_ExprValue *v = NULL; - - /* - * Call internal evaluator which does not coerce value to - * EvalKind-expected format - */ - v = eval_internal(ek); - /* - * Then coerce according to EvalKind-expected format - */ - return eval_kind(v, ek); -} - -/* - * Evaluate "this", assigning the value to the pd_ev field. - */ -void -AST_Expression::evaluate(EvalKind ek) -{ - pd_ev = eval_internal(ek); - pd_ev = eval_kind(pd_ev, ek); -} - -/* - * Expression equality comparison operator - */ -long -AST_Expression::operator==(AST_Expression *vc) -{ - if (pd_ec != vc->ec()) - return I_FALSE; - evaluate(EK_const); - vc->evaluate(EK_const); - if (pd_ev == NULL || vc->ev() == NULL) - return I_FALSE; - if (pd_ev->et != vc->ev()->et) - return I_FALSE; - switch (pd_ev->et) { - case EV_short: - return (pd_ev->u.sval == vc->ev()->u.sval) ? I_TRUE : I_FALSE; - case EV_ushort: - return (pd_ev->u.usval == vc->ev()->u.usval) ? I_TRUE : I_FALSE; - case EV_long: - return (pd_ev->u.lval == vc->ev()->u.lval) ? I_TRUE : I_FALSE; - case EV_ulong: - return (pd_ev->u.ulval == vc->ev()->u.ulval) ? I_TRUE : I_FALSE; - case EV_float: - return (pd_ev->u.fval == vc->ev()->u.fval) ? I_TRUE : I_FALSE; - case EV_double: - return (pd_ev->u.dval == vc->ev()->u.dval) ? I_TRUE : I_FALSE; - case EV_char: - return (pd_ev->u.cval == vc->ev()->u.cval) ? I_TRUE : I_FALSE; - case EV_octet: - return (pd_ev->u.oval == vc->ev()->u.oval) ? I_TRUE : I_FALSE; - case EV_bool: - return (pd_ev->u.lval == vc->ev()->u.lval) ? I_TRUE : I_FALSE; - case EV_string: - if (pd_ev->u.strval == NULL) { - if (vc->ev()->u.strval == NULL) - return I_TRUE; - else - return I_FALSE; - } else if (vc->ev()->u.strval == NULL) - return I_FALSE; - else - return (pd_ev->u.strval == vc->ev()->u.strval) ? I_TRUE : I_FALSE; - case EV_longlong: - case EV_ulonglong: - case EV_longdouble: - case EV_wchar: - case EV_wstring: - case EV_any: - case EV_void: - case EV_none: - return I_FALSE; - } - return I_FALSE; -} - -long -AST_Expression::compare(AST_Expression *vc) -{ - if (pd_ec != vc->ec()) - return I_FALSE; - evaluate(EK_const); - vc->evaluate(EK_const); - if (pd_ev == NULL || vc->ev() == NULL) - return I_FALSE; - if (pd_ev->et != vc->ev()->et) - return I_FALSE; - switch (pd_ev->et) { - case EV_short: - return (pd_ev->u.sval == vc->ev()->u.sval) ? I_TRUE : I_FALSE; - case EV_ushort: - return (pd_ev->u.usval == vc->ev()->u.usval) ? I_TRUE : I_FALSE; - case EV_long: - return (pd_ev->u.lval == vc->ev()->u.lval) ? I_TRUE : I_FALSE; - case EV_ulong: - return (pd_ev->u.ulval == vc->ev()->u.ulval) ? I_TRUE : I_FALSE; - case EV_float: - return (pd_ev->u.fval == vc->ev()->u.fval) ? I_TRUE : I_FALSE; - case EV_double: - return (pd_ev->u.dval == vc->ev()->u.dval) ? I_TRUE : I_FALSE; - case EV_char: - return (pd_ev->u.cval == vc->ev()->u.cval) ? I_TRUE : I_FALSE; - case EV_octet: - return (pd_ev->u.oval == vc->ev()->u.oval) ? I_TRUE : I_FALSE; - case EV_bool: - return (pd_ev->u.lval == vc->ev()->u.lval) ? I_TRUE : I_FALSE; - case EV_string: - if (pd_ev->u.strval == NULL) { - if (vc->ev()->u.strval == NULL) - return I_TRUE; - else - return I_FALSE; - } else if (vc->ev()->u.strval == NULL) - return I_FALSE; - else - return (pd_ev->u.strval == vc->ev()->u.strval) ? I_TRUE : I_FALSE; - case EV_longlong: - case EV_ulonglong: - case EV_longdouble: - case EV_wchar: - case EV_wstring: - case EV_any: - case EV_void: - case EV_none: - return I_FALSE; - } - return I_FALSE; -} - -/* - * Redefinition of inherited virtual operations - */ - -/* - * Helper functions for expression dumpers - */ - -/* - * Dump this binary AST_Expression node to the ostream o - */ -static void -dump_binary_expr(ostream &o, char *s, AST_Expression *n1, AST_Expression *n2) -{ - if (n1 != NULL) n1->dump(o); - o << " " << s << " "; - if (n2 != NULL) n2->dump(o); -} - -/* - * Dump this unary AST_Expression node to the ostream o - */ -static void -dump_unary_expr(ostream &o, char *s, AST_Expression *e) -{ - o << s; - e->dump(o); -} - -/* - * Dump the supplied AST_ExprValue to the ostream o - */ -static void -dump_expr_val(ostream &o, AST_Expression::AST_ExprValue *ev) -{ - switch (ev->et) { - case AST_Expression::EV_short: - o << ev->u.sval; - break; - case AST_Expression::EV_ushort: - o << ev->u.usval; - break; - case AST_Expression::EV_long: - o << ev->u.lval; - break; - case AST_Expression::EV_ulong: - o << ev->u.ulval; - break; - case AST_Expression::EV_float: - o << ev->u.fval; - break; - case AST_Expression::EV_double: - o << ev->u.dval; - break; - case AST_Expression::EV_char: - o << ev->u.cval; - break; - case AST_Expression::EV_octet: - o << ev->u.oval; - break; - case AST_Expression::EV_bool: - o << (ev->u.bval == I_TRUE) ? "TRUE" : "FALSE"; - break; - case AST_Expression::EV_string: - if (ev->u.strval != NULL) - ev->u.strval->dump(o); - case AST_Expression::EV_longlong: - case AST_Expression::EV_ulonglong: - case AST_Expression::EV_longdouble: - case AST_Expression::EV_wchar: - case AST_Expression::EV_wstring: - case AST_Expression::EV_any: - case AST_Expression::EV_none: - case AST_Expression::EV_void: - break; - } -} - -/* - * Dump an AST_Expression node to the ostream o - */ -void -AST_Expression::dump(ostream &o) -{ - /* - * See if it was a constant or was evaluated already - */ - if (pd_ev != NULL) { - dump_expr_val(o, pd_ev); - return; - } - /* - * OK, must print out an expression - */ - switch (pd_ec) { - /* - * Binary expressions: - */ - case EC_add: - dump_binary_expr(o, "+", pd_v1, pd_v2); - break; - case EC_minus: - dump_binary_expr(o, "-", pd_v1, pd_v2); - break; - case EC_mul: - dump_binary_expr(o, "*", pd_v1, pd_v2); - break; - case EC_div: - dump_binary_expr(o, "/", pd_v1, pd_v2); - break; - case EC_mod: - dump_binary_expr(o, "%", pd_v1, pd_v2); - break; - case EC_or: - dump_binary_expr(o, "|", pd_v1, pd_v2); - break; - case EC_xor: - dump_binary_expr(o, "^", pd_v1, pd_v2); - break; - case EC_and: - dump_binary_expr(o, "&", pd_v1, pd_v2); - break; - case EC_left: - dump_binary_expr(o, "<<", pd_v1, pd_v2); - break; - case EC_right: - dump_binary_expr(o, ">>", pd_v1, pd_v2); - break; - /* - * Unary expressions: - */ - case EC_u_plus: - dump_unary_expr(o, "+", pd_v1); - break; - case EC_u_minus: - dump_unary_expr(o, "-", pd_v1); - break; - case EC_bit_neg: - dump_unary_expr(o, "~", pd_v1); - break; - /* - * Unevaluated symbol - */ - case EC_symbol: - pd_n->dump(o); - break; - case EC_none: - break; - default: - o << GTDEVEL("unsupported dump mode for expression with ec == ") - << (int) pd_ec ; - break; - } -} - -/* - * Data accessors - */ - -UTL_Scope * -AST_Expression::defined_in() -{ - return pd_defined_in; -} - -void -AST_Expression::set_defined_in(UTL_Scope *d) -{ - pd_defined_in = d; -} - -long -AST_Expression::line() -{ - return pd_line; -} - -void -AST_Expression::set_line(long l) -{ - pd_line = l; -} - -String * -AST_Expression::file_name() -{ - return pd_file_name; -} - -void -AST_Expression::set_file_name(String *f) -{ - pd_file_name = f; -} - -AST_Expression::ExprComb -AST_Expression::ec() -{ - return pd_ec; -} - -void -AST_Expression::set_ec(AST_Expression::ExprComb new_ec) -{ - pd_ec = new_ec; -} - -AST_Expression::AST_ExprValue * -AST_Expression::ev() -{ - return pd_ev; -} - -void -AST_Expression::set_ev(AST_Expression::AST_ExprValue *new_ev) -{ - pd_ev = new_ev; -} - -AST_Expression * -AST_Expression::v1() -{ - return pd_v1; -} - -void -AST_Expression::set_v1(AST_Expression *e) -{ - - pd_v1 = e; -} - -AST_Expression * -AST_Expression::v2() -{ - return pd_v2; -} - -void -AST_Expression::set_v2(AST_Expression *e) -{ - pd_v2 = e; -} - -UTL_ScopedName * -AST_Expression::n() -{ - return pd_n; -} - -void -AST_Expression::set_n(UTL_ScopedName *new_n) -{ - pd_n = new_n; -} diff --git a/TAO/TAO_IDL/ast/ast_field.cpp b/TAO/TAO_IDL/ast/ast_field.cpp deleted file mode 100644 index 80939bcc2ce..00000000000 --- a/TAO/TAO_IDL/ast/ast_field.cpp +++ /dev/null @@ -1,153 +0,0 @@ -// $Id$ - -/* - -COPYRIGHT - -Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United -States of America. All Rights Reserved. - -This product is protected by copyright and distributed under the following -license restricting its use. - -The Interface Definition Language Compiler Front End (CFE) is made -available for your use provided that you include this license and copyright -notice on all media and documentation and the software program in which -this product is incorporated in whole or part. You may copy and extend -functionality (but may not remove functionality) of the Interface -Definition Language CFE without charge, but you are not authorized to -license or distribute it to anyone else except as part of a product or -program developed by you or with the express written consent of Sun -Microsystems, Inc. ("Sun"). - -The names of Sun Microsystems, Inc. and any of its subsidiaries or -affiliates may not be used in advertising or publicity pertaining to -distribution of Interface Definition Language CFE as permitted herein. - -This license is effective until terminated by Sun for failure to comply -with this license. Upon termination, you shall destroy or return all code -and documentation for the Interface Definition Language CFE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF -ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS -FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF -DEALING, USAGE OR TRADE PRACTICE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT -ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES -TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. - -SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH -RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY -INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. - -IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR -ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL -DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -Use, duplication, or disclosure by the government is subject to -restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in -Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR -52.227-19. - -Sun, Sun Microsystems and the Sun logo are trademarks or registered -trademarks of Sun Microsystems, Inc. - -SunSoft, Inc. -2550 Garcia Avenue -Mountain View, California 94043 - -NOTE: - -SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are -trademarks or registered trademarks of Sun Microsystems, Inc. - - */ - -/* - * ast_field.cc - Implementation of class AST_Field - * - * AST_Fields denote fields in IDL structure, union and exception - * declarations. AST_Field is also used as a superclass of AST_Argument - * and AST_UnionBranch. - * AST_Fields have a field type (a subclass of AST_Type) and a name - * (a UTL_ScopedName) - * - * AST_Field supplies two constructors, one to be used in constructing - * AST_Field nodes, the other to be used in constructing AST_Argument - * nodes and AST_UnionBranch nodes. - */ - -#include "idl.h" -#include "idl_extern.h" - -/* - * Constructor(s) and destructor - */ - -/* - * Default constructor - */ -AST_Field::AST_Field() - : pd_field_type(NULL) -{ -} - -/* - * To be used when constructing an AST_Field node - */ -AST_Field::AST_Field(AST_Type *ft, UTL_ScopedName *n, UTL_StrList *p) - : AST_Decl(AST_Decl::NT_field, n, p), - pd_field_type(ft) -{ -} - -/* - * To be used when constructing a node of a subclass of AST_Field - */ -AST_Field::AST_Field(AST_Decl::NodeType nt, AST_Type *ft, - UTL_ScopedName *n, UTL_StrList *p) - : AST_Decl(nt, n, p), - pd_field_type(ft) -{ -} - -/* - * Private operations - */ - -/* - * Public operations - */ - - -/* - * Redefinition of inherited virtual operations - */ - -/* - * Dump this AST_Field node to the ostream o - */ -void -AST_Field::dump(ostream &o) -{ - pd_field_type->local_name()->dump(o); - o << " "; - local_name()->dump(o); -} - -/* - * Data accessors - */ - -AST_Type * -AST_Field::field_type() -{ - return pd_field_type; -} - -/* - * Narrowing methods - */ -IMPL_NARROW_METHODS1(AST_Field, AST_Decl) -IMPL_NARROW_FROM_DECL(AST_Field) diff --git a/TAO/TAO_IDL/ast/ast_generator.cpp b/TAO/TAO_IDL/ast/ast_generator.cpp deleted file mode 100644 index 65b03aee387..00000000000 --- a/TAO/TAO_IDL/ast/ast_generator.cpp +++ /dev/null @@ -1,414 +0,0 @@ -// $Id$ -/* - -COPYRIGHT - -Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United -States of America. All Rights Reserved. - -This product is protected by copyright and distributed under the following -license restricting its use. - -The Interface Definition Language Compiler Front End (CFE) is made -available for your use provided that you include this license and copyright -notice on all media and documentation and the software program in which -this product is incorporated in whole or part. You may copy and extend -functionality (but may not remove functionality) of the Interface -Definition Language CFE without charge, but you are not authorized to -license or distribute it to anyone else except as part of a product or -program developed by you or with the express written consent of Sun -Microsystems, Inc. ("Sun"). - -The names of Sun Microsystems, Inc. and any of its subsidiaries or -affiliates may not be used in advertising or publicity pertaining to -distribution of Interface Definition Language CFE as permitted herein. - -This license is effective until terminated by Sun for failure to comply -with this license. Upon termination, you shall destroy or return all code -and documentation for the Interface Definition Language CFE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF -ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS -FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF -DEALING, USAGE OR TRADE PRACTICE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT -ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES -TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. - -SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH -RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY -INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. - -IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR -ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL -DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -Use, duplication, or disclosure by the government is subject to -restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in -Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR -52.227-19. - -Sun, Sun Microsystems and the Sun logo are trademarks or registered -trademarks of Sun Microsystems, Inc. - -SunSoft, Inc. -2550 Garcia Avenue -Mountain View, California 94043 - -NOTE: - -SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are -trademarks or registered trademarks of Sun Microsystems, Inc. - - */ - -/* - * ast_generator.cc - Implements the base AST node generator - * - * The generator protocol is explained in detail in the IDL CFE - * design document. - * The AST_Generator class provides operations to instantiate any - * of the AST nodes. It contains an operation for every constructor - * of every AST class. - */ - -#include "idl.h" -#include "idl_extern.h" - -#include "ace/inc_user_config.h" - -/* - * Constructors - */ - -/* - * Private operations - */ - -/* - * Public operations - */ - -/* - * Construct an AST_PredefinedType node (a predefined type) - */ -AST_PredefinedType * -AST_Generator::create_predefined_type(AST_PredefinedType::PredefinedType t, - UTL_ScopedName *n, - UTL_StrList *p) -{ - return new AST_PredefinedType(t, n, p); -} - -/* - * Construct an AST_Module node (a module) - */ -AST_Module * -AST_Generator::create_module(UTL_ScopedName *n, UTL_StrList *p) -{ - return new AST_Module(n, p); -} - -/* - * Construct an AST_Root node (a node representing the root of an AST) - */ -AST_Root * -AST_Generator::create_root(UTL_ScopedName *n, - UTL_StrList *p) -{ - return new AST_Root(n, p); -} - -/* - * Construct an AST_Interface node (an interface) - */ -AST_Interface * -AST_Generator::create_interface(UTL_ScopedName *n, - AST_Interface **ih, - long nih, - UTL_StrList *p) -{ - return new AST_Interface(n, ih, nih, p); -} - -/* - * Construct an AST_InterfaceFwd node (a node representing the forward - * declaration of an interface) - */ -AST_InterfaceFwd * -AST_Generator::create_interface_fwd(UTL_ScopedName *n, UTL_StrList *p) -{ - return new AST_InterfaceFwd(n, p); -} - -/* - * Construct an AST_Exception node (an exception) - */ -AST_Exception * -AST_Generator::create_exception(UTL_ScopedName *n, UTL_StrList *p) -{ - return new AST_Exception(n, p); -} - -/* - * Construct an AST_Structure node (a struct) - */ -AST_Structure * -AST_Generator::create_structure(UTL_ScopedName *n, UTL_StrList *p) -{ - return new AST_Structure(n, p); -} - -/* - * Construct an AST_Enum node (an enum) - */ -AST_Enum * -AST_Generator::create_enum(UTL_ScopedName *n, UTL_StrList *p) -{ - return new AST_Enum(n, p); -} - -/* - * Construct an AST_Operation node (an operation on an interface) - */ -AST_Operation * -AST_Generator::create_operation(AST_Type *rt, - AST_Operation::Flags fl, - UTL_ScopedName *n, - UTL_StrList *p) -{ - return new AST_Operation(rt, fl, n, p); -} - -/* - * Construct an AST_Field node (a field in a struct, union or exception) - */ -AST_Field * -AST_Generator::create_field(AST_Type *ft, UTL_ScopedName *n, UTL_StrList *p) -{ - return new AST_Field(ft, n, p); -} - -/* - * Construct an AST_Argument node (an argument to an operation) - */ -AST_Argument * -AST_Generator::create_argument(AST_Argument::Direction d, - AST_Type *ft, - UTL_ScopedName *n, - UTL_StrList *p) -{ - return new AST_Argument(d, ft, n, p); -} - -/* - * Construct an AST_Attribute node (an attribute) - */ -AST_Attribute * -AST_Generator::create_attribute(idl_bool ro, - AST_Type *ft, - UTL_ScopedName *n, - UTL_StrList *p) -{ - return new AST_Attribute(ro, ft, n, p); -} - -/* - * Construct an AST_Union node (a union) - */ -AST_Union * -AST_Generator::create_union(AST_ConcreteType *dt, - UTL_ScopedName *n, - UTL_StrList *p) -{ - return new AST_Union(dt, n, p); -} - -/* - * Construct an AST_UnionBranch node (a branch in a union) - */ -AST_UnionBranch * -AST_Generator::create_union_branch(AST_UnionLabel *lab, - AST_Type *ft, - UTL_ScopedName *n, - UTL_StrList *p) -{ - return new AST_UnionBranch(lab, ft, n, p); -} - -/* - * Construct an AST_UnionLabel node (a label in a union) - */ -AST_UnionLabel * -AST_Generator::create_union_label(AST_UnionLabel::UnionLabel ul, - AST_Expression *v) -{ - return new AST_UnionLabel(ul, v); -} - -/* - * Construct an AST_Constant node (a constant) - */ -AST_Constant * -AST_Generator::create_constant(AST_Expression::ExprType et, - AST_Expression *ev, - UTL_ScopedName *n, - UTL_StrList *p) -{ - return new AST_Constant(et, ev, n, p); -} - -/* - * Construct an AST_Expression node denoting a symbolic name - */ -AST_Expression * -AST_Generator::create_expr(UTL_ScopedName *n) -{ - return new AST_Expression(n); -} - -/* - * Construct an AST_Expression denoting a coercion - */ -AST_Expression * -AST_Generator::create_expr(AST_Expression *v, AST_Expression::ExprType t) -{ - return new AST_Expression(v, t); -} - -/* - * Construct an AST_Expression node denoting a binary combinator - * of two other AST_Expression nodes - */ -AST_Expression * -AST_Generator::create_expr(AST_Expression::ExprComb c, - AST_Expression *v1, - AST_Expression *v2) -{ - return new AST_Expression(c, v1, v2); -} - -/* - * Construct an AST_Expression node denoting a long integer - */ -AST_Expression * -AST_Generator::create_expr(long v) -{ - return new AST_Expression(v); -} - -/* - * Construct an AST_Expression node denoting a long integer being used - * as a boolean - */ -AST_Expression * -AST_Generator::create_expr(long v, AST_Expression::ExprType t) -{ - return new AST_Expression(v, t); -} - -/* - * Construct an AST_Expression node denoting an unsigned long integer - */ -AST_Expression * -AST_Generator::create_expr(unsigned long v) -{ - return new AST_Expression(v); -} - -/* - * Construct an AST_Expression node denoting a string (a char * - * encapsulated as String) - */ -AST_Expression * -AST_Generator::create_expr(String *s) -{ - return new AST_Expression(s); -} - -/* - * Construct an AST_Expression node denoting a character - */ -AST_Expression * -AST_Generator::create_expr(char c) -{ - return new AST_Expression(c); -} - -/* - * Construct an AST_Expression node denoting a 64-bit floating point number - */ -AST_Expression * -AST_Generator::create_expr(double d) -{ - return new AST_Expression(d); -} - -/* - * Construct an AST_EnumVal node (an enumerator) - */ -AST_EnumVal * -AST_Generator::create_enum_val(unsigned long v, - UTL_ScopedName *n, - UTL_StrList *p) -{ - return new AST_EnumVal(v, n, p); -} - -/* - * Construct an AST_Array node (an array type or field modifier) - */ -AST_Array * -AST_Generator::create_array(UTL_ScopedName *n, - unsigned long ndims, - UTL_ExprList *dims) -{ - return new AST_Array(n, ndims, dims); -} - -/* - * Construct an AST_Sequence node (a sequence type definition) - */ -AST_Sequence * -AST_Generator::create_sequence(AST_Expression *ms, AST_Type *bt) -{ - return new AST_Sequence(ms, bt); -} - -/* - * Construct an AST_String node (a string type definition) - */ -AST_String * -AST_Generator::create_string(AST_Expression *ms) -{ - return new AST_String(ms); -} - -/* - * Construct an AST_String node denoting a wide string type definition - */ -AST_String * -AST_Generator::create_wstring(AST_Expression *ms) -{ - return new AST_String(ms, sizeof(ACE_OS::WChar)); -} - -/* - * Construct an AST_Typedef node (a typedef) - */ -AST_Typedef * -AST_Generator::create_typedef(AST_Type *bt, UTL_ScopedName *n, UTL_StrList *p) -{ - return new AST_Typedef(bt, n, p); -} - -/* - * Construct an AST_Native node - */ -AST_Native * -AST_Generator::create_native (UTL_ScopedName *n, - UTL_StrList *p) -{ - return new AST_Native (n, p); -} diff --git a/TAO/TAO_IDL/ast/ast_interface.cpp b/TAO/TAO_IDL/ast/ast_interface.cpp deleted file mode 100644 index 86e9b43c1b9..00000000000 --- a/TAO/TAO_IDL/ast/ast_interface.cpp +++ /dev/null @@ -1,605 +0,0 @@ -// $Id$ - -/* - -COPYRIGHT - -Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United -States of America. All Rights Reserved. - -This product is protected by copyright and distributed under the following -license restricting its use. - -The Interface Definition Language Compiler Front End (CFE) is made -available for your use provided that you include this license and copyright -notice on all media and documentation and the software program in which -this product is incorporated in whole or part. You may copy and extend -functionality (but may not remove functionality) of the Interface -Definition Language CFE without charge, but you are not authorized to -license or distribute it to anyone else except as part of a product or -program developed by you or with the express written consent of Sun -Microsystems, Inc. ("Sun"). - -The names of Sun Microsystems, Inc. and any of its subsidiaries or -affiliates may not be used in advertising or publicity pertaining to -distribution of Interface Definition Language CFE as permitted herein. - -This license is effective until terminated by Sun for failure to comply -with this license. Upon termination, you shall destroy or return all code -and documentation for the Interface Definition Language CFE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF -ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS -FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF -DEALING, USAGE OR TRADE PRACTICE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT -ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES -TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. - -SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH -RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY -INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. - -IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR -ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL -DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -Use, duplication, or disclosure by the government is subject to -restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in -Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR -52.227-19. - -Sun, Sun Microsystems and the Sun logo are trademarks or registered -trademarks of Sun Microsystems, Inc. - -SunSoft, Inc. -2550 Garcia Avenue -Mountain View, California 94043 - -NOTE: - -SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are -trademarks or registered trademarks of Sun Microsystems, Inc. - - */ - -/* - * ast_interface.cc - Implementation of class AST_Interface - * - * AST_Interfaces denote IDL interface definitions - * AST_Interfaces are subclasses of AST_Type and UTL_Scope - * AST_Interfaces have an array of inherited interfaces and - * a count of the number of inherited interfaces. This count - * represents the total number of unique (recursively) inherited - * interfaces. - */ - -#include "idl.h" -#include "idl_extern.h" - -/* - * Constructor(s) and destructor - */ -AST_Interface::AST_Interface() - : pd_inherits(NULL), - pd_n_inherits(0) -{ -} - -AST_Interface::AST_Interface(UTL_ScopedName *n, - AST_Interface **ih, - long nih, - UTL_StrList *p) - : AST_Decl(AST_Decl::NT_interface, n, p), - UTL_Scope(AST_Decl::NT_interface), - pd_inherits(ih), - pd_n_inherits(nih) -{ -} - -/* - * Private operations - */ - -/* - * Public operations - */ - - -/* - * Redefinition of inherited virtual operations - */ - -/* - * Add an AST_Constant node (a constant declaration) to this scope - */ -AST_Constant *AST_Interface::fe_add_constant(AST_Constant *t) -{ - AST_Decl *d; - - /* - * Can't add to interface which was not yet defined - */ - if (!is_defined()) { - idl_global->err()->error2(UTL_Error::EIDL_DECL_NOT_DEFINED, this, t); - return NULL; - } - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to scope - */ - add_to_scope(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add an AST_Exception node (an exception declaration) to this scope - */ -AST_Exception *AST_Interface::fe_add_exception(AST_Exception *t) -{ - AST_Decl *d; - - /* - * Can't add to interface which was not yet defined - */ - if (!is_defined()) { - idl_global->err()->error2(UTL_Error::EIDL_DECL_NOT_DEFINED, this, t); - return NULL; - } - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to scope - */ - add_to_scope(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add an AST_Attribute node (an attribute declaration) to this scope - */ -AST_Attribute *AST_Interface::fe_add_attribute(AST_Attribute *t) -{ - AST_Decl *d; - - /* - * Can't add to interface which was not yet defined - */ - if (!is_defined()) { - idl_global->err()->error2(UTL_Error::EIDL_DECL_NOT_DEFINED, this, t); - return NULL; - } - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to scope - */ - add_to_scope(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add an AST_Operation node (an operation declaration) to this scope - */ -AST_Operation *AST_Interface::fe_add_operation(AST_Operation *t) -{ - AST_Decl *d; - - /* - * Can't add to interface which was not yet defined - */ - if (!is_defined()) { - idl_global->err()->error2(UTL_Error::EIDL_DECL_NOT_DEFINED, this, t); - return NULL; - } - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to scope - */ - add_to_scope(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add an AST_Structure (a struct declaration) to this scope - */ -AST_Structure *AST_Interface::fe_add_structure(AST_Structure *t) -{ - AST_Decl *d; - - /* - * Can't add to interface which was not yet defined - */ - if (!is_defined()) { - idl_global->err()->error2(UTL_Error::EIDL_DECL_NOT_DEFINED, this, t); - return NULL; - } - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to scope - */ - add_to_scope(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add an AST_Enum node (an enum declaration) to this scope - */ -AST_Enum *AST_Interface::fe_add_enum(AST_Enum *t) -{ - AST_Decl *d; - - /* - * Can't add to interface which was not yet defined - */ - if (!is_defined()) { - idl_global->err()->error2(UTL_Error::EIDL_DECL_NOT_DEFINED, this, t); - return NULL; - } - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to scope - */ - add_to_scope(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add an AST_Union (a union declaration) to this scope - */ -AST_Union *AST_Interface::fe_add_union(AST_Union *t) -{ - AST_Decl *d; - - /* - * Can't add to interface which was not yet defined - */ - if (!is_defined()) { - idl_global->err()->error2(UTL_Error::EIDL_DECL_NOT_DEFINED, this, t); - return NULL; - } - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to scope - */ - add_to_scope(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add an AST_EnumVal node (an enumerator) to this scope. - * This is done to conform to the C++ scoping rules which declare - * enumerators in the enclosing scope (in addition to declaring them - * in the enum itself) - */ -AST_EnumVal *AST_Interface::fe_add_enum_val(AST_EnumVal *t) -{ - AST_Decl *d; - - /* - * Can't add to interface which was not yet defined - */ - if (!is_defined()) { - idl_global->err()->error2(UTL_Error::EIDL_DECL_NOT_DEFINED, this, t); - return NULL; - } - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to scope - */ - add_to_scope(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add an AST_Typedef (a typedef) to the current scope - */ -AST_Typedef *AST_Interface::fe_add_typedef(AST_Typedef *t) -{ - AST_Decl *d; - - /* - * Can't add to interface which was not yet defined - */ - if (!is_defined()) { - idl_global->err()->error2(UTL_Error::EIDL_DECL_NOT_DEFINED, this, t); - return NULL; - } - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to scope - */ - add_to_scope(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add an AST_Native (a native declaration) to this scope - */ -AST_Native *AST_Interface::fe_add_native (AST_Native *t) -{ - AST_Decl *d; - - /* - * Can't add to interface which was not yet defined - */ - if (!is_defined()) { - idl_global->err()->error2(UTL_Error::EIDL_DECL_NOT_DEFINED, this, t); - return NULL; - } - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to scope - */ - add_to_scope(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Dump this AST_Interface node to the ostream o - */ -void -AST_Interface::dump(ostream &o) -{ - long i; - - o << "interface "; - local_name()->dump(o); - o << " "; - if (pd_n_inherits > 0) { - o << ": "; - for (i = 0; i < pd_n_inherits; i++) { - pd_inherits[i]->local_name()->dump(o); - if (i < pd_n_inherits - 1) - o << ", "; - } - } - o << " {\n"; - UTL_Scope::dump(o); - idl_global->indent()->skip_to(o); - o << "}"; -} - -/* - * Data accessors - */ - -AST_Interface ** -AST_Interface::inherits() -{ - return pd_inherits; -} - -void -AST_Interface::set_inherits(AST_Interface **i) -{ - pd_inherits = i; -} - -long -AST_Interface::n_inherits() -{ - return pd_n_inherits; -} - -void -AST_Interface::set_n_inherits(long i) -{ - pd_n_inherits = i; -} - -/* - * Narrowing methods - */ -IMPL_NARROW_METHODS2(AST_Interface, AST_Type, UTL_Scope) -IMPL_NARROW_FROM_DECL(AST_Interface) -IMPL_NARROW_FROM_SCOPE(AST_Interface) diff --git a/TAO/TAO_IDL/ast/ast_interface_fwd.cpp b/TAO/TAO_IDL/ast/ast_interface_fwd.cpp deleted file mode 100644 index f9d20fdcca9..00000000000 --- a/TAO/TAO_IDL/ast/ast_interface_fwd.cpp +++ /dev/null @@ -1,147 +0,0 @@ -// $Id$ - -/* - -COPYRIGHT - -Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United -States of America. All Rights Reserved. - -This product is protected by copyright and distributed under the following -license restricting its use. - -The Interface Definition Language Compiler Front End (CFE) is made -available for your use provided that you include this license and copyright -notice on all media and documentation and the software program in which -this product is incorporated in whole or part. You may copy and extend -functionality (but may not remove functionality) of the Interface -Definition Language CFE without charge, but you are not authorized to -license or distribute it to anyone else except as part of a product or -program developed by you or with the express written consent of Sun -Microsystems, Inc. ("Sun"). - -The names of Sun Microsystems, Inc. and any of its subsidiaries or -affiliates may not be used in advertising or publicity pertaining to -distribution of Interface Definition Language CFE as permitted herein. - -This license is effective until terminated by Sun for failure to comply -with this license. Upon termination, you shall destroy or return all code -and documentation for the Interface Definition Language CFE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF -ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS -FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF -DEALING, USAGE OR TRADE PRACTICE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT -ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES -TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. - -SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH -RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY -INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. - -IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR -ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL -DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -Use, duplication, or disclosure by the government is subject to -restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in -Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR -52.227-19. - -Sun, Sun Microsystems and the Sun logo are trademarks or registered -trademarks of Sun Microsystems, Inc. - -SunSoft, Inc. -2550 Garcia Avenue -Mountain View, California 94043 - -NOTE: - -SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are -trademarks or registered trademarks of Sun Microsystems, Inc. - - */ - -/* - * ast_interface_fwd.cc - Implementation of class AST_InterfaceFwd - * - * AST_InterfaceFwd nodes denote forward declarations of IDL interfaces - * AST_InterfaceFwd nodes have a field containing the full declaration - * of the interface, which is initialized when that declaration is - * encountered. - */ - -#include "idl.h" -#include "idl_extern.h" - -/* - * Constructor(s) and destructor - */ -AST_InterfaceFwd::AST_InterfaceFwd() - : pd_full_definition(NULL) -{ -} - -AST_InterfaceFwd::AST_InterfaceFwd(UTL_ScopedName *n, UTL_StrList *p) - : AST_Decl(AST_Decl::NT_interface_fwd, n, p) -{ - /* - * Create a dummy placeholder for the forward declared interface. This - * interface node is not yet defined (n_inherits < 0), so some operations - * will fail - */ - pd_full_definition = idl_global->gen()->create_interface(n, NULL, -1, p); - /* - * Record the node in a list to be checked after the entire AST has been - * parsed. All nodes in the list must have n_inherits >= 0, else this - * indicates that a full definition was not seen for this forward - * delcared interface - */ - AST_record_fwd_interface(this); -} - -/* - * Private operations - */ - -/* - * Public operations - */ - -/* - * Redefinition of inherited virtual operations - */ - -/* - * Dump this AST_InterfaceFwd node to the ostream o - */ -void -AST_InterfaceFwd::dump(ostream &o) -{ - o << "interface "; - local_name()->dump(o); -} - -/* - * Data accessors - */ - -AST_Interface * -AST_InterfaceFwd::full_definition() -{ - return pd_full_definition; -} - -void -AST_InterfaceFwd::set_full_definition(AST_Interface *nfd) -{ - pd_full_definition = nfd; -} - -/* - * Narrowing methods - */ -IMPL_NARROW_METHODS1 (AST_InterfaceFwd, AST_Type) -IMPL_NARROW_FROM_DECL (AST_InterfaceFwd) diff --git a/TAO/TAO_IDL/ast/ast_module.cpp b/TAO/TAO_IDL/ast/ast_module.cpp deleted file mode 100644 index ea5ab115fb7..00000000000 --- a/TAO/TAO_IDL/ast/ast_module.cpp +++ /dev/null @@ -1,592 +0,0 @@ -// $Id$ - -/* - -COPYRIGHT - -Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United -States of America. All Rights Reserved. - -This product is protected by copyright and distributed under the following -license restricting its use. - -The Interface Definition Language Compiler Front End (CFE) is made -available for your use provided that you include this license and copyright -notice on all media and documentation and the software program in which -this product is incorporated in whole or part. You may copy and extend -functionality (but may not remove functionality) of the Interface -Definition Language CFE without charge, but you are not authorized to -license or distribute it to anyone else except as part of a product or -program developed by you or with the express written consent of Sun -Microsystems, Inc. ("Sun"). - -The names of Sun Microsystems, Inc. and any of its subsidiaries or -affiliates may not be used in advertising or publicity pertaining to -distribution of Interface Definition Language CFE as permitted herein. - -This license is effective until terminated by Sun for failure to comply -with this license. Upon termination, you shall destroy or return all code -and documentation for the Interface Definition Language CFE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF -ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS -FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF -DEALING, USAGE OR TRADE PRACTICE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT -ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES -TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. - -SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH -RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY -INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. - -IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR -ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL -DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -Use, duplication, or disclosure by the government is subject to -restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in -Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR -52.227-19. - -Sun, Sun Microsystems and the Sun logo are trademarks or registered -trademarks of Sun Microsystems, Inc. - -SunSoft, Inc. -2550 Garcia Avenue -Mountain View, California 94043 - -NOTE: - -SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are -trademarks or registered trademarks of Sun Microsystems, Inc. - - */ - -/* - * ast_module.cc - Implementation of class AST_Module - * - * AST_Modules denote IDL module declarations - * AST_Modules are subclasses of AST_Decl (they are not a type!) and - * of UTL_Scope. - */ - -#include "idl.h" -#include "idl_extern.h" - -/* - * Constructor(s) and destructor - */ -AST_Module::AST_Module() -{ -} - -AST_Module::AST_Module(UTL_ScopedName *n, UTL_StrList *p) - : AST_Decl(AST_Decl::NT_module, n, p), - UTL_Scope(AST_Decl::NT_module) -{ -} - -/* - * Private operations - */ - -/* - * Public operations - */ - -/* - * Redefinition of inherited virtual operations - */ - -/* - * Add this AST_PredefinedType node (a predefined type declaration) to - * this scope - */ -AST_PredefinedType *AST_Module::fe_add_predefined_type(AST_PredefinedType *t) -{ - AST_Decl *d; - - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to scope - */ - add_to_scope(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add this AST_Module node (a module declaration) to this scope - */ -AST_Module *AST_Module::fe_add_module(AST_Module *t) -{ - AST_Decl *d; - - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to scope - */ - add_to_scope(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add this AST_Interface node (an interface declaration) to this scope - */ -AST_Interface *AST_Module::fe_add_interface(AST_Interface *t) -{ - AST_Decl *predef; - AST_Interface *fwd; - - /* - * Already defined? - */ - if ((predef = lookup_for_add(t, I_FALSE)) != NULL) { - /* - * Treat fwd declared interfaces specially - */ - if (predef->node_type() == AST_Decl::NT_interface) { - fwd = AST_Interface::narrow_from_decl(predef); - - if (fwd == NULL) - return NULL; - - if (!fwd->is_defined()) { /* Forward declared and not defined yet */ - if (fwd->defined_in() != this) { - idl_global->err() - ->error3(UTL_Error::EIDL_SCOPE_CONFLICT, fwd, t, this); - return NULL; - } - } - /* - * OK, not illegal redef of forward declaration. Now check whether - * it has been referenced already - */ - else if (referenced(predef)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, predef); - return NULL; - } - } else if (!can_be_redefined(predef)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, predef); - return NULL; - } else if (referenced(predef)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, predef); - return NULL; - } else if (t->has_ancestor(predef)) { - idl_global->err()->redefinition_in_scope(t, predef); - return NULL; - } - } - /* - * Add it to scope - */ - add_to_scope(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add this AST_InterfaceFwd node (a forward declaration of an IDL - * interface) to this scope - */ -AST_InterfaceFwd *AST_Module::fe_add_interface_fwd(AST_InterfaceFwd *i) -{ - AST_Decl *d; - AST_Interface *itf; - - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(i, I_FALSE)) != NULL) { - if (d->node_type() == AST_Decl::NT_interface && - d->defined_in() == this) { - itf = AST_Interface::narrow_from_decl(d); - if (itf == NULL) - return NULL; - - i->set_full_definition(itf); - return i; - } - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, i, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, i, this, d); - return NULL; - } - if (i->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(i, d); - return NULL; - } - } - /* - * Add it to scope - */ - add_to_scope(i); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(i, I_FALSE); - - return i; -} - -/* - * Add this AST_Constant node (a constant declaration) to this scope - */ -AST_Constant *AST_Module::fe_add_constant(AST_Constant *t) -{ - AST_Decl *d; - - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to scope - */ - add_to_scope(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add this AST_Exception node (an exception declaration) to this scope - */ -AST_Exception *AST_Module::fe_add_exception(AST_Exception *t) -{ - AST_Decl *d; - - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to scope - */ - add_to_scope(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add this AST_Union node (a union declaration) to this scope - */ -AST_Union *AST_Module::fe_add_union(AST_Union *t) -{ - AST_Decl *d; - - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to scope - */ - add_to_scope(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add this AST_Structure node (a struct declaration) to this scope - */ -AST_Structure *AST_Module::fe_add_structure(AST_Structure *t) -{ - AST_Decl *d; - - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to scope - */ - add_to_scope(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add this AST_Enum node (an enum declaration) to this scope - */ -AST_Enum *AST_Module::fe_add_enum(AST_Enum *t) -{ - AST_Decl *d; - - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to scope - */ - add_to_scope(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add this AST_EnumVal node (an enumerator declaration) to this scope - * This is done to conform to the C++ scoping rules which declare - * enumerators in the enclosing scope (in addition to declaring them - * in the enum itself) - */ -AST_EnumVal *AST_Module::fe_add_enum_val(AST_EnumVal *t) -{ - AST_Decl *d; - - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to scope - */ - add_to_scope(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add this AST_Typedef node (a typedef) to this scope - */ -AST_Typedef *AST_Module::fe_add_typedef(AST_Typedef *t) -{ - AST_Decl *d; - - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to scope - */ - add_to_scope(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add an AST_Native (a native declaration) to this scope - */ -AST_Native *AST_Module::fe_add_native (AST_Native *t) -{ - AST_Decl *d; - - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to scope - */ - add_to_scope(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Dump this AST_Module node to the ostream o - */ -void -AST_Module::dump(ostream &o) -{ - o << "module "; - local_name()->dump(o); - o << " {\n"; - UTL_Scope::dump(o); - idl_global->indent()->skip_to(o); - o << "}"; -} - -/* - * Narrowing methods - */ -IMPL_NARROW_METHODS2(AST_Module, AST_Decl, UTL_Scope) -IMPL_NARROW_FROM_DECL(AST_Module) -IMPL_NARROW_FROM_SCOPE(AST_Module) diff --git a/TAO/TAO_IDL/ast/ast_native.cpp b/TAO/TAO_IDL/ast/ast_native.cpp deleted file mode 100644 index 17888d86403..00000000000 --- a/TAO/TAO_IDL/ast/ast_native.cpp +++ /dev/null @@ -1,33 +0,0 @@ -// $Id$ - - -// AST_Native: New IDL type added by the POA spec - -#include "idl.h" -#include "idl_extern.h" - -/* - * Constructor(s) - */ -AST_Native::AST_Native (void) -{ -} - -AST_Native::AST_Native(UTL_ScopedName *n, - UTL_StrList *p) - : AST_Decl (AST_Decl::NT_native, n, p) -{ -} - -/* - * Dump this AST_Native node to the ostream o - */ -void -AST_Native::dump (ostream &o) -{ - AST_Decl::dump (o); -} - -// Narrowing -IMPL_NARROW_METHODS1(AST_Native, AST_Type) -IMPL_NARROW_FROM_DECL(AST_Native) diff --git a/TAO/TAO_IDL/ast/ast_operation.cpp b/TAO/TAO_IDL/ast/ast_operation.cpp deleted file mode 100644 index c0371591258..00000000000 --- a/TAO/TAO_IDL/ast/ast_operation.cpp +++ /dev/null @@ -1,328 +0,0 @@ -// $Id$ - -/* - -COPYRIGHT - -Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United -States of America. All Rights Reserved. - -This product is protected by copyright and distributed under the following -license restricting its use. - -The Interface Definition Language Compiler Front End (CFE) is made -available for your use provided that you include this license and copyright -notice on all media and documentation and the software program in which -this product is incorporated in whole or part. You may copy and extend -functionality (but may not remove functionality) of the Interface -Definition Language CFE without charge, but you are not authorized to -license or distribute it to anyone else except as part of a product or -program developed by you or with the express written consent of Sun -Microsystems, Inc. ("Sun"). - -The names of Sun Microsystems, Inc. and any of its subsidiaries or -affiliates may not be used in advertising or publicity pertaining to -distribution of Interface Definition Language CFE as permitted herein. - -This license is effective until terminated by Sun for failure to comply -with this license. Upon termination, you shall destroy or return all code -and documentation for the Interface Definition Language CFE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF -ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS -FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF -DEALING, USAGE OR TRADE PRACTICE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT -ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES -TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. - -SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH -RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY -INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. - -IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR -ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL -DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -Use, duplication, or disclosure by the government is subject to -restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in -Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR -52.227-19. - -Sun, Sun Microsystems and the Sun logo are trademarks or registered -trademarks of Sun Microsystems, Inc. - -SunSoft, Inc. -2550 Garcia Avenue -Mountain View, California 94043 - -NOTE: - -SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are -trademarks or registered trademarks of Sun Microsystems, Inc. - - */ - -/* - * ast_operation.cc - Implementation of class AST_Operation - * - * AST_Operation nodes denote IDL operation declarations - * AST_Operations are a subclass of AST_Decl (they are not a type!) - * and of UTL_Scope (the arguments are managed in a scope). - * AST_Operations have a return type (a subclass of AST_Type), - * a bitfield for denoting various properties of the operation (the - * values are ORed together from constants defined in the enum - * AST_Operation::FLags), a name (a UTL_ScopedName), a context - * (implemented as a list of Strings, a UTL_StrList), and a raises - * clause (implemented as an array of AST_Exceptions). - */ - -#include "idl.h" -#include "idl_extern.h" - -/* - * Constructor(s) and destructor - */ -AST_Operation::AST_Operation() - : pd_return_type(NULL), - pd_flags(OP_noflags), - pd_context(NULL), - pd_exceptions(NULL) -{ -} - -AST_Operation::AST_Operation(AST_Type *rt, Flags fl, UTL_ScopedName *n, - UTL_StrList *p) - : AST_Decl(AST_Decl::NT_op, n, p), - UTL_Scope(AST_Decl::NT_op), - pd_return_type(rt), - pd_flags(fl), - pd_context(NULL), - pd_exceptions(NULL) -{ - AST_PredefinedType *pdt; - - /* - * Check that if the operation is oneway, the return type must be void - */ - if (rt != NULL && pd_flags == OP_oneway) { - if (rt->node_type() != AST_Decl::NT_pre_defined) - idl_global->err()->error1(UTL_Error::EIDL_NONVOID_ONEWAY, this); - else { - pdt = AST_PredefinedType::narrow_from_decl(rt); - if (pdt == NULL || pdt->pt() != AST_PredefinedType::PT_void) - idl_global->err()->error1(UTL_Error::EIDL_NONVOID_ONEWAY, this); - } - } -} - -/* - * Private operations - */ - -/* - * Public operations - */ - -/* - * Redefinition of inherited virtual operations - */ - -/* - * Add this context (a UTL_StrList) to this scope - */ -UTL_StrList * -AST_Operation::fe_add_context(UTL_StrList *t) -{ - pd_context = t; - - return t; -} - -/* - * Add these exceptions (identified by name) to this scope. - * This looks up each name to resolve it to the name of a known - * exception, and then adds the referenced exception to the list - * of exceptions that this operation can raise. - * - * NOTE: No attempt is made to ensure that exceptions are mentioned - * only once.. - */ -UTL_NameList * -AST_Operation::fe_add_exceptions(UTL_NameList *t) -{ - UTL_NamelistActiveIterator *nl_i; - UTL_ScopedName *nl_n; - UTL_Scope *fs = idl_global->scopes()->top(); - AST_Exception *fe; - AST_Decl *d; - - // Macro to avoid "warning: unused parameter" type warning. - ACE_UNUSED_ARG (fs); - - pd_exceptions = NULL; - nl_i = new UTL_NamelistActiveIterator(t); - while (!(nl_i->is_done())) { - nl_n = nl_i->item(); - d = lookup_by_name(nl_n, I_TRUE); - if (d == NULL || d->node_type() != AST_Decl::NT_except) { - idl_global->err()->lookup_error(nl_n); - delete nl_i; - return NULL; - } - fe = AST_Exception::narrow_from_decl(d); - if (fe == NULL) { - idl_global->err()->error1(UTL_Error::EIDL_ILLEGAL_RAISES, this); - return NULL; - } - if (pd_exceptions == NULL) - pd_exceptions = new UTL_ExceptList(fe, NULL); - else - pd_exceptions->nconc(new UTL_ExceptList(fe, NULL)); - nl_i->next(); - } - delete nl_i; - - return t; -} - -/* - * Add this AST_Argument node (an operation argument declaration) - * to this scope - */ -AST_Argument *AST_Operation::fe_add_argument(AST_Argument *t) -{ - AST_Decl *d; - - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_by_name_local(t->local_name(), I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Cannot add OUT or INOUT argument to oneway operation - */ - if ((t->direction() == AST_Argument::dir_OUT || - t->direction() == AST_Argument::dir_INOUT) && - pd_flags == OP_oneway) { - idl_global->err()->error2(UTL_Error::EIDL_ONEWAY_CONFLICT, t, this); - return NULL; - } - /* - * Add it to scope - */ - add_to_scope(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Dump this AST_Operation node (an operation) to the ostream o - */ -void -AST_Operation::dump(ostream &o) -{ - UTL_ScopeActiveIterator *i; - UTL_StrlistActiveIterator *si; - UTL_ExceptlistActiveIterator *ei; - AST_Decl *d; - AST_Exception *e; - String *s; - - if (pd_flags == OP_oneway) - o << "oneway "; - else if (pd_flags == OP_idempotent) - o << "idempotent "; - - i = new UTL_ScopeActiveIterator(this, IK_decls); - pd_return_type->name()->dump(o); - o << " "; - local_name()->dump(o); - o << "("; - while (!(i->is_done())) { - d = i->item(); - d->dump(o); - i->next(); - if (!(i->is_done())) - o << ", "; - } - delete i; - o << ")"; - - if (pd_exceptions != NULL) { - o << " raises("; - ei = new UTL_ExceptlistActiveIterator(pd_exceptions); - while (!(ei->is_done())) { - e = ei->item(); - ei->next(); - e->local_name()->dump(o); - if (!(ei->is_done())) - o << ", "; - } - delete ei; - o << ")"; - } - if (pd_context != NULL) { - o << " context("; - si = new UTL_StrlistActiveIterator(pd_context); - while (!(si->is_done())) { - s = si->item(); - si->next(); - o << s->get_string(); - if (!(si->is_done())) - o << ", "; - } - delete si; - o << ")"; - } -} - -/* - * Data accessors - */ - -AST_Type * -AST_Operation::return_type() -{ - return pd_return_type; -} - -AST_Operation::Flags -AST_Operation::flags() -{ - return pd_flags; -} - -UTL_StrList * -AST_Operation::context() -{ - return pd_context; -} - -UTL_ExceptList * -AST_Operation::exceptions() -{ - return pd_exceptions; -} - -// Narrowing -IMPL_NARROW_METHODS2(AST_Operation, AST_Decl, UTL_Scope) -IMPL_NARROW_FROM_DECL(AST_Operation) -IMPL_NARROW_FROM_SCOPE(AST_Operation) diff --git a/TAO/TAO_IDL/ast/ast_predefined_type.cpp b/TAO/TAO_IDL/ast/ast_predefined_type.cpp deleted file mode 100644 index 2d2a393c01d..00000000000 --- a/TAO/TAO_IDL/ast/ast_predefined_type.cpp +++ /dev/null @@ -1,130 +0,0 @@ -// $Id$ - -/* - -COPYRIGHT - -Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United -States of America. All Rights Reserved. - -This product is protected by copyright and distributed under the following -license restricting its use. - -The Interface Definition Language Compiler Front End (CFE) is made -available for your use provided that you include this license and copyright -notice on all media and documentation and the software program in which -this product is incorporated in whole or part. You may copy and extend -functionality (but may not remove functionality) of the Interface -Definition Language CFE without charge, but you are not authorized to -license or distribute it to anyone else except as part of a product or -program developed by you or with the express written consent of Sun -Microsystems, Inc. ("Sun"). - -The names of Sun Microsystems, Inc. and any of its subsidiaries or -affiliates may not be used in advertising or publicity pertaining to -distribution of Interface Definition Language CFE as permitted herein. - -This license is effective until terminated by Sun for failure to comply -with this license. Upon termination, you shall destroy or return all code -and documentation for the Interface Definition Language CFE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF -ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS -FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF -DEALING, USAGE OR TRADE PRACTICE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT -ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES -TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. - -SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH -RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY -INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. - -IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR -ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL -DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -Use, duplication, or disclosure by the government is subject to -restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in -Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR -52.227-19. - -Sun, Sun Microsystems and the Sun logo are trademarks or registered -trademarks of Sun Microsystems, Inc. - -SunSoft, Inc. -2550 Garcia Avenue -Mountain View, California 94043 - -NOTE: - -SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are -trademarks or registered trademarks of Sun Microsystems, Inc. - - */ - -/* - * ast_predefined_type.cc - Implementation of class AST_PredefinedType - * - * AST_PredefinedType nodes denote the various predefined types such - * as long, short, etc. that are available in IDL. Each AST_PredefinedType - * node has a field (the value of this field is from the enum - * AST_PredefinedType::PredefinedType) which denotes the specific predefined - * type that this node represents. There is only one node in the entire - * AST which represents each predefined type, such as long etc. - */ - -#include "idl.h" -#include "idl_extern.h" - -/* - * Constructor(s) - */ -AST_PredefinedType::AST_PredefinedType() - : pd_pt(PT_long) -{ -} - -AST_PredefinedType::AST_PredefinedType(PredefinedType t, UTL_ScopedName *n, - UTL_StrList *p) - : AST_Decl(AST_Decl::NT_pre_defined, n, p), - pd_pt(t) -{ -} - -/* - * Private operations - */ - -/* - * Public operations - */ - - -/* - * Redefinition of inherited virtual operations - */ - -/* - * Dump this AST_PredefinedType node to the ostream o - */ -void -AST_PredefinedType::dump(ostream &o) -{ - AST_Decl::dump(o); -} - -/* - * Data accessors - */ - -AST_PredefinedType::PredefinedType -AST_PredefinedType::pt() -{ - return pd_pt; -} - -// Narrowing -IMPL_NARROW_METHODS1(AST_PredefinedType, AST_ConcreteType) -IMPL_NARROW_FROM_DECL(AST_PredefinedType) diff --git a/TAO/TAO_IDL/ast/ast_recursive.cpp b/TAO/TAO_IDL/ast/ast_recursive.cpp deleted file mode 100644 index 09591dffe12..00000000000 --- a/TAO/TAO_IDL/ast/ast_recursive.cpp +++ /dev/null @@ -1,167 +0,0 @@ -// $Id$ - -/* - -COPYRIGHT - -Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United -States of America. All Rights Reserved. - -This product is protected by copyright and distributed under the following -license restricting its use. - -The Interface Definition Language Compiler Front End (CFE) is made -available for your use provided that you include this license and copyright -notice on all media and documentation and the software program in which -this product is incorporated in whole or part. You may copy and extend -functionality (but may not remove functionality) of the Interface -Definition Language CFE without charge, but you are not authorized to -license or distribute it to anyone else except as part of a product or -program developed by you or with the express written consent of Sun -Microsystems, Inc. ("Sun"). - -The names of Sun Microsystems, Inc. and any of its subsidiaries or -affiliates may not be used in advertising or publicity pertaining to -distribution of Interface Definition Language CFE as permitted herein. - -This license is effective until terminated by Sun for failure to comply -with this license. Upon termination, you shall destroy or return all code -and documentation for the Interface Definition Language CFE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF -ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS -FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF -DEALING, USAGE OR TRADE PRACTICE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT -ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES -TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. - -SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH -RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY -INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. - -IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR -ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL -DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -Use, duplication, or disclosure by the government is subject to -restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in -Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR -52.227-19. - -Sun, Sun Microsystems and the Sun logo are trademarks or registered -trademarks of Sun Microsystems, Inc. - -SunSoft, Inc. -2550 Garcia Avenue -Mountain View, California 94043 - -NOTE: - -SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are -trademarks or registered trademarks of Sun Microsystems, Inc. - - */ - -/* - * ast_recursive.cc - Check whether a type is used recursively in a situation - * where this use would be illegal. - * - * EXPLANATION: The CORBAS says that the only legal use of recursive types is - * in a manifest sequence declared inside a struct or union whose base type is - * the struct or union - * - * ALGORITH FOR CHECK: - * Sequences push a NULL on the scope stack to mark where in the scope nesting - * they appear. - * - * - If the type is not a struct or union, return FALSE (legal use of type) - * - Otherwise check up the scope stack, looking for this base type. If we - * find a NULL return FALSE (legal use of type, since it is inside some - * sequence). If we find the type on the stack, return TRUE (illegal use - * since it was not bracketed by a sequence). If we don't find the base - * type nor a sequence, return FALSE (legal use, since we're not nested). - */ - -#include "idl.h" -#include "idl_extern.h" - -/* - * FE_illegal_recursive_type() - Implement the algorithm described above - */ -idl_bool -AST_illegal_recursive_type(AST_Decl *t) -{ - UTL_ScopeStackActiveIterator *i = 0; - UTL_Scope *s = 0; - AST_Structure *st1 = 0, *st2 = 0; - AST_Union *un1 = 0, *un2 = 0; - idl_bool check_for_struct = I_FALSE, - check_for_union = I_FALSE; - - if (t == NULL) return I_FALSE; - - /* - * We only care about structs and unions - */ - if (t->node_type() != AST_Decl::NT_struct && - t->node_type() != AST_Decl::NT_union) - return I_FALSE; // NOT ILLEGAL - /* - * Narrow the type appropriately so comparison will work - */ - if (t->node_type() == AST_Decl::NT_struct) { - check_for_struct = I_TRUE; - st1 = AST_Structure::narrow_from_decl(t); - if (st1 == NULL) - return I_FALSE; // NOT ILLEGAL - } else if (t->node_type() == AST_Decl::NT_union) { - check_for_union = I_TRUE; - un1 = AST_Union::narrow_from_decl(t); - if (un1 == NULL) - return I_FALSE; // NOT ILLEGAL - } - /* - * OK, iterate up the stack - */ - i = new UTL_ScopeStackActiveIterator(idl_global->scopes()); - while (!(i->is_done())) { - s = i->item(); - /* - * If we hit a NULL we're done since it means that we're nested inside - * a sequence, where recursive types may be used - */ - if (s == NULL) { - delete i; - return I_FALSE; // NOT ILLEGAL - } - /* - * OK, must check this scope - */ - if (s->scope_node_type() == AST_Decl::NT_struct && check_for_struct) { - st2 = AST_Structure::narrow_from_scope(s); - if (st2 != NULL && st2 == st1) { - delete i; - return I_TRUE; // ILLEGAL RECURSIVE TYPE USE - } - } else if (s->scope_node_type() == AST_Decl::NT_union && - check_for_union) { - un2 = AST_Union::narrow_from_scope(s); - if (un2 != NULL && un2 == un1) { - delete i; - return I_TRUE; // ILLEGAL RECURSIVE TYPE USE - } - } - /* - * This one is fine, get next item - */ - i->next(); - } - /* - * No more scopes to check. This type was used legally - */ - delete i; - return I_FALSE; // NOT ILLEGAL -} - diff --git a/TAO/TAO_IDL/ast/ast_redef.cpp b/TAO/TAO_IDL/ast/ast_redef.cpp deleted file mode 100644 index 482bc2d869c..00000000000 --- a/TAO/TAO_IDL/ast/ast_redef.cpp +++ /dev/null @@ -1,108 +0,0 @@ -// $Id$ - -/* - -COPYRIGHT - -Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United -States of America. All Rights Reserved. - -This product is protected by copyright and distributed under the following -license restricting its use. - -The Interface Definition Language Compiler Front End (CFE) is made -available for your use provided that you include this license and copyright -notice on all media and documentation and the software program in which -this product is incorporated in whole or part. You may copy and extend -functionality (but may not remove functionality) of the Interface -Definition Language CFE without charge, but you are not authorized to -license or distribute it to anyone else except as part of a product or -program developed by you or with the express written consent of Sun -Microsystems, Inc. ("Sun"). - -The names of Sun Microsystems, Inc. and any of its subsidiaries or -affiliates may not be used in advertising or publicity pertaining to -distribution of Interface Definition Language CFE as permitted herein. - -This license is effective until terminated by Sun for failure to comply -with this license. Upon termination, you shall destroy or return all code -and documentation for the Interface Definition Language CFE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF -ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS -FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF -DEALING, USAGE OR TRADE PRACTICE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT -ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES -TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. - -SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH -RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY -INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. - -IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR -ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL -DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -Use, duplication, or disclosure by the government is subject to -restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in -Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR -52.227-19. - -Sun, Sun Microsystems and the Sun logo are trademarks or registered -trademarks of Sun Microsystems, Inc. - -SunSoft, Inc. -2550 Garcia Avenue -Mountain View, California 94043 - -NOTE: - -SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are -trademarks or registered trademarks of Sun Microsystems, Inc. - - */ - -/* - * ast_redef.cc - Implement utility function to decide when redefinition - * is allowed - */ - -#include "idl.h" -#include "idl_extern.h" - -/* - * Return TRUE if the node d represents an IDL construct whose name - * can be redefined. - */ -idl_bool -can_be_redefined(AST_Decl *d) -{ - switch (d->node_type()) { - case AST_Decl::NT_module: - case AST_Decl::NT_interface: - case AST_Decl::NT_interface_fwd: - case AST_Decl::NT_const: - case AST_Decl::NT_except: - case AST_Decl::NT_argument: - case AST_Decl::NT_enum_val: - case AST_Decl::NT_string: - case AST_Decl::NT_array: - case AST_Decl::NT_sequence: - case AST_Decl::NT_union: - case AST_Decl::NT_struct: - case AST_Decl::NT_enum: - case AST_Decl::NT_typedef: - return I_TRUE; - - case AST_Decl::NT_union_branch: - case AST_Decl::NT_field: - case AST_Decl::NT_attr: - case AST_Decl::NT_op: - case AST_Decl::NT_pre_defined: - default: - return I_FALSE; - } -} - diff --git a/TAO/TAO_IDL/ast/ast_root.cpp b/TAO/TAO_IDL/ast/ast_root.cpp deleted file mode 100644 index a4ffb8e2997..00000000000 --- a/TAO/TAO_IDL/ast/ast_root.cpp +++ /dev/null @@ -1,166 +0,0 @@ -// $Id$ - -/* - -COPYRIGHT - -Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United -States of America. All Rights Reserved. - -This product is protected by copyright and distributed under the following -license restricting its use. - -The Interface Definition Language Compiler Front End (CFE) is made -available for your use provided that you include this license and copyright -notice on all media and documentation and the software program in which -this product is incorporated in whole or part. You may copy and extend -functionality (but may not remove functionality) of the Interface -Definition Language CFE without charge, but you are not authorized to -license or distribute it to anyone else except as part of a product or -program developed by you or with the express written consent of Sun -Microsystems, Inc. ("Sun"). - -The names of Sun Microsystems, Inc. and any of its subsidiaries or -affiliates may not be used in advertising or publicity pertaining to -distribution of Interface Definition Language CFE as permitted herein. - -This license is effective until terminated by Sun for failure to comply -with this license. Upon termination, you shall destroy or return all code -and documentation for the Interface Definition Language CFE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF -ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS -FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF -DEALING, USAGE OR TRADE PRACTICE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT -ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES -TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. - -SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH -RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY -INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. - -IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR -ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL -DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -Use, duplication, or disclosure by the government is subject to -restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in -Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR -52.227-19. - -Sun, Sun Microsystems and the Sun logo are trademarks or registered -trademarks of Sun Microsystems, Inc. - -SunSoft, Inc. -2550 Garcia Avenue -Mountain View, California 94043 - -NOTE: - -SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are -trademarks or registered trademarks of Sun Microsystems, Inc. - - */ - -/* - * ast_root.cc - Implementation of class AST_Root - * - * AST_Root nodes represent the roots of ASTs. - * AST_Root is a subclass of AST_Module, and is defined to allow BEs - * to subclass it to associate their own information with an entire - * AST. - */ - -#include "idl.h" -#include "idl_extern.h" - -/* - * Constructor(s) and destructor - */ -AST_Root::AST_Root() -{ -} - -AST_Root::AST_Root(UTL_ScopedName *n, UTL_StrList *p) - : AST_Decl(AST_Decl::NT_module, n, p), - UTL_Scope(AST_Decl::NT_module) -{ -} - -/* - * Private operations - */ - -/* - * Public operations - */ - -/* - * Add protocol - */ - -/* - * Add this AST_Sequence to the locally defined types in this scope - */ -AST_Sequence * -AST_Root::fe_add_sequence(AST_Sequence *t) -{ - if (t == NULL) - return NULL; - t->set_name(new UTL_ScopedName(new Identifier("local type", 1, 0, I_FALSE), - NULL)); - add_to_local_types(t); - return t; -} - -/* - * Add this AST_String to the locally defined types in this scope - */ -AST_String * -AST_Root::fe_add_string(AST_String *t) -{ - if (t == NULL) - return NULL; - t->set_name(new UTL_ScopedName(new Identifier("local type", 1, 0, I_FALSE), - NULL)); - add_to_local_types(t); - - return t; -} - -/* - * Add this AST_Array to the locally defined types in this scope - */ -AST_Array * -AST_Root::fe_add_array(AST_Array *t) -{ - if (t == NULL) - return NULL; - t->set_name(new UTL_ScopedName(new Identifier("local type",1,0,I_FALSE), - NULL)); - add_to_local_types(t); - - return t; -} - -/* - * Redefinition of inherited virtual operations - */ - -/* - * Dump this AST_Root node to the ostream o - */ -void -AST_Root::dump(ostream &o) -{ - UTL_Scope::dump(o); -} - -/* - * Narrowing methods - */ -IMPL_NARROW_METHODS1(AST_Root, AST_Module) -IMPL_NARROW_FROM_DECL(AST_Root) -IMPL_NARROW_FROM_SCOPE(AST_Root) diff --git a/TAO/TAO_IDL/ast/ast_sequence.cpp b/TAO/TAO_IDL/ast/ast_sequence.cpp deleted file mode 100644 index 276cc31a137..00000000000 --- a/TAO/TAO_IDL/ast/ast_sequence.cpp +++ /dev/null @@ -1,143 +0,0 @@ -// $Id$ - -/* - -COPYRIGHT - -Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United -States of America. All Rights Reserved. - -This product is protected by copyright and distributed under the following -license restricting its use. - -The Interface Definition Language Compiler Front End (CFE) is made -available for your use provided that you include this license and copyright -notice on all media and documentation and the software program in which -this product is incorporated in whole or part. You may copy and extend -functionality (but may not remove functionality) of the Interface -Definition Language CFE without charge, but you are not authorized to -license or distribute it to anyone else except as part of a product or -program developed by you or with the express written consent of Sun -Microsystems, Inc. ("Sun"). - -The names of Sun Microsystems, Inc. and any of its subsidiaries or -affiliates may not be used in advertising or publicity pertaining to -distribution of Interface Definition Language CFE as permitted herein. - -This license is effective until terminated by Sun for failure to comply -with this license. Upon termination, you shall destroy or return all code -and documentation for the Interface Definition Language CFE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF -ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS -FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF -DEALING, USAGE OR TRADE PRACTICE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT -ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES -TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. - -SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH -RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY -INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. - -IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR -ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL -DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -Use, duplication, or disclosure by the government is subject to -restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in -Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR -52.227-19. - -Sun, Sun Microsystems and the Sun logo are trademarks or registered -trademarks of Sun Microsystems, Inc. - -SunSoft, Inc. -2550 Garcia Avenue -Mountain View, California 94043 - -NOTE: - -SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are -trademarks or registered trademarks of Sun Microsystems, Inc. - - */ - -/* - * ast_sequence.cc - Implementation of class AST_Sequence - * - * AST_Sequence nodes represent IDL sequence declarations. - * AST_Sequence is a subclass of AST_ConcreteType. - * AST_Sequence nodes have a maximum size (an AST_Expression which - * must evaluate to a positive integer) and a base type (a subclass - * of AST_Type). - */ - -#include "idl.h" -#include "idl_extern.h" - -/* - * Constructor(s) and destructor - */ -AST_Sequence::AST_Sequence() - : pd_max_size(0), - pd_base_type(NULL) -{ -} - -AST_Sequence::AST_Sequence(AST_Expression *ms, AST_Type *bt) - : AST_Decl(AST_Decl::NT_sequence, - new UTL_ScopedName( - new Identifier("sequence",1,0,I_FALSE), - NULL), - NULL), - pd_max_size(ms), - pd_base_type(bt) -{ -} - -/* - * Private operations - */ - -/* - * Public operations - */ - -/* - * Redefinition of inherited virtual operations - */ - -/* - * Dump this AST_Sequence node to the ostream o - */ -void -AST_Sequence::dump(ostream &o) -{ - o << "sequence <"; - pd_base_type->dump(o); - o << ", "; - pd_max_size->dump(o); - o << ">"; -} - -/* - * Data accessors - */ - -AST_Expression * -AST_Sequence::max_size() -{ - return pd_max_size; -} - -AST_Type * -AST_Sequence::base_type() -{ - return pd_base_type; -} - -// Narrowing -IMPL_NARROW_METHODS1(AST_Sequence, AST_ConcreteType) -IMPL_NARROW_FROM_DECL(AST_Sequence) diff --git a/TAO/TAO_IDL/ast/ast_string.cpp b/TAO/TAO_IDL/ast/ast_string.cpp deleted file mode 100644 index e6a502d7604..00000000000 --- a/TAO/TAO_IDL/ast/ast_string.cpp +++ /dev/null @@ -1,153 +0,0 @@ -// $Id$ - -/* - -COPYRIGHT - -Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United -States of America. All Rights Reserved. - -This product is protected by copyright and distributed under the following -license restricting its use. - -The Interface Definition Language Compiler Front End (CFE) is made -available for your use provided that you include this license and copyright -notice on all media and documentation and the software program in which -this product is incorporated in whole or part. You may copy and extend -functionality (but may not remove functionality) of the Interface -Definition Language CFE without charge, but you are not authorized to -license or distribute it to anyone else except as part of a product or -program developed by you or with the express written consent of Sun -Microsystems, Inc. ("Sun"). - -The names of Sun Microsystems, Inc. and any of its subsidiaries or -affiliates may not be used in advertising or publicity pertaining to -distribution of Interface Definition Language CFE as permitted herein. - -This license is effective until terminated by Sun for failure to comply -with this license. Upon termination, you shall destroy or return all code -and documentation for the Interface Definition Language CFE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF -ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS -FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF -DEALING, USAGE OR TRADE PRACTICE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT -ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES -TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. - -SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH -RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY -INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. - -IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR -ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL -DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -Use, duplication, or disclosure by the government is subject to -restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in -Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR -52.227-19. - -Sun, Sun Microsystems and the Sun logo are trademarks or registered -trademarks of Sun Microsystems, Inc. - -SunSoft, Inc. -2550 Garcia Avenue -Mountain View, California 94043 - -NOTE: - -SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are -trademarks or registered trademarks of Sun Microsystems, Inc. - - */ - -/* - * ast_string.cc - Implementation of class AST_String - * - * AST_String nodes represent IDL string declarations. - * AST_String is a subclass of AST_ConcreteType. - * AST_String nodes have a maximum size (an AST_Expression which must - * evaluate to a positive integer). - */ - -#include "idl.h" -#include "idl_extern.h" - -/* - * Constructor(s) and destructor - */ -AST_String::AST_String() - : pd_max_size(0), pd_width(1) -{ -} - -AST_String::AST_String(AST_Expression *ms) - : AST_Decl(AST_Decl::NT_string, - new UTL_ScopedName(new Identifier("string",1,0,I_FALSE), - NULL), - NULL), - pd_max_size(ms), - pd_width(sizeof(char)) -{ -} - -AST_String::AST_String(AST_Expression *ms, long wide) - : AST_Decl(AST_Decl::NT_string, - new UTL_ScopedName(wide == sizeof(char) - ? new Identifier("string",1,0,I_FALSE) - : new Identifier("wstring_t", - 1, - 0, - I_FALSE), - NULL), - NULL), - pd_max_size(ms), - pd_width(wide) -{ -} - -/* - * Private operations - */ - -/* - * Public operations - */ - -/* - * Redefinition of inherited virtual operations - */ - -/* - * Dump this AST_String node to the ostream o - */ -void -AST_String::dump(ostream &o) -{ - o << "string <"; - pd_max_size->dump(o); - o << ">"; -} - -/* - * Data accessors - */ - -AST_Expression * -AST_String::max_size() -{ - return pd_max_size; -} - -long -AST_String::width() -{ - return pd_width; -} - -// Narrowing -IMPL_NARROW_METHODS1(AST_String, AST_ConcreteType) -IMPL_NARROW_FROM_DECL(AST_String) diff --git a/TAO/TAO_IDL/ast/ast_structure.cpp b/TAO/TAO_IDL/ast/ast_structure.cpp deleted file mode 100644 index e99616b36f9..00000000000 --- a/TAO/TAO_IDL/ast/ast_structure.cpp +++ /dev/null @@ -1,311 +0,0 @@ -// $Id$ - -/* - -COPYRIGHT - -Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United -States of America. All Rights Reserved. - -This product is protected by copyright and distributed under the following -license restricting its use. - -The Interface Definition Language Compiler Front End (CFE) is made -available for your use provided that you include this license and copyright -notice on all media and documentation and the software program in which -this product is incorporated in whole or part. You may copy and extend -functionality (but may not remove functionality) of the Interface -Definition Language CFE without charge, but you are not authorized to -license or distribute it to anyone else except as part of a product or -program developed by you or with the express written consent of Sun -Microsystems, Inc. ("Sun"). - -The names of Sun Microsystems, Inc. and any of its subsidiaries or -affiliates may not be used in advertising or publicity pertaining to -distribution of Interface Definition Language CFE as permitted herein. - -This license is effective until terminated by Sun for failure to comply -with this license. Upon termination, you shall destroy or return all code -and documentation for the Interface Definition Language CFE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF -ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS -FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF -DEALING, USAGE OR TRADE PRACTICE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT -ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES -TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. - -SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH -RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY -INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. - -IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR -ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL -DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -Use, duplication, or disclosure by the government is subject to -restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in -Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR -52.227-19. - -Sun, Sun Microsystems and the Sun logo are trademarks or registered -trademarks of Sun Microsystems, Inc. - -SunSoft, Inc. -2550 Garcia Avenue -Mountain View, California 94043 - -NOTE: - -SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are -trademarks or registered trademarks of Sun Microsystems, Inc. - - */ - -/* - * ast_structure.cc - Implementation of class AST_Structure - * - * AST_Structure nodes denote IDL struct declarations. - * AST_Structure is a subclass of AST_ConcreteType and of UTL_Scope (the - * structure's fields are managed in a scope). - */ - -#include "idl.h" -#include "idl_extern.h" - -/* - * Constructor(s) and destructor - */ -AST_Structure::AST_Structure() -{ -} - -AST_Structure::AST_Structure(UTL_ScopedName *n, UTL_StrList *p) - : AST_Decl(AST_Decl::NT_struct, n, p), - UTL_Scope(AST_Decl::NT_struct) -{ -} - -AST_Structure::AST_Structure(AST_Decl::NodeType nt, - UTL_ScopedName *n, - UTL_StrList *p) - : AST_Decl(nt, n, p), - UTL_Scope(nt) -{ -} - -/* - * Private operations - */ - -/* - * Public operations - */ - -/* - * Redefinition of inherited virtual operations - */ - -/* - * Add this AST_Field node (a field declaration) to this scope - */ -AST_Field *AST_Structure::fe_add_field(AST_Field *t) -{ - AST_Decl *d; - - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to scope - */ - add_to_scope(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add an AST_Structure node (a manifest struct type) to this scope - */ -AST_Structure *AST_Structure::fe_add_structure(AST_Structure *t) -{ - AST_Decl *d; - - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to local types - */ - add_to_local_types(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add an AST_Union node (a manifest union type) to this scope - */ -AST_Union *AST_Structure::fe_add_union(AST_Union *t) -{ - AST_Decl *d; - - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to local types - */ - add_to_local_types(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add this AST_Enum node (a manifest enum declaration) to this scope - */ -AST_Enum *AST_Structure::fe_add_enum(AST_Enum *t) -{ - AST_Decl *d; - - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to local types - */ - add_to_local_types(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add this AST_EnumVal node (an enumerator declaration) to this scope. - * This is done to conform to the C++ scoping rules which declare - * enumerators in the enclosing scope (in addition to declaring them - * in the enum itself) - */ -AST_EnumVal *AST_Structure::fe_add_enum_val(AST_EnumVal *t) -{ - AST_Decl *d; - - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to scope - */ - add_to_scope(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Dump this AST_Structure node to the ostream o - */ -void -AST_Structure::dump(ostream &o) -{ - o << "struct "; - AST_Decl::dump(o); - o << " {\n"; - UTL_Scope::dump(o); - idl_global->indent()->skip_to(o); - o << "}"; -} - -// Narrowing -IMPL_NARROW_METHODS2(AST_Structure, AST_ConcreteType, UTL_Scope) -IMPL_NARROW_FROM_DECL(AST_Structure) -IMPL_NARROW_FROM_SCOPE(AST_Structure) diff --git a/TAO/TAO_IDL/ast/ast_type.cpp b/TAO/TAO_IDL/ast/ast_type.cpp deleted file mode 100644 index da7ccc9aeef..00000000000 --- a/TAO/TAO_IDL/ast/ast_type.cpp +++ /dev/null @@ -1,105 +0,0 @@ -// $Id$ - -/* - -COPYRIGHT - -Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United -States of America. All Rights Reserved. - -This product is protected by copyright and distributed under the following -license restricting its use. - -The Interface Definition Language Compiler Front End (CFE) is made -available for your use provided that you include this license and copyright -notice on all media and documentation and the software program in which -this product is incorporated in whole or part. You may copy and extend -functionality (but may not remove functionality) of the Interface -Definition Language CFE without charge, but you are not authorized to -license or distribute it to anyone else except as part of a product or -program developed by you or with the express written consent of Sun -Microsystems, Inc. ("Sun"). - -The names of Sun Microsystems, Inc. and any of its subsidiaries or -affiliates may not be used in advertising or publicity pertaining to -distribution of Interface Definition Language CFE as permitted herein. - -This license is effective until terminated by Sun for failure to comply -with this license. Upon termination, you shall destroy or return all code -and documentation for the Interface Definition Language CFE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF -ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS -FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF -DEALING, USAGE OR TRADE PRACTICE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT -ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES -TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. - -SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH -RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY -INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. - -IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR -ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL -DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -Use, duplication, or disclosure by the government is subject to -restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in -Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR -52.227-19. - -Sun, Sun Microsystems and the Sun logo are trademarks or registered -trademarks of Sun Microsystems, Inc. - -SunSoft, Inc. -2550 Garcia Avenue -Mountain View, California 94043 - -NOTE: - -SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are -trademarks or registered trademarks of Sun Microsystems, Inc. - - */ - -/* - * ast_type.cc - Implementation of class AST_Type - * - * AST_Type is the base class for all AST classes which represent - * IDL type constructs. - */ - -#include "idl.h" -#include "idl_extern.h" - -/* - * Constructor(s) and destructor - */ -AST_Type::AST_Type() -{ -} - -AST_Type::AST_Type(AST_Decl::NodeType nt, UTL_ScopedName *n, UTL_StrList *p) - : AST_Decl(nt, n, p) -{ -} - -/* - * Private operations - */ - -/* - * Public operations - */ - - -/* - * Redefinition of inherited virtual operations - */ - - -// Narrowing -IMPL_NARROW_METHODS1(AST_Type, AST_Decl) -IMPL_NARROW_FROM_DECL(AST_Type) diff --git a/TAO/TAO_IDL/ast/ast_typedef.cpp b/TAO/TAO_IDL/ast/ast_typedef.cpp deleted file mode 100644 index 580880b23b0..00000000000 --- a/TAO/TAO_IDL/ast/ast_typedef.cpp +++ /dev/null @@ -1,131 +0,0 @@ -// $Id$ - -/* - -COPYRIGHT - -Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United -States of America. All Rights Reserved. - -This product is protected by copyright and distributed under the following -license restricting its use. - -The Interface Definition Language Compiler Front End (CFE) is made -available for your use provided that you include this license and copyright -notice on all media and documentation and the software program in which -this product is incorporated in whole or part. You may copy and extend -functionality (but may not remove functionality) of the Interface -Definition Language CFE without charge, but you are not authorized to -license or distribute it to anyone else except as part of a product or -program developed by you or with the express written consent of Sun -Microsystems, Inc. ("Sun"). - -The names of Sun Microsystems, Inc. and any of its subsidiaries or -affiliates may not be used in advertising or publicity pertaining to -distribution of Interface Definition Language CFE as permitted herein. - -This license is effective until terminated by Sun for failure to comply -with this license. Upon termination, you shall destroy or return all code -and documentation for the Interface Definition Language CFE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF -ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS -FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF -DEALING, USAGE OR TRADE PRACTICE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT -ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES -TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. - -SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH -RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY -INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. - -IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR -ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL -DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -Use, duplication, or disclosure by the government is subject to -restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in -Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR -52.227-19. - -Sun, Sun Microsystems and the Sun logo are trademarks or registered -trademarks of Sun Microsystems, Inc. - -SunSoft, Inc. -2550 Garcia Avenue -Mountain View, California 94043 - -NOTE: - -SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are -trademarks or registered trademarks of Sun Microsystems, Inc. - - */ - -/* - * ast_typedef.cc - Implementation of class AST_Typedef - * - * AST_Typedef nodes represent an IDL typedef statement. - * AST_Typedef is a subclass of AST_Decl (it is not a type, - * but instead is a type renaming). - * AST_Typedef nodes have a base type (a subclass of AST_Type) - * and a name (an UTL_ScopedName). - */ - -#include "idl.h" -#include "idl_extern.h" - -/* - * Constructor(s) and destructor - */ -AST_Typedef::AST_Typedef() - : pd_base_type(NULL) -{ -} - -AST_Typedef::AST_Typedef(AST_Type *bt, UTL_ScopedName *n, UTL_StrList *p) - : AST_Decl(AST_Decl::NT_typedef, n, p), - pd_base_type(bt) -{ -} - -/* - * Private operations - */ - -/* - * Public operations - */ - - -/* - * Redefinition of inherited virtual operations - */ - -/* - * Dump this AST_Typedef node to the ostream o - */ -void -AST_Typedef::dump(ostream &o) -{ - o << "typedef "; - pd_base_type->dump(o); - o << " "; - local_name()->dump(o); -} - -/* - * Data accessors - */ - -AST_Type * -AST_Typedef::base_type() -{ - return pd_base_type; -} - -// Narrowing -IMPL_NARROW_METHODS1(AST_Typedef, AST_Type) -IMPL_NARROW_FROM_DECL(AST_Typedef) diff --git a/TAO/TAO_IDL/ast/ast_union.cpp b/TAO/TAO_IDL/ast/ast_union.cpp deleted file mode 100644 index 125cd69c4d2..00000000000 --- a/TAO/TAO_IDL/ast/ast_union.cpp +++ /dev/null @@ -1,555 +0,0 @@ -// $Id$ - -/* - -COPYRIGHT - -Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United -States of America. All Rights Reserved. - -This product is protected by copyright and distributed under the following -license restricting its use. - -The Interface Definition Language Compiler Front End (CFE) is made -available for your use provided that you include this license and copyright -notice on all media and documentation and the software program in which -this product is incorporated in whole or part. You may copy and extend -functionality (but may not remove functionality) of the Interface -Definition Language CFE without charge, but you are not authorized to -license or distribute it to anyone else except as part of a product or -program developed by you or with the express written consent of Sun -Microsystems, Inc. ("Sun"). - -The names of Sun Microsystems, Inc. and any of its subsidiaries or -affiliates may not be used in advertising or publicity pertaining to -distribution of Interface Definition Language CFE as permitted herein. - -This license is effective until terminated by Sun for failure to comply -with this license. Upon termination, you shall destroy or return all code -and documentation for the Interface Definition Language CFE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF -ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS -FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF -DEALING, USAGE OR TRADE PRACTICE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT -ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES -TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. - -SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH -RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY -INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. - -IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR -ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL -DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -Use, duplication, or disclosure by the government is subject to -restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in -Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR -52.227-19. - -Sun, Sun Microsystems and the Sun logo are trademarks or registered -trademarks of Sun Microsystems, Inc. - -SunSoft, Inc. -2550 Garcia Avenue -Mountain View, California 94043 - -NOTE: - -SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are -trademarks or registered trademarks of Sun Microsystems, Inc. - - */ - -/* - * ast_union.cc - Implementation of class AST_Union - * - * AST_Union nodes represent IDL union declarations. - * AST_Union is a subclass of AST_ConcreteType and of UTL_Scope (the - * union branches are managed in a scope). - * AST_Union nodes have a discriminator type (a subclass of AST_ConcreteType), - * a name (an UTL_ScopedName) and a field denoting the discriminator type if - * it is a primitive type (the value of this field is from the union - * AST_Expression::ExprType and serves as a cache). This field is used - * to compute coercions for labels based on the expected discriminator type. - */ - -#include "idl.h" -#include "idl_extern.h" - -/* - * Constructor(s) and destructor - */ -AST_Union::AST_Union() -{ -} - -AST_Union::AST_Union(AST_ConcreteType *dt, UTL_ScopedName *n, UTL_StrList *p) - : AST_Decl(AST_Decl::NT_union, n, p), - UTL_Scope(AST_Decl::NT_union) -{ - AST_PredefinedType *pdt; - - if (dt == NULL) { - pd_disc_type = NULL; - pd_udisc_type = AST_Expression::EV_none; - return; - } - /* - * If the discriminator type is a predefined type - * then install the equivalent coercion target type in - * the pd_udisc_type field. - */ - if (dt->node_type() == AST_Decl::NT_pre_defined) { - pdt = AST_PredefinedType::narrow_from_decl(dt); - if (pdt == NULL) { - pd_disc_type = NULL; - pd_udisc_type = AST_Expression::EV_none; - return; - } - pd_disc_type = dt; - switch (pdt->pt()) { - case AST_PredefinedType::PT_long: - pd_udisc_type = AST_Expression::EV_long; - break; - case AST_PredefinedType::PT_ulong: - pd_udisc_type = AST_Expression::EV_ulong; - break; - case AST_PredefinedType::PT_short: - pd_udisc_type = AST_Expression::EV_short; - break; - case AST_PredefinedType::PT_ushort: - pd_udisc_type = AST_Expression::EV_ushort; - break; - case AST_PredefinedType::PT_char: - pd_udisc_type = AST_Expression::EV_char; - break; - case AST_PredefinedType::PT_octet: - pd_udisc_type = AST_Expression::EV_octet; - break; - case AST_PredefinedType::PT_boolean: - pd_udisc_type = AST_Expression::EV_bool; - break; - default: - pd_udisc_type = AST_Expression::EV_none; - pd_disc_type = NULL; - break; - } - } else if (dt->node_type() == AST_Decl::NT_enum) { - pd_udisc_type = AST_Expression::EV_any; - pd_disc_type = dt; - } else { - pd_udisc_type = AST_Expression::EV_none; - pd_disc_type = NULL; - } - - if (pd_disc_type == NULL) - idl_global->err()->error2(UTL_Error::EIDL_DISC_TYPE, this, dt); -} - -/* - * Private operations - */ - -/* - * Look up the default branch in union - */ -AST_UnionBranch * -AST_Union::lookup_default() -{ - UTL_ScopeActiveIterator *i = new UTL_ScopeActiveIterator(this, IK_both); - AST_UnionBranch *b; - AST_Decl *d; - - while (!(i->is_done())) { - d = i->item(); - if (d->node_type() == AST_Decl::NT_union_branch) { - b = AST_UnionBranch::narrow_from_decl(d); - if (b == NULL) { - i->next(); - continue; - } - if (b->label() != NULL && - b->label()->label_kind() == AST_UnionLabel::UL_default) { - idl_global->err()->error2(UTL_Error::EIDL_MULTIPLE_BRANCH, this, b); - delete i; - return b; - } - } - i->next(); - } - delete i; - return NULL; -} - -/* - * Look up a branch by label - */ -AST_UnionBranch * -AST_Union::lookup_label(AST_UnionBranch *b) -{ - AST_UnionLabel *l = b->label(); - UTL_ScopeActiveIterator *i; - AST_Decl *d; - AST_UnionBranch *fb; - - if (l->label_val() == NULL) - return b; - l->label_val()->set_ev(l->label_val()->coerce(pd_udisc_type)); - if (l->label_val()->ev() == NULL) { - idl_global->err()->eval_error(l->label_val()); - return b; - } - - i = new UTL_ScopeActiveIterator(this, IK_decls); - - while (!(i->is_done())) { - d = i->item(); - if (d->node_type() == AST_Decl::NT_union_branch) { - fb = AST_UnionBranch::narrow_from_decl(d); - if (fb == NULL) { - i->next(); - continue; - } - if (fb->label() != NULL && - fb->label()->label_kind() == AST_UnionLabel::UL_label && - fb->label()->label_val()->compare(l->label_val())) { - idl_global->err()->error2(UTL_Error::EIDL_MULTIPLE_BRANCH, this, b); - delete i; - return b; - } - } - i->next(); - } - delete i; - return NULL; -} - -/* - * Look up a branch in an enum which is the discriminator type for this - * union, based on the label value which must be an enumerator in that - * enum. - */ -AST_UnionBranch * -AST_Union::lookup_enum(AST_UnionBranch *b) -{ - AST_UnionLabel *l = b->label(); - AST_Expression *v; - AST_Enum *e = AST_Enum::narrow_from_decl(pd_disc_type); - UTL_ScopeActiveIterator *i; - AST_Decl *d; - AST_UnionBranch *fb; - - if (e == NULL) return NULL; - if (l->label_val() == NULL) - return b; - v = l->label_val(); - /* - * Expecting a symbol label - */ - if (v->ec() != AST_Expression::EC_symbol) { - idl_global->err()->enum_val_expected(this, l); - return b; - } - /* - * See if the symbol defines a constant in the discriminator enum - */ - d = e->lookup_by_name(v->n(), I_TRUE); - if (d == NULL || d->defined_in() != e) { - idl_global->err()->enum_val_lookup_failure(this, e, v->n()); - return b; - } - /* - * OK, now see if this symbol is already used as the label of - * some other branch - */ - i = new UTL_ScopeActiveIterator(this, IK_decls); - while (!(i->is_done())) { - d = i->item(); - if (d->node_type() == AST_Decl::NT_union_branch) { - fb = AST_UnionBranch::narrow_from_decl(d); - if (fb == NULL) { - i->next(); - continue; - } - if (fb->label() != NULL && - fb->label()->label_kind() == AST_UnionLabel::UL_label && - fb->label()->label_val()->compare (l->label_val())) { - idl_global->err()->error2(UTL_Error::EIDL_MULTIPLE_BRANCH, this, b); - delete i; - return b; - } - } - i->next(); - } - delete i; - return NULL; -} - -/* - * Look up a branch by value. This is the top level branch label resolution - * entry point. It dispatches to the right lookup function depending on the - * union discriminator type. - */ -AST_UnionBranch * -AST_Union::lookup_branch(AST_UnionBranch *branch) -{ - AST_UnionLabel *l = NULL; - - if (branch != NULL) - l = branch->label(); - - if (l != NULL) { - if (l->label_kind() == AST_UnionLabel::UL_default) - return lookup_default(); - if (pd_udisc_type == AST_Expression::EV_any) - /* CONVENTION: indicates enum discr */ - return lookup_enum(branch); - return lookup_label(branch); - } - return NULL; -} - -/* - * Public operations - */ - -/* - * Redefinition of inherited virtual operations - */ - -/* - * Add this AST_UnionBranch node (a node representing one branch in a - * union declaration) to this scope - */ -AST_UnionBranch *AST_Union::fe_add_union_branch(AST_UnionBranch *t) -{ - AST_Decl *d; - - /* - * If this is a malformed branch, don't do anything with it - */ - if (t == NULL || t->label() == NULL) - return NULL; - /* - * If branch with that label already exists, complain - */ - if (lookup_branch(t) != NULL) { - idl_global->err()->error2(UTL_Error::EIDL_MULTIPLE_BRANCH, this, t); - return NULL; - } - /* - * If branch with same field name exists, complain - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to scope - */ - add_to_scope(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add this AST_Union (manifest union type) to this scope - */ -AST_Union *AST_Union::fe_add_union(AST_Union *t) -{ - AST_Decl *d; - - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to local types - */ - add_to_local_types(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add this AST_Structure node (manifest struct type) to this scope - */ -AST_Structure *AST_Union::fe_add_structure(AST_Structure *t) -{ - AST_Decl *d; - - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to local types - */ - add_to_local_types(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add this AST_Enum node (manifest enum type) to this scope - */ -AST_Enum *AST_Union::fe_add_enum(AST_Enum *t) -{ - AST_Decl *d; - - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to local types - */ - add_to_local_types(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Add this AST_EnumVal node (enumerator declaration) to this scope. - * This is done to conform to the C++ scoping rules which declare - * enumerators in the enclosing scope (in addition to declaring them - * in the enum itself) - */ -AST_EnumVal *AST_Union::fe_add_enum_val(AST_EnumVal *t) -{ - AST_Decl *d; - - /* - * Already defined and cannot be redefined? Or already used? - */ - if ((d = lookup_for_add(t, I_FALSE)) != NULL) { - if (!can_be_redefined(d)) { - idl_global->err()->error3(UTL_Error::EIDL_REDEF, t, this, d); - return NULL; - } - if (referenced(d)) { - idl_global->err()->error3(UTL_Error::EIDL_DEF_USE, t, this, d); - return NULL; - } - if (t->has_ancestor(d)) { - idl_global->err()->redefinition_in_scope(t, d); - return NULL; - } - } - /* - * Add it to scope - */ - add_to_scope(t); - /* - * Add it to set of locally referenced symbols - */ - add_to_referenced(t, I_FALSE); - - return t; -} - -/* - * Dump this AST_Union node to the ostream o - */ -void -AST_Union::dump(ostream &o) -{ - o << "union "; - local_name()->dump(o); - o << " switch ("; - pd_disc_type->local_name()->dump(o); - o << ") {\n"; - UTL_Scope::dump(o); - idl_global->indent()->skip_to(o); - o << "}"; -} - -/* - * Data accessors - */ - -AST_ConcreteType * -AST_Union::disc_type() -{ - return pd_disc_type; -} - -AST_Expression::ExprType -AST_Union::udisc_type() -{ - return pd_udisc_type; -} - -// Narrowing -IMPL_NARROW_METHODS2(AST_Union, AST_ConcreteType, UTL_Scope) -IMPL_NARROW_FROM_DECL(AST_Union) -IMPL_NARROW_FROM_SCOPE(AST_Union) diff --git a/TAO/TAO_IDL/ast/ast_union_branch.cpp b/TAO/TAO_IDL/ast/ast_union_branch.cpp deleted file mode 100644 index 269528a6da4..00000000000 --- a/TAO/TAO_IDL/ast/ast_union_branch.cpp +++ /dev/null @@ -1,131 +0,0 @@ -// $Id$ - -/* - -COPYRIGHT - -Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United -States of America. All Rights Reserved. - -This product is protected by copyright and distributed under the following -license restricting its use. - -The Interface Definition Language Compiler Front End (CFE) is made -available for your use provided that you include this license and copyright -notice on all media and documentation and the software program in which -this product is incorporated in whole or part. You may copy and extend -functionality (but may not remove functionality) of the Interface -Definition Language CFE without charge, but you are not authorized to -license or distribute it to anyone else except as part of a product or -program developed by you or with the express written consent of Sun -Microsystems, Inc. ("Sun"). - -The names of Sun Microsystems, Inc. and any of its subsidiaries or -affiliates may not be used in advertising or publicity pertaining to -distribution of Interface Definition Language CFE as permitted herein. - -This license is effective until terminated by Sun for failure to comply -with this license. Upon termination, you shall destroy or return all code -and documentation for the Interface Definition Language CFE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF -ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS -FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF -DEALING, USAGE OR TRADE PRACTICE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT -ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES -TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. - -SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH -RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY -INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. - -IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR -ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL -DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -Use, duplication, or disclosure by the government is subject to -restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in -Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR -52.227-19. - -Sun, Sun Microsystems and the Sun logo are trademarks or registered -trademarks of Sun Microsystems, Inc. - -SunSoft, Inc. -2550 Garcia Avenue -Mountain View, California 94043 - -NOTE: - -SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are -trademarks or registered trademarks of Sun Microsystems, Inc. - - */ - -/* - * ast_union_branch.cc - Implementation of class AST_UnionBranch - * - * AST_UnionBranch nodes represent a single branch of an IDL union - * declaration. - * AST_UnionBranch is a subclass of AST_Field, adding a label (which - * is a subclass of AST_UnionLabel). - */ - -#include "idl.h" -#include "idl_extern.h" - -/* - * Constructor(s) and destructor - */ -AST_UnionBranch::AST_UnionBranch() - : pd_label(NULL) -{ -} - -AST_UnionBranch::AST_UnionBranch(AST_UnionLabel *fl, AST_Type *ft, - UTL_ScopedName *n, UTL_StrList *p) - : AST_Field(AST_Decl::NT_union_branch, ft, n, p), - AST_Decl(AST_Decl::NT_union_branch, n, p), - pd_label(fl) -{ -} - -/* - * Private operations - */ - -/* - * Public operations - */ - -/* - * Redefinition of inherited virtual operations - */ - -/* - * Dump this AST_UnionBranch node to the ostream o - */ -void -AST_UnionBranch::dump(ostream &o) -{ - o << "case "; - pd_label->dump(o); - o << ": "; - AST_Field::dump(o); -} - -/* - * Data accessors - */ - -AST_UnionLabel * -AST_UnionBranch::label() -{ - return pd_label; -} - -// Narrowing -IMPL_NARROW_METHODS1(AST_UnionBranch, AST_Field) -IMPL_NARROW_FROM_DECL(AST_UnionBranch) diff --git a/TAO/TAO_IDL/ast/ast_union_label.cpp b/TAO/TAO_IDL/ast/ast_union_label.cpp deleted file mode 100644 index c2666b54f66..00000000000 --- a/TAO/TAO_IDL/ast/ast_union_label.cpp +++ /dev/null @@ -1,135 +0,0 @@ -// $Id$ - -/* - -COPYRIGHT - -Copyright 1992, 1993, 1994 Sun Microsystems, Inc. Printed in the United -States of America. All Rights Reserved. - -This product is protected by copyright and distributed under the following -license restricting its use. - -The Interface Definition Language Compiler Front End (CFE) is made -available for your use provided that you include this license and copyright -notice on all media and documentation and the software program in which -this product is incorporated in whole or part. You may copy and extend -functionality (but may not remove functionality) of the Interface -Definition Language CFE without charge, but you are not authorized to -license or distribute it to anyone else except as part of a product or -program developed by you or with the express written consent of Sun -Microsystems, Inc. ("Sun"). - -The names of Sun Microsystems, Inc. and any of its subsidiaries or -affiliates may not be used in advertising or publicity pertaining to -distribution of Interface Definition Language CFE as permitted herein. - -This license is effective until terminated by Sun for failure to comply -with this license. Upon termination, you shall destroy or return all code -and documentation for the Interface Definition Language CFE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED AS IS WITH NO WARRANTIES OF -ANY KIND INCLUDING THE WARRANTIES OF DESIGN, MERCHANTIBILITY AND FITNESS -FOR A PARTICULAR PURPOSE, NONINFRINGEMENT, OR ARISING FROM A COURSE OF -DEALING, USAGE OR TRADE PRACTICE. - -INTERFACE DEFINITION LANGUAGE CFE IS PROVIDED WITH NO SUPPORT AND WITHOUT -ANY OBLIGATION ON THE PART OF Sun OR ANY OF ITS SUBSIDIARIES OR AFFILIATES -TO ASSIST IN ITS USE, CORRECTION, MODIFICATION OR ENHANCEMENT. - -SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES SHALL HAVE NO LIABILITY WITH -RESPECT TO THE INFRINGEMENT OF COPYRIGHTS, TRADE SECRETS OR ANY PATENTS BY -INTERFACE DEFINITION LANGUAGE CFE OR ANY PART THEREOF. - -IN NO EVENT WILL SUN OR ANY OF ITS SUBSIDIARIES OR AFFILIATES BE LIABLE FOR -ANY LOST REVENUE OR PROFITS OR OTHER SPECIAL, INDIRECT AND CONSEQUENTIAL -DAMAGES, EVEN IF SUN HAS BEEN ADVISED OF THE POSSIBILITY OF SUCH DAMAGES. - -Use, duplication, or disclosure by the government is subject to -restrictions as set forth in subparagraph (c)(1)(ii) of the Rights in -Technical Data and Computer Software clause at DFARS 252.227-7013 and FAR -52.227-19. - -Sun, Sun Microsystems and the Sun logo are trademarks or registered -trademarks of Sun Microsystems, Inc. - -SunSoft, Inc. -2550 Garcia Avenue -Mountain View, California 94043 - -NOTE: - -SunOS, SunSoft, Sun, Solaris, Sun Microsystems or the Sun logo are -trademarks or registered trademarks of Sun Microsystems, Inc. - - */ - -/* - * ast_union_label.cc - Implementation of class AST_UnionLabel - * - * AST_UnionLabel denotes the label of a branch in an IDL union - * declaration. - * AST_UnionLabel nodes have a label kind (the values come from the - * enum AST_UnionLabel::LabelKind) and a label value (which is a - * subclass of AST_Expression). - */ - -#include "idl.h" -#include "idl_extern.h" - -/* - * Constructor(s) - */ -AST_UnionLabel::AST_UnionLabel() - : pd_label_kind(UL_default), - pd_label_val(NULL) -{ -} - -AST_UnionLabel::AST_UnionLabel(UnionLabel lk, AST_Expression *lv) - : pd_label_kind(lk), - pd_label_val(lv) -{ - if (lv != NULL) - lv->evaluate(AST_Expression::EK_const); -} - -/* - * Private operations - */ - -/* - * Public operations - */ - -/* - * Redefinition of inherited virtual operations - */ - -/* - * Data accessors - */ - -AST_UnionLabel::UnionLabel -AST_UnionLabel::label_kind() -{ - return pd_label_kind; -} - -AST_Expression * -AST_UnionLabel::label_val() -{ - return pd_label_val; -} - -/* - * Dump this AST_UnionLabel node to the ostream o - */ -void -AST_UnionLabel::dump(ostream &o) -{ - if (pd_label_kind == UL_default) - o << "default"; - else - pd_label_val->dump(o); -} |