summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorparsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2004-01-28 00:12:31 +0000
committerparsons <parsons@ae88bc3d-4319-0410-8dbf-d08b4c9d3795>2004-01-28 00:12:31 +0000
commit8f8d33a8e27c9ac69c15fdd8bd7e03ab8883f5f8 (patch)
treed1974300673d8235d187584da60df745d61044b9
parent70ad25bb55120639b756d697dc83773648dce314 (diff)
downloadATCD-8f8d33a8e27c9ac69c15fdd8bd7e03ab8883f5f8.tar.gz
ChangeLogTag: Tue Jan 27 18:05:19 2004 Jeff Parsons <j.parsons@vanderbilt.edu>
-rw-r--r--TAO/ChangeLog18
-rw-r--r--TAO/TAO_IDL/be/be_codegen.cpp100
-rw-r--r--TAO/TAO_IDL/be/be_global.cpp7
-rw-r--r--TAO/TAO_IDL/be/be_visitor_root/root.cpp14
-rw-r--r--TAO/TAO_IDL/be_include/be_codegen.h3
-rw-r--r--TAO/TAO_IDL/be_include/be_global.h3
6 files changed, 19 insertions, 126 deletions
diff --git a/TAO/ChangeLog b/TAO/ChangeLog
index 667bf57744d..91c8f8154fd 100644
--- a/TAO/ChangeLog
+++ b/TAO/ChangeLog
@@ -1,3 +1,21 @@
+Tue Jan 27 18:05:19 2004 Jeff Parsons <j.parsons@vanderbilt.edu>
+
+ * TAO_IDL/be/be_codegen.cpp:
+ * TAO_IDL/be/be_global.cpp:
+ * TAO_IDL/be/be_visitor_root/root.cpp:
+ * TAO_IDL/be_include/be_codegen.h:
+ * TAO_IDL/be_include/be_global.h:
+
+ Eliminated generation of the *A.h file, containing
+ declarations for Any operators and triggered by the
+ option -GA. Moved generation of Any operator declarations
+ back to the *C.h file. Left generation of the *A.cpp file
+ unchanged, except for removal of *A.h #include. This
+ change allows us to avoid linking *A.cpp in
+ DLLs if the Any operators are not used, while still
+ allowing their declarations to be found if they are referenced
+ in another generated file.
+
Tue Jan 27 17:41:38 2004 Jeff Parsons <j.parsons@vanderbilt.edu>
* tao/OctetSeqA.h:
diff --git a/TAO/TAO_IDL/be/be_codegen.cpp b/TAO/TAO_IDL/be/be_codegen.cpp
index f9aac20bce2..991d229d969 100644
--- a/TAO/TAO_IDL/be/be_codegen.cpp
+++ b/TAO/TAO_IDL/be/be_codegen.cpp
@@ -43,7 +43,6 @@ TAO_CodeGen::TAO_CodeGen (void)
server_template_skeletons_ (0),
server_inline_ (0),
server_template_inline_ (0),
- anyop_header_ (0),
anyop_source_ (0),
gperf_input_stream_ (0),
gperf_input_filename_ (0),
@@ -57,19 +56,6 @@ TAO_CodeGen::TAO_CodeGen (void)
int status = 0;
status =
- this->start_anyop_header (
- be_global->be_get_anyop_header_fname ()
- );
-
- if (status == -1)
- {
- ACE_ERROR ((LM_ERROR,
- "(%N:%l) TAO_CodeGen::"
- "TAO_CodeGen - "
- "Error opening anyop header file\n"));
- }
-
- status =
this->start_anyop_source (
be_global->be_get_anyop_source_fname ()
);
@@ -98,7 +84,6 @@ TAO_CodeGen::~TAO_CodeGen (void)
delete this->client_inline_;
delete this->server_inline_;
delete this->server_template_inline_;
- delete this->anyop_header_;
delete this->anyop_source_;
#if !defined (linux) && !defined (__QNX__)
// This causes a seg fault on Linux RH 5.1. Let it leak . . .
@@ -823,67 +808,6 @@ TAO_CodeGen::server_template_inline (void)
}
int
-TAO_CodeGen::start_anyop_header (const char *fname)
-{
- // Retrieve the singleton instance to the outstream factory.
- TAO_OutStream_Factory *factory = TAO_OUTSTREAM_FACTORY::instance ();
-
- // Retrieve a specialized instance.
- this->anyop_header_ = factory->make_outstream ();
-
- if (!this->anyop_header_)
- {
- return -1;
- }
-
- if (this->anyop_header_->open (fname,
- TAO_OutStream::TAO_CLI_HDR)
- == -1)
- {
- return -1;
- }
-
- *this->anyop_header_ << be_nl
- << "// TAO_IDL - Generated from" << be_nl
- << "// " << __FILE__ << ":" << __LINE__
- << be_nl << be_nl;
-
- // Generate the #ident string, if any.
- this->gen_ident_string (this->anyop_header_);
-
- // Generate the #ifndef clause.
- this->gen_ifndef_string (fname,
- this->anyop_header_,
- "_TAO_IDL_",
- "_ANYOP_H_");
-
- if (be_global->pre_include () != 0)
- {
- *this->anyop_header_ << "#include /**/ \""
- << be_global->pre_include ()
- << "\"" << be_nl;
- }
-
- this->gen_standard_include (this->anyop_header_,
- "tao/orbconf.h");
-
- // Generate the TAO_EXPORT_MACRO macro.
- *this->anyop_header_ << "\n\n#if defined (TAO_EXPORT_MACRO)\n";
- *this->anyop_header_ << "#undef TAO_EXPORT_MACRO\n";
- *this->anyop_header_ << "#endif\n";
- *this->anyop_header_ << "#define TAO_EXPORT_MACRO "
- << be_global->stub_export_macro ();
-
- return 0;
-}
-
-TAO_OutStream *
-TAO_CodeGen::anyop_header (void)
-{
- return this->anyop_header_;
-}
-
-int
TAO_CodeGen::start_anyop_source (const char *fname)
{
// Retrieve the singleton instance to the outstream factory.
@@ -918,12 +842,6 @@ TAO_CodeGen::start_anyop_source (const char *fname)
<< be_global->be_get_client_hdr_fname (1)
<< "\"";
- // Generate the include statement for the anyop header. We just
- // need to put only the base names. Path info is not required.
- *this->anyop_source_ << "\n#include \""
- << be_global->be_get_anyop_header_fname (1)
- << "\"";
-
this->gen_standard_include (this->anyop_source_,
"tao/Typecode.h");
@@ -1263,24 +1181,6 @@ TAO_CodeGen::end_server_skeletons (void)
}
int
-TAO_CodeGen::end_anyop_header (void)
-{
- // Code to put the last #endif.
- *this->anyop_header_ << "\n\n";
-
- if (be_global->post_include () != 0)
- {
- *this->anyop_header_ << "#include /**/ \""
- << be_global->post_include ()
- << "\"\n\n";
- }
-
- *this->anyop_header_ << "#endif /* ifndef */" << be_nl << be_nl;
-
- return 0;
-}
-
-int
TAO_CodeGen::end_anyop_source (void)
{
*this->anyop_source_ << "\n\n";
diff --git a/TAO/TAO_IDL/be/be_global.cpp b/TAO/TAO_IDL/be/be_global.cpp
index 92f9cb0d698..b410ec27aa6 100644
--- a/TAO/TAO_IDL/be/be_global.cpp
+++ b/TAO/TAO_IDL/be/be_global.cpp
@@ -371,13 +371,6 @@ BE_GlobalData::be_get_server_template_inline_fname (int base_name_only)
}
const char *
-BE_GlobalData::be_get_anyop_header_fname (int base_name_only)
-{
- return be_get_anyop_header (idl_global->stripped_filename (),
- base_name_only);
-}
-
-const char *
BE_GlobalData::be_get_anyop_source_fname (int base_name_only)
{
return be_get_anyop_source (idl_global->stripped_filename (),
diff --git a/TAO/TAO_IDL/be/be_visitor_root/root.cpp b/TAO/TAO_IDL/be/be_visitor_root/root.cpp
index 0a81b779411..61029a480d4 100644
--- a/TAO/TAO_IDL/be/be_visitor_root/root.cpp
+++ b/TAO/TAO_IDL/be/be_visitor_root/root.cpp
@@ -282,21 +282,9 @@ int be_visitor_root::visit_root (be_root *node)
if (be_global->any_support ())
{
- if (be_global->gen_anyop_files ())
- {
- // Switch streams, ctx will be reassigned when this
- // pass is done.
- ctx.stream (tao_cg->anyop_header ());
- }
-
be_visitor_root_any_op visitor (&ctx);
status = node->accept (&visitor);
-
- if (be_global->gen_anyop_files ())
- {
- (void) tao_cg->end_anyop_header ();
- }
- }
+ }
break;
}
diff --git a/TAO/TAO_IDL/be_include/be_codegen.h b/TAO/TAO_IDL/be_include/be_codegen.h
index 500def365b6..c59139cf4b0 100644
--- a/TAO/TAO_IDL/be_include/be_codegen.h
+++ b/TAO/TAO_IDL/be_include/be_codegen.h
@@ -275,7 +275,6 @@ public:
int start_server_template_skeletons (const char *fname);
// Set the server template skeletons stream.
- int start_anyop_header (const char *fname);
int start_anyop_source (const char *fname);
// TAO developers only.
@@ -304,7 +303,6 @@ public:
int end_server_skeletons (void);
// Put a last #endif in the server skeletons.
- int end_anyop_header (void);
int end_anyop_source (void);
// TAO developers only.
@@ -438,7 +436,6 @@ private:
TAO_OutStream *server_template_inline_;
// Server side template inline file.
- TAO_OutStream *anyop_header_;
TAO_OutStream *anyop_source_;
// For use by TAO developers only.
diff --git a/TAO/TAO_IDL/be_include/be_global.h b/TAO/TAO_IDL/be_include/be_global.h
index 63f9e376043..532c4707ec3 100644
--- a/TAO/TAO_IDL/be_include/be_global.h
+++ b/TAO/TAO_IDL/be_include/be_global.h
@@ -97,9 +97,6 @@ public:
static const char *be_get_server_template_inline_fname (
int base_name_only = 0
);
- static const char *be_get_anyop_header_fname (
- int base_name_only = 0
- );
static const char *be_get_anyop_source_fname (
int base_name_only = 0
);