summaryrefslogtreecommitdiff
path: root/modules/CIAO/tests/IDL3/Components
diff options
context:
space:
mode:
Diffstat (limited to 'modules/CIAO/tests/IDL3/Components')
-rw-r--r--modules/CIAO/tests/IDL3/Components/ComplexComponent/Attributes/Attributes.idl51
-rw-r--r--modules/CIAO/tests/IDL3/Components/ComplexComponent/Attributes/Attributes.mpc17
-rw-r--r--modules/CIAO/tests/IDL3/Components/ComplexComponent/Attributes/Attributes_stub_export.h58
-rw-r--r--modules/CIAO/tests/IDL3/Components/ComplexComponent/Attributes/Attributes_svnt_export.h58
-rw-r--r--modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSink/EventSink.idl29
-rw-r--r--modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSink/EventSink.mpc18
-rw-r--r--modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSink/EventSink_stub_export.h58
-rw-r--r--modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSink/EventSink_svnt_export.h58
-rw-r--r--modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSource/EventSource.idl24
-rw-r--r--modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSource/EventSource.mpc17
-rw-r--r--modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSource/EventSource_stub_export.h58
-rw-r--r--modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSource/EventSource_svnt_export.h58
-rw-r--r--modules/CIAO/tests/IDL3/Components/ComplexComponent/Facets/Facets.idl46
-rw-r--r--modules/CIAO/tests/IDL3/Components/ComplexComponent/Facets/Facets.mpc17
-rw-r--r--modules/CIAO/tests/IDL3/Components/ComplexComponent/Facets/Facets_stub_export.h58
-rw-r--r--modules/CIAO/tests/IDL3/Components/ComplexComponent/Facets/Facets_svnt_export.h58
-rw-r--r--modules/CIAO/tests/IDL3/Components/ComplexComponent/Receptacles/Receptacles.idl68
-rw-r--r--modules/CIAO/tests/IDL3/Components/ComplexComponent/Receptacles/Receptacles.mpc21
-rw-r--r--modules/CIAO/tests/IDL3/Components/ComplexComponent/Receptacles/Receptacles_stub_export.h58
-rw-r--r--modules/CIAO/tests/IDL3/Components/ComplexComponent/Receptacles/Receptacles_svnt_export.h58
-rw-r--r--modules/CIAO/tests/IDL3/Components/SimpleComponent/SimpleComponent.idl96
-rw-r--r--modules/CIAO/tests/IDL3/Components/SimpleComponent/SimpleComponent.mpc21
-rw-r--r--modules/CIAO/tests/IDL3/Components/SimpleComponent/SimpleComponent_exec_export.h58
-rw-r--r--modules/CIAO/tests/IDL3/Components/SimpleComponent/SimpleComponent_stub_export.h58
-rw-r--r--modules/CIAO/tests/IDL3/Components/SimpleComponent/SimpleComponent_svnt_export.h58
25 files changed, 1179 insertions, 0 deletions
diff --git a/modules/CIAO/tests/IDL3/Components/ComplexComponent/Attributes/Attributes.idl b/modules/CIAO/tests/IDL3/Components/ComplexComponent/Attributes/Attributes.idl
new file mode 100644
index 00000000000..15c32fe82b3
--- /dev/null
+++ b/modules/CIAO/tests/IDL3/Components/ComplexComponent/Attributes/Attributes.idl
@@ -0,0 +1,51 @@
+// $Id$
+/**
+ * @file Attributes.idl
+ * @author Will Otte <wotte@dre.vanderbilt.edu>
+ */
+
+#include <Components.idl>
+
+module Attributes
+{
+ component Foo
+ {
+ attribute float test;
+ attribute long testA, testB;
+ };
+
+ component Bar
+ {
+ readonly attribute float test1;
+ readonly attribute long testB, testC;
+ };
+
+ exception FooException
+ {
+ };
+
+ exception BarException
+ {
+ };
+
+ component FooRaises
+ {
+ attribute float test2 getraises (FooException);
+ };
+
+ component BarRaises
+ {
+ attribute float test3 setraises (BarException);
+ };
+
+ component FooBarRaises
+ {
+ attribute float test4
+ getraises (FooException) setraises (BarException);
+ };
+
+ component ROFooRaises
+ {
+ readonly attribute float test5 raises (FooException);
+ };
+};
diff --git a/modules/CIAO/tests/IDL3/Components/ComplexComponent/Attributes/Attributes.mpc b/modules/CIAO/tests/IDL3/Components/ComplexComponent/Attributes/Attributes.mpc
new file mode 100644
index 00000000000..eea659666a3
--- /dev/null
+++ b/modules/CIAO/tests/IDL3/Components/ComplexComponent/Attributes/Attributes.mpc
@@ -0,0 +1,17 @@
+// $Id$
+// This file is generated with "generate_component_mpc.pl -n Attributes"
+
+project(Attributes_stub): ccm_stub {
+
+ sharedname = Attributes_stub
+ idlflags += -Wb,stub_export_macro=ATTRIBUTES_STUB_Export -Wb,stub_export_include=Attributes_stub_export.h -Wb,skel_export_macro=ATTRIBUTES_SVNT_Export -Wb,skel_export_include=Attributes_svnt_export.h
+ dynamicflags = ATTRIBUTES_STUB_BUILD_DLL
+
+ IDL_Files {
+ Attributes.idl
+ }
+
+ Source_Files {
+ AttributesC.cpp
+ }
+}
diff --git a/modules/CIAO/tests/IDL3/Components/ComplexComponent/Attributes/Attributes_stub_export.h b/modules/CIAO/tests/IDL3/Components/ComplexComponent/Attributes/Attributes_stub_export.h
new file mode 100644
index 00000000000..dfa59c5b267
--- /dev/null
+++ b/modules/CIAO/tests/IDL3/Components/ComplexComponent/Attributes/Attributes_stub_export.h
@@ -0,0 +1,58 @@
+
+// -*- C++ -*-
+// $Id$
+// Definition for Win32 Export directives.
+// This file is generated automatically by generate_export_file.pl ATTRIBUTES_STUB
+// ------------------------------
+#ifndef ATTRIBUTES_STUB_EXPORT_H
+#define ATTRIBUTES_STUB_EXPORT_H
+
+#include "ace/config-all.h"
+
+#if defined (ACE_AS_STATIC_LIBS) && !defined (ATTRIBUTES_STUB_HAS_DLL)
+# define ATTRIBUTES_STUB_HAS_DLL 0
+#endif /* ACE_AS_STATIC_LIBS && ATTRIBUTES_STUB_HAS_DLL */
+
+#if !defined (ATTRIBUTES_STUB_HAS_DLL)
+# define ATTRIBUTES_STUB_HAS_DLL 1
+#endif /* ! ATTRIBUTES_STUB_HAS_DLL */
+
+#if defined (ATTRIBUTES_STUB_HAS_DLL) && (ATTRIBUTES_STUB_HAS_DLL == 1)
+# if defined (ATTRIBUTES_STUB_BUILD_DLL)
+# define ATTRIBUTES_STUB_Export ACE_Proper_Export_Flag
+# define ATTRIBUTES_STUB_SINGLETON_DECLARATION(T) ACE_EXPORT_SINGLETON_DECLARATION (T)
+# define ATTRIBUTES_STUB_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# else /* ATTRIBUTES_STUB_BUILD_DLL */
+# define ATTRIBUTES_STUB_Export ACE_Proper_Import_Flag
+# define ATTRIBUTES_STUB_SINGLETON_DECLARATION(T) ACE_IMPORT_SINGLETON_DECLARATION (T)
+# define ATTRIBUTES_STUB_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# endif /* ATTRIBUTES_STUB_BUILD_DLL */
+#else /* ATTRIBUTES_STUB_HAS_DLL == 1 */
+# define ATTRIBUTES_STUB_Export
+# define ATTRIBUTES_STUB_SINGLETON_DECLARATION(T)
+# define ATTRIBUTES_STUB_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+#endif /* ATTRIBUTES_STUB_HAS_DLL == 1 */
+
+// Set ATTRIBUTES_STUB_NTRACE = 0 to turn on library specific tracing even if
+// tracing is turned off for ACE.
+#if !defined (ATTRIBUTES_STUB_NTRACE)
+# if (ACE_NTRACE == 1)
+# define ATTRIBUTES_STUB_NTRACE 1
+# else /* (ACE_NTRACE == 1) */
+# define ATTRIBUTES_STUB_NTRACE 0
+# endif /* (ACE_NTRACE == 1) */
+#endif /* !ATTRIBUTES_STUB_NTRACE */
+
+#if (ATTRIBUTES_STUB_NTRACE == 1)
+# define ATTRIBUTES_STUB_TRACE(X)
+#else /* (ATTRIBUTES_STUB_NTRACE == 1) */
+# if !defined (ACE_HAS_TRACE)
+# define ACE_HAS_TRACE
+# endif /* ACE_HAS_TRACE */
+# define ATTRIBUTES_STUB_TRACE(X) ACE_TRACE_IMPL(X)
+# include "ace/Trace.h"
+#endif /* (ATTRIBUTES_STUB_NTRACE == 1) */
+
+#endif /* ATTRIBUTES_STUB_EXPORT_H */
+
+// End of auto generated file.
diff --git a/modules/CIAO/tests/IDL3/Components/ComplexComponent/Attributes/Attributes_svnt_export.h b/modules/CIAO/tests/IDL3/Components/ComplexComponent/Attributes/Attributes_svnt_export.h
new file mode 100644
index 00000000000..e641264d206
--- /dev/null
+++ b/modules/CIAO/tests/IDL3/Components/ComplexComponent/Attributes/Attributes_svnt_export.h
@@ -0,0 +1,58 @@
+
+// -*- C++ -*-
+// $Id$
+// Definition for Win32 Export directives.
+// This file is generated automatically by generate_export_file.pl ATTRIBUTES_SVNT
+// ------------------------------
+#ifndef ATTRIBUTES_SVNT_EXPORT_H
+#define ATTRIBUTES_SVNT_EXPORT_H
+
+#include "ace/config-all.h"
+
+#if defined (ACE_AS_STATIC_LIBS) && !defined (ATTRIBUTES_SVNT_HAS_DLL)
+# define ATTRIBUTES_SVNT_HAS_DLL 0
+#endif /* ACE_AS_STATIC_LIBS && ATTRIBUTES_SVNT_HAS_DLL */
+
+#if !defined (ATTRIBUTES_SVNT_HAS_DLL)
+# define ATTRIBUTES_SVNT_HAS_DLL 1
+#endif /* ! ATTRIBUTES_SVNT_HAS_DLL */
+
+#if defined (ATTRIBUTES_SVNT_HAS_DLL) && (ATTRIBUTES_SVNT_HAS_DLL == 1)
+# if defined (ATTRIBUTES_SVNT_BUILD_DLL)
+# define ATTRIBUTES_SVNT_Export ACE_Proper_Export_Flag
+# define ATTRIBUTES_SVNT_SINGLETON_DECLARATION(T) ACE_EXPORT_SINGLETON_DECLARATION (T)
+# define ATTRIBUTES_SVNT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# else /* ATTRIBUTES_SVNT_BUILD_DLL */
+# define ATTRIBUTES_SVNT_Export ACE_Proper_Import_Flag
+# define ATTRIBUTES_SVNT_SINGLETON_DECLARATION(T) ACE_IMPORT_SINGLETON_DECLARATION (T)
+# define ATTRIBUTES_SVNT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# endif /* ATTRIBUTES_SVNT_BUILD_DLL */
+#else /* ATTRIBUTES_SVNT_HAS_DLL == 1 */
+# define ATTRIBUTES_SVNT_Export
+# define ATTRIBUTES_SVNT_SINGLETON_DECLARATION(T)
+# define ATTRIBUTES_SVNT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+#endif /* ATTRIBUTES_SVNT_HAS_DLL == 1 */
+
+// Set ATTRIBUTES_SVNT_NTRACE = 0 to turn on library specific tracing even if
+// tracing is turned off for ACE.
+#if !defined (ATTRIBUTES_SVNT_NTRACE)
+# if (ACE_NTRACE == 1)
+# define ATTRIBUTES_SVNT_NTRACE 1
+# else /* (ACE_NTRACE == 1) */
+# define ATTRIBUTES_SVNT_NTRACE 0
+# endif /* (ACE_NTRACE == 1) */
+#endif /* !ATTRIBUTES_SVNT_NTRACE */
+
+#if (ATTRIBUTES_SVNT_NTRACE == 1)
+# define ATTRIBUTES_SVNT_TRACE(X)
+#else /* (ATTRIBUTES_SVNT_NTRACE == 1) */
+# if !defined (ACE_HAS_TRACE)
+# define ACE_HAS_TRACE
+# endif /* ACE_HAS_TRACE */
+# define ATTRIBUTES_SVNT_TRACE(X) ACE_TRACE_IMPL(X)
+# include "ace/Trace.h"
+#endif /* (ATTRIBUTES_SVNT_NTRACE == 1) */
+
+#endif /* ATTRIBUTES_SVNT_EXPORT_H */
+
+// End of auto generated file.
diff --git a/modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSink/EventSink.idl b/modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSink/EventSink.idl
new file mode 100644
index 00000000000..e07fa13a7d2
--- /dev/null
+++ b/modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSink/EventSink.idl
@@ -0,0 +1,29 @@
+// $Id$
+/**
+ * @file EventSink.idl
+ * @author Will Otte <wotte@dre.vanderbilt.edu>
+ */
+
+#include <Components.idl>
+
+module EventSink
+{
+ eventtype foo_event
+ {
+ };
+
+ eventtype bar_event
+ {
+ };
+
+ component Foo
+ {
+ consumes foo_event c_foo;
+ };
+
+ component Bar : Foo
+ {
+ consumes bar_event c_bar;
+ };
+
+};
diff --git a/modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSink/EventSink.mpc b/modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSink/EventSink.mpc
new file mode 100644
index 00000000000..79ca1898fd6
--- /dev/null
+++ b/modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSink/EventSink.mpc
@@ -0,0 +1,18 @@
+// $Id$
+// This file is generated with "generate_component_mpc.pl -n EventSink"
+
+project(EventSink_stub): ccm_stub {
+
+ sharedname = EventSink_stub
+ idlflags += -Wb,stub_export_macro=EVENTSINK_STUB_Export -Wb,stub_export_include=EventSink_stub_export.h -Wb,skel_export_macro=EVENTSINK_SVNT_Export -Wb,skel_export_include=EventSink_svnt_export.h
+ dynamicflags = EVENTSINK_STUB_BUILD_DLL
+
+ IDL_Files {
+ EventSink.idl
+ }
+
+ Source_Files {
+ EventSinkC.cpp
+ }
+}
+
diff --git a/modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSink/EventSink_stub_export.h b/modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSink/EventSink_stub_export.h
new file mode 100644
index 00000000000..e2a7f876165
--- /dev/null
+++ b/modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSink/EventSink_stub_export.h
@@ -0,0 +1,58 @@
+
+// -*- C++ -*-
+// $Id$
+// Definition for Win32 Export directives.
+// This file is generated automatically by generate_export_file.pl EVENTSINK_STUB
+// ------------------------------
+#ifndef EVENTSINK_STUB_EXPORT_H
+#define EVENTSINK_STUB_EXPORT_H
+
+#include "ace/config-all.h"
+
+#if defined (ACE_AS_STATIC_LIBS) && !defined (EVENTSINK_STUB_HAS_DLL)
+# define EVENTSINK_STUB_HAS_DLL 0
+#endif /* ACE_AS_STATIC_LIBS && EVENTSINK_STUB_HAS_DLL */
+
+#if !defined (EVENTSINK_STUB_HAS_DLL)
+# define EVENTSINK_STUB_HAS_DLL 1
+#endif /* ! EVENTSINK_STUB_HAS_DLL */
+
+#if defined (EVENTSINK_STUB_HAS_DLL) && (EVENTSINK_STUB_HAS_DLL == 1)
+# if defined (EVENTSINK_STUB_BUILD_DLL)
+# define EVENTSINK_STUB_Export ACE_Proper_Export_Flag
+# define EVENTSINK_STUB_SINGLETON_DECLARATION(T) ACE_EXPORT_SINGLETON_DECLARATION (T)
+# define EVENTSINK_STUB_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# else /* EVENTSINK_STUB_BUILD_DLL */
+# define EVENTSINK_STUB_Export ACE_Proper_Import_Flag
+# define EVENTSINK_STUB_SINGLETON_DECLARATION(T) ACE_IMPORT_SINGLETON_DECLARATION (T)
+# define EVENTSINK_STUB_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# endif /* EVENTSINK_STUB_BUILD_DLL */
+#else /* EVENTSINK_STUB_HAS_DLL == 1 */
+# define EVENTSINK_STUB_Export
+# define EVENTSINK_STUB_SINGLETON_DECLARATION(T)
+# define EVENTSINK_STUB_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+#endif /* EVENTSINK_STUB_HAS_DLL == 1 */
+
+// Set EVENTSINK_STUB_NTRACE = 0 to turn on library specific tracing even if
+// tracing is turned off for ACE.
+#if !defined (EVENTSINK_STUB_NTRACE)
+# if (ACE_NTRACE == 1)
+# define EVENTSINK_STUB_NTRACE 1
+# else /* (ACE_NTRACE == 1) */
+# define EVENTSINK_STUB_NTRACE 0
+# endif /* (ACE_NTRACE == 1) */
+#endif /* !EVENTSINK_STUB_NTRACE */
+
+#if (EVENTSINK_STUB_NTRACE == 1)
+# define EVENTSINK_STUB_TRACE(X)
+#else /* (EVENTSINK_STUB_NTRACE == 1) */
+# if !defined (ACE_HAS_TRACE)
+# define ACE_HAS_TRACE
+# endif /* ACE_HAS_TRACE */
+# define EVENTSINK_STUB_TRACE(X) ACE_TRACE_IMPL(X)
+# include "ace/Trace.h"
+#endif /* (EVENTSINK_STUB_NTRACE == 1) */
+
+#endif /* EVENTSINK_STUB_EXPORT_H */
+
+// End of auto generated file.
diff --git a/modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSink/EventSink_svnt_export.h b/modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSink/EventSink_svnt_export.h
new file mode 100644
index 00000000000..b30cb9768c2
--- /dev/null
+++ b/modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSink/EventSink_svnt_export.h
@@ -0,0 +1,58 @@
+
+// -*- C++ -*-
+// $Id$
+// Definition for Win32 Export directives.
+// This file is generated automatically by generate_export_file.pl EVENTSINK_SVNT
+// ------------------------------
+#ifndef EVENTSINK_SVNT_EXPORT_H
+#define EVENTSINK_SVNT_EXPORT_H
+
+#include "ace/config-all.h"
+
+#if defined (ACE_AS_STATIC_LIBS) && !defined (EVENTSINK_SVNT_HAS_DLL)
+# define EVENTSINK_SVNT_HAS_DLL 0
+#endif /* ACE_AS_STATIC_LIBS && EVENTSINK_SVNT_HAS_DLL */
+
+#if !defined (EVENTSINK_SVNT_HAS_DLL)
+# define EVENTSINK_SVNT_HAS_DLL 1
+#endif /* ! EVENTSINK_SVNT_HAS_DLL */
+
+#if defined (EVENTSINK_SVNT_HAS_DLL) && (EVENTSINK_SVNT_HAS_DLL == 1)
+# if defined (EVENTSINK_SVNT_BUILD_DLL)
+# define EVENTSINK_SVNT_Export ACE_Proper_Export_Flag
+# define EVENTSINK_SVNT_SINGLETON_DECLARATION(T) ACE_EXPORT_SINGLETON_DECLARATION (T)
+# define EVENTSINK_SVNT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# else /* EVENTSINK_SVNT_BUILD_DLL */
+# define EVENTSINK_SVNT_Export ACE_Proper_Import_Flag
+# define EVENTSINK_SVNT_SINGLETON_DECLARATION(T) ACE_IMPORT_SINGLETON_DECLARATION (T)
+# define EVENTSINK_SVNT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# endif /* EVENTSINK_SVNT_BUILD_DLL */
+#else /* EVENTSINK_SVNT_HAS_DLL == 1 */
+# define EVENTSINK_SVNT_Export
+# define EVENTSINK_SVNT_SINGLETON_DECLARATION(T)
+# define EVENTSINK_SVNT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+#endif /* EVENTSINK_SVNT_HAS_DLL == 1 */
+
+// Set EVENTSINK_SVNT_NTRACE = 0 to turn on library specific tracing even if
+// tracing is turned off for ACE.
+#if !defined (EVENTSINK_SVNT_NTRACE)
+# if (ACE_NTRACE == 1)
+# define EVENTSINK_SVNT_NTRACE 1
+# else /* (ACE_NTRACE == 1) */
+# define EVENTSINK_SVNT_NTRACE 0
+# endif /* (ACE_NTRACE == 1) */
+#endif /* !EVENTSINK_SVNT_NTRACE */
+
+#if (EVENTSINK_SVNT_NTRACE == 1)
+# define EVENTSINK_SVNT_TRACE(X)
+#else /* (EVENTSINK_SVNT_NTRACE == 1) */
+# if !defined (ACE_HAS_TRACE)
+# define ACE_HAS_TRACE
+# endif /* ACE_HAS_TRACE */
+# define EVENTSINK_SVNT_TRACE(X) ACE_TRACE_IMPL(X)
+# include "ace/Trace.h"
+#endif /* (EVENTSINK_SVNT_NTRACE == 1) */
+
+#endif /* EVENTSINK_SVNT_EXPORT_H */
+
+// End of auto generated file.
diff --git a/modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSource/EventSource.idl b/modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSource/EventSource.idl
new file mode 100644
index 00000000000..f5614d964e5
--- /dev/null
+++ b/modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSource/EventSource.idl
@@ -0,0 +1,24 @@
+// $Id$
+/**
+ * @file EventSource.idl
+ * @author Will Otte <wotte@dre.vanderblit.edu>
+ */
+
+#include <Components.idl>
+
+module PublishesEmits
+{
+ eventtype foo_event
+ {
+ };
+
+ component Foo
+ {
+ publishes foo_event p_foo;
+ };
+
+ component Bar
+ {
+ emits foo_event foo;
+ };
+};
diff --git a/modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSource/EventSource.mpc b/modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSource/EventSource.mpc
new file mode 100644
index 00000000000..5f81314a9cf
--- /dev/null
+++ b/modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSource/EventSource.mpc
@@ -0,0 +1,17 @@
+// $Id$
+// This file is generated with "generate_component_mpc.pl -n EventSource"
+
+project(EventSource_stub): ccm_stub {
+
+ sharedname = EventSource_stub
+ idlflags += -Wb,stub_export_macro=EVENTSOURCE_STUB_Export -Wb,stub_export_include=EventSource_stub_export.h -Wb,skel_export_macro=EVENTSOURCE_SVNT_Export -Wb,skel_export_include=EventSource_svnt_export.h
+ dynamicflags = EVENTSOURCE_STUB_BUILD_DLL
+
+ IDL_Files {
+ EventSource.idl
+ }
+
+ Source_Files {
+ EventSourceC.cpp
+ }
+}
diff --git a/modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSource/EventSource_stub_export.h b/modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSource/EventSource_stub_export.h
new file mode 100644
index 00000000000..a0cf71bbe6d
--- /dev/null
+++ b/modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSource/EventSource_stub_export.h
@@ -0,0 +1,58 @@
+
+// -*- C++ -*-
+// $Id$
+// Definition for Win32 Export directives.
+// This file is generated automatically by generate_export_file.pl EVENTSOURCE_STUB
+// ------------------------------
+#ifndef EVENTSOURCE_STUB_EXPORT_H
+#define EVENTSOURCE_STUB_EXPORT_H
+
+#include "ace/config-all.h"
+
+#if defined (ACE_AS_STATIC_LIBS) && !defined (EVENTSOURCE_STUB_HAS_DLL)
+# define EVENTSOURCE_STUB_HAS_DLL 0
+#endif /* ACE_AS_STATIC_LIBS && EVENTSOURCE_STUB_HAS_DLL */
+
+#if !defined (EVENTSOURCE_STUB_HAS_DLL)
+# define EVENTSOURCE_STUB_HAS_DLL 1
+#endif /* ! EVENTSOURCE_STUB_HAS_DLL */
+
+#if defined (EVENTSOURCE_STUB_HAS_DLL) && (EVENTSOURCE_STUB_HAS_DLL == 1)
+# if defined (EVENTSOURCE_STUB_BUILD_DLL)
+# define EVENTSOURCE_STUB_Export ACE_Proper_Export_Flag
+# define EVENTSOURCE_STUB_SINGLETON_DECLARATION(T) ACE_EXPORT_SINGLETON_DECLARATION (T)
+# define EVENTSOURCE_STUB_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# else /* EVENTSOURCE_STUB_BUILD_DLL */
+# define EVENTSOURCE_STUB_Export ACE_Proper_Import_Flag
+# define EVENTSOURCE_STUB_SINGLETON_DECLARATION(T) ACE_IMPORT_SINGLETON_DECLARATION (T)
+# define EVENTSOURCE_STUB_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# endif /* EVENTSOURCE_STUB_BUILD_DLL */
+#else /* EVENTSOURCE_STUB_HAS_DLL == 1 */
+# define EVENTSOURCE_STUB_Export
+# define EVENTSOURCE_STUB_SINGLETON_DECLARATION(T)
+# define EVENTSOURCE_STUB_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+#endif /* EVENTSOURCE_STUB_HAS_DLL == 1 */
+
+// Set EVENTSOURCE_STUB_NTRACE = 0 to turn on library specific tracing even if
+// tracing is turned off for ACE.
+#if !defined (EVENTSOURCE_STUB_NTRACE)
+# if (ACE_NTRACE == 1)
+# define EVENTSOURCE_STUB_NTRACE 1
+# else /* (ACE_NTRACE == 1) */
+# define EVENTSOURCE_STUB_NTRACE 0
+# endif /* (ACE_NTRACE == 1) */
+#endif /* !EVENTSOURCE_STUB_NTRACE */
+
+#if (EVENTSOURCE_STUB_NTRACE == 1)
+# define EVENTSOURCE_STUB_TRACE(X)
+#else /* (EVENTSOURCE_STUB_NTRACE == 1) */
+# if !defined (ACE_HAS_TRACE)
+# define ACE_HAS_TRACE
+# endif /* ACE_HAS_TRACE */
+# define EVENTSOURCE_STUB_TRACE(X) ACE_TRACE_IMPL(X)
+# include "ace/Trace.h"
+#endif /* (EVENTSOURCE_STUB_NTRACE == 1) */
+
+#endif /* EVENTSOURCE_STUB_EXPORT_H */
+
+// End of auto generated file.
diff --git a/modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSource/EventSource_svnt_export.h b/modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSource/EventSource_svnt_export.h
new file mode 100644
index 00000000000..dd5eeacd906
--- /dev/null
+++ b/modules/CIAO/tests/IDL3/Components/ComplexComponent/EventSource/EventSource_svnt_export.h
@@ -0,0 +1,58 @@
+
+// -*- C++ -*-
+// $Id$
+// Definition for Win32 Export directives.
+// This file is generated automatically by generate_export_file.pl EVENTSOURCE_SVNT
+// ------------------------------
+#ifndef EVENTSOURCE_SVNT_EXPORT_H
+#define EVENTSOURCE_SVNT_EXPORT_H
+
+#include "ace/config-all.h"
+
+#if defined (ACE_AS_STATIC_LIBS) && !defined (EVENTSOURCE_SVNT_HAS_DLL)
+# define EVENTSOURCE_SVNT_HAS_DLL 0
+#endif /* ACE_AS_STATIC_LIBS && EVENTSOURCE_SVNT_HAS_DLL */
+
+#if !defined (EVENTSOURCE_SVNT_HAS_DLL)
+# define EVENTSOURCE_SVNT_HAS_DLL 1
+#endif /* ! EVENTSOURCE_SVNT_HAS_DLL */
+
+#if defined (EVENTSOURCE_SVNT_HAS_DLL) && (EVENTSOURCE_SVNT_HAS_DLL == 1)
+# if defined (EVENTSOURCE_SVNT_BUILD_DLL)
+# define EVENTSOURCE_SVNT_Export ACE_Proper_Export_Flag
+# define EVENTSOURCE_SVNT_SINGLETON_DECLARATION(T) ACE_EXPORT_SINGLETON_DECLARATION (T)
+# define EVENTSOURCE_SVNT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# else /* EVENTSOURCE_SVNT_BUILD_DLL */
+# define EVENTSOURCE_SVNT_Export ACE_Proper_Import_Flag
+# define EVENTSOURCE_SVNT_SINGLETON_DECLARATION(T) ACE_IMPORT_SINGLETON_DECLARATION (T)
+# define EVENTSOURCE_SVNT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# endif /* EVENTSOURCE_SVNT_BUILD_DLL */
+#else /* EVENTSOURCE_SVNT_HAS_DLL == 1 */
+# define EVENTSOURCE_SVNT_Export
+# define EVENTSOURCE_SVNT_SINGLETON_DECLARATION(T)
+# define EVENTSOURCE_SVNT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+#endif /* EVENTSOURCE_SVNT_HAS_DLL == 1 */
+
+// Set EVENTSOURCE_SVNT_NTRACE = 0 to turn on library specific tracing even if
+// tracing is turned off for ACE.
+#if !defined (EVENTSOURCE_SVNT_NTRACE)
+# if (ACE_NTRACE == 1)
+# define EVENTSOURCE_SVNT_NTRACE 1
+# else /* (ACE_NTRACE == 1) */
+# define EVENTSOURCE_SVNT_NTRACE 0
+# endif /* (ACE_NTRACE == 1) */
+#endif /* !EVENTSOURCE_SVNT_NTRACE */
+
+#if (EVENTSOURCE_SVNT_NTRACE == 1)
+# define EVENTSOURCE_SVNT_TRACE(X)
+#else /* (EVENTSOURCE_SVNT_NTRACE == 1) */
+# if !defined (ACE_HAS_TRACE)
+# define ACE_HAS_TRACE
+# endif /* ACE_HAS_TRACE */
+# define EVENTSOURCE_SVNT_TRACE(X) ACE_TRACE_IMPL(X)
+# include "ace/Trace.h"
+#endif /* (EVENTSOURCE_SVNT_NTRACE == 1) */
+
+#endif /* EVENTSOURCE_SVNT_EXPORT_H */
+
+// End of auto generated file.
diff --git a/modules/CIAO/tests/IDL3/Components/ComplexComponent/Facets/Facets.idl b/modules/CIAO/tests/IDL3/Components/ComplexComponent/Facets/Facets.idl
new file mode 100644
index 00000000000..eedabcf3184
--- /dev/null
+++ b/modules/CIAO/tests/IDL3/Components/ComplexComponent/Facets/Facets.idl
@@ -0,0 +1,46 @@
+// $Id$
+/**
+ * @file Facets.idl
+ * @author Will Otte <wotte@dre.vanderbilt.edu>
+ *
+ * This IDL file tests Facets within components.
+ */
+
+#include <Components.idl>
+
+module Facets
+{
+ interface foo_interface
+ {
+ };
+
+ interface bar_interface
+ {
+ };
+
+ component Foo
+ {
+ provides foo_interface p_foo;
+ };
+
+ component Bar : Foo
+ {
+ provides bar_interface p_bar;
+ };
+
+ component FooFoo : Foo
+ {
+ provides foo_interface p_foofoo;
+ };
+
+ component FooBar
+ {
+ provides foo_interface foo;
+ provides bar_interface bar;
+ };
+
+ component ObjectProvider
+ {
+ provides Object foo_object;
+ };
+};
diff --git a/modules/CIAO/tests/IDL3/Components/ComplexComponent/Facets/Facets.mpc b/modules/CIAO/tests/IDL3/Components/ComplexComponent/Facets/Facets.mpc
new file mode 100644
index 00000000000..ab3da28df3d
--- /dev/null
+++ b/modules/CIAO/tests/IDL3/Components/ComplexComponent/Facets/Facets.mpc
@@ -0,0 +1,17 @@
+// $Id$
+// This file is generated with "generate_component_mpc.pl -n Facets"
+
+project(Facets_stub): ccm_stub {
+
+ sharedname = Facets_stub
+ idlflags += -Wb,stub_export_macro=FACETS_STUB_Export -Wb,stub_export_include=Facets_stub_export.h -Wb,skel_export_macro=FACETS_SVNT_Export -Wb,skel_export_include=Facets_svnt_export.h
+ dynamicflags = FACETS_STUB_BUILD_DLL
+
+ IDL_Files {
+ Facets.idl
+ }
+
+ Source_Files {
+ FacetsC.cpp
+ }
+}
diff --git a/modules/CIAO/tests/IDL3/Components/ComplexComponent/Facets/Facets_stub_export.h b/modules/CIAO/tests/IDL3/Components/ComplexComponent/Facets/Facets_stub_export.h
new file mode 100644
index 00000000000..025fc8215f2
--- /dev/null
+++ b/modules/CIAO/tests/IDL3/Components/ComplexComponent/Facets/Facets_stub_export.h
@@ -0,0 +1,58 @@
+
+// -*- C++ -*-
+// $Id$
+// Definition for Win32 Export directives.
+// This file is generated automatically by generate_export_file.pl FACETS_STUB
+// ------------------------------
+#ifndef FACETS_STUB_EXPORT_H
+#define FACETS_STUB_EXPORT_H
+
+#include "ace/config-all.h"
+
+#if defined (ACE_AS_STATIC_LIBS) && !defined (FACETS_STUB_HAS_DLL)
+# define FACETS_STUB_HAS_DLL 0
+#endif /* ACE_AS_STATIC_LIBS && FACETS_STUB_HAS_DLL */
+
+#if !defined (FACETS_STUB_HAS_DLL)
+# define FACETS_STUB_HAS_DLL 1
+#endif /* ! FACETS_STUB_HAS_DLL */
+
+#if defined (FACETS_STUB_HAS_DLL) && (FACETS_STUB_HAS_DLL == 1)
+# if defined (FACETS_STUB_BUILD_DLL)
+# define FACETS_STUB_Export ACE_Proper_Export_Flag
+# define FACETS_STUB_SINGLETON_DECLARATION(T) ACE_EXPORT_SINGLETON_DECLARATION (T)
+# define FACETS_STUB_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# else /* FACETS_STUB_BUILD_DLL */
+# define FACETS_STUB_Export ACE_Proper_Import_Flag
+# define FACETS_STUB_SINGLETON_DECLARATION(T) ACE_IMPORT_SINGLETON_DECLARATION (T)
+# define FACETS_STUB_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# endif /* FACETS_STUB_BUILD_DLL */
+#else /* FACETS_STUB_HAS_DLL == 1 */
+# define FACETS_STUB_Export
+# define FACETS_STUB_SINGLETON_DECLARATION(T)
+# define FACETS_STUB_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+#endif /* FACETS_STUB_HAS_DLL == 1 */
+
+// Set FACETS_STUB_NTRACE = 0 to turn on library specific tracing even if
+// tracing is turned off for ACE.
+#if !defined (FACETS_STUB_NTRACE)
+# if (ACE_NTRACE == 1)
+# define FACETS_STUB_NTRACE 1
+# else /* (ACE_NTRACE == 1) */
+# define FACETS_STUB_NTRACE 0
+# endif /* (ACE_NTRACE == 1) */
+#endif /* !FACETS_STUB_NTRACE */
+
+#if (FACETS_STUB_NTRACE == 1)
+# define FACETS_STUB_TRACE(X)
+#else /* (FACETS_STUB_NTRACE == 1) */
+# if !defined (ACE_HAS_TRACE)
+# define ACE_HAS_TRACE
+# endif /* ACE_HAS_TRACE */
+# define FACETS_STUB_TRACE(X) ACE_TRACE_IMPL(X)
+# include "ace/Trace.h"
+#endif /* (FACETS_STUB_NTRACE == 1) */
+
+#endif /* FACETS_STUB_EXPORT_H */
+
+// End of auto generated file.
diff --git a/modules/CIAO/tests/IDL3/Components/ComplexComponent/Facets/Facets_svnt_export.h b/modules/CIAO/tests/IDL3/Components/ComplexComponent/Facets/Facets_svnt_export.h
new file mode 100644
index 00000000000..e4750de9b91
--- /dev/null
+++ b/modules/CIAO/tests/IDL3/Components/ComplexComponent/Facets/Facets_svnt_export.h
@@ -0,0 +1,58 @@
+
+// -*- C++ -*-
+// $Id$
+// Definition for Win32 Export directives.
+// This file is generated automatically by generate_export_file.pl FACETS_SVNT
+// ------------------------------
+#ifndef FACETS_SVNT_EXPORT_H
+#define FACETS_SVNT_EXPORT_H
+
+#include "ace/config-all.h"
+
+#if defined (ACE_AS_STATIC_LIBS) && !defined (FACETS_SVNT_HAS_DLL)
+# define FACETS_SVNT_HAS_DLL 0
+#endif /* ACE_AS_STATIC_LIBS && FACETS_SVNT_HAS_DLL */
+
+#if !defined (FACETS_SVNT_HAS_DLL)
+# define FACETS_SVNT_HAS_DLL 1
+#endif /* ! FACETS_SVNT_HAS_DLL */
+
+#if defined (FACETS_SVNT_HAS_DLL) && (FACETS_SVNT_HAS_DLL == 1)
+# if defined (FACETS_SVNT_BUILD_DLL)
+# define FACETS_SVNT_Export ACE_Proper_Export_Flag
+# define FACETS_SVNT_SINGLETON_DECLARATION(T) ACE_EXPORT_SINGLETON_DECLARATION (T)
+# define FACETS_SVNT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# else /* FACETS_SVNT_BUILD_DLL */
+# define FACETS_SVNT_Export ACE_Proper_Import_Flag
+# define FACETS_SVNT_SINGLETON_DECLARATION(T) ACE_IMPORT_SINGLETON_DECLARATION (T)
+# define FACETS_SVNT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# endif /* FACETS_SVNT_BUILD_DLL */
+#else /* FACETS_SVNT_HAS_DLL == 1 */
+# define FACETS_SVNT_Export
+# define FACETS_SVNT_SINGLETON_DECLARATION(T)
+# define FACETS_SVNT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+#endif /* FACETS_SVNT_HAS_DLL == 1 */
+
+// Set FACETS_SVNT_NTRACE = 0 to turn on library specific tracing even if
+// tracing is turned off for ACE.
+#if !defined (FACETS_SVNT_NTRACE)
+# if (ACE_NTRACE == 1)
+# define FACETS_SVNT_NTRACE 1
+# else /* (ACE_NTRACE == 1) */
+# define FACETS_SVNT_NTRACE 0
+# endif /* (ACE_NTRACE == 1) */
+#endif /* !FACETS_SVNT_NTRACE */
+
+#if (FACETS_SVNT_NTRACE == 1)
+# define FACETS_SVNT_TRACE(X)
+#else /* (FACETS_SVNT_NTRACE == 1) */
+# if !defined (ACE_HAS_TRACE)
+# define ACE_HAS_TRACE
+# endif /* ACE_HAS_TRACE */
+# define FACETS_SVNT_TRACE(X) ACE_TRACE_IMPL(X)
+# include "ace/Trace.h"
+#endif /* (FACETS_SVNT_NTRACE == 1) */
+
+#endif /* FACETS_SVNT_EXPORT_H */
+
+// End of auto generated file.
diff --git a/modules/CIAO/tests/IDL3/Components/ComplexComponent/Receptacles/Receptacles.idl b/modules/CIAO/tests/IDL3/Components/ComplexComponent/Receptacles/Receptacles.idl
new file mode 100644
index 00000000000..bd0af99cd86
--- /dev/null
+++ b/modules/CIAO/tests/IDL3/Components/ComplexComponent/Receptacles/Receptacles.idl
@@ -0,0 +1,68 @@
+// $Id$
+/**
+ * @file Receptacles.idl
+ * @author Will Otte <wotte@dre.vanderbilt.edu>
+ *
+ * Tests Receptacles within components.
+ */
+
+#include <Components.idl>
+
+module ReceptaclesSingle
+{
+ interface foo_interface
+ {
+ };
+
+ interface bar_interface
+ {
+ };
+
+ component Foo
+ {
+ uses foo_interface u_foo;
+ };
+
+ component Bar : Foo
+ {
+ uses bar_interface u_bar;
+ };
+
+ component FooBar
+ {
+ uses foo_interface foo;
+ uses bar_interface bar;
+ };
+
+ component ObjectFoo
+ {
+ uses Object foo;
+ };
+
+};
+
+module ReceptaclesMultiple
+{
+ interface foo_interface
+ {
+ };
+
+ interface bar_interface
+ {
+ };
+
+ component Foo
+ {
+ uses multiple foo_interface um_foo;
+ };
+
+ component Bar
+ {
+ uses multiple bar_interface um_bar;
+ };
+
+ component ObjectFoo
+ {
+ uses multiple Object foo;
+ };
+};
diff --git a/modules/CIAO/tests/IDL3/Components/ComplexComponent/Receptacles/Receptacles.mpc b/modules/CIAO/tests/IDL3/Components/ComplexComponent/Receptacles/Receptacles.mpc
new file mode 100644
index 00000000000..401f8d0c5c1
--- /dev/null
+++ b/modules/CIAO/tests/IDL3/Components/ComplexComponent/Receptacles/Receptacles.mpc
@@ -0,0 +1,21 @@
+// $Id$
+// This file is generated with "generate_component_mpc.pl -n Receptacles"
+
+project(Receptacles_stub): ccm_stub {
+
+ sharedname = Receptacles_stub
+ idlflags += -Wb,stub_export_macro=RECEPTACLES_STUB_Export \
+ -Wb,stub_export_include=Receptacles_stub_export.h \
+ -Wb,skel_export_macro=RECEPTACLES_SVNT_Export \
+ -Wb,skel_export_include=Receptacles_svnt_export.h
+
+ dynamicflags = RECEPTACLES_STUB_BUILD_DLL
+
+ IDL_Files {
+ Receptacles.idl
+ }
+
+ Source_Files {
+ ReceptaclesC.cpp
+ }
+}
diff --git a/modules/CIAO/tests/IDL3/Components/ComplexComponent/Receptacles/Receptacles_stub_export.h b/modules/CIAO/tests/IDL3/Components/ComplexComponent/Receptacles/Receptacles_stub_export.h
new file mode 100644
index 00000000000..15dedbc8a73
--- /dev/null
+++ b/modules/CIAO/tests/IDL3/Components/ComplexComponent/Receptacles/Receptacles_stub_export.h
@@ -0,0 +1,58 @@
+
+// -*- C++ -*-
+// $Id$
+// Definition for Win32 Export directives.
+// This file is generated automatically by generate_export_file.pl RECEPTACLES_STUB
+// ------------------------------
+#ifndef RECEPTACLES_STUB_EXPORT_H
+#define RECEPTACLES_STUB_EXPORT_H
+
+#include "ace/config-all.h"
+
+#if defined (ACE_AS_STATIC_LIBS) && !defined (RECEPTACLES_STUB_HAS_DLL)
+# define RECEPTACLES_STUB_HAS_DLL 0
+#endif /* ACE_AS_STATIC_LIBS && RECEPTACLES_STUB_HAS_DLL */
+
+#if !defined (RECEPTACLES_STUB_HAS_DLL)
+# define RECEPTACLES_STUB_HAS_DLL 1
+#endif /* ! RECEPTACLES_STUB_HAS_DLL */
+
+#if defined (RECEPTACLES_STUB_HAS_DLL) && (RECEPTACLES_STUB_HAS_DLL == 1)
+# if defined (RECEPTACLES_STUB_BUILD_DLL)
+# define RECEPTACLES_STUB_Export ACE_Proper_Export_Flag
+# define RECEPTACLES_STUB_SINGLETON_DECLARATION(T) ACE_EXPORT_SINGLETON_DECLARATION (T)
+# define RECEPTACLES_STUB_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# else /* RECEPTACLES_STUB_BUILD_DLL */
+# define RECEPTACLES_STUB_Export ACE_Proper_Import_Flag
+# define RECEPTACLES_STUB_SINGLETON_DECLARATION(T) ACE_IMPORT_SINGLETON_DECLARATION (T)
+# define RECEPTACLES_STUB_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# endif /* RECEPTACLES_STUB_BUILD_DLL */
+#else /* RECEPTACLES_STUB_HAS_DLL == 1 */
+# define RECEPTACLES_STUB_Export
+# define RECEPTACLES_STUB_SINGLETON_DECLARATION(T)
+# define RECEPTACLES_STUB_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+#endif /* RECEPTACLES_STUB_HAS_DLL == 1 */
+
+// Set RECEPTACLES_STUB_NTRACE = 0 to turn on library specific tracing even if
+// tracing is turned off for ACE.
+#if !defined (RECEPTACLES_STUB_NTRACE)
+# if (ACE_NTRACE == 1)
+# define RECEPTACLES_STUB_NTRACE 1
+# else /* (ACE_NTRACE == 1) */
+# define RECEPTACLES_STUB_NTRACE 0
+# endif /* (ACE_NTRACE == 1) */
+#endif /* !RECEPTACLES_STUB_NTRACE */
+
+#if (RECEPTACLES_STUB_NTRACE == 1)
+# define RECEPTACLES_STUB_TRACE(X)
+#else /* (RECEPTACLES_STUB_NTRACE == 1) */
+# if !defined (ACE_HAS_TRACE)
+# define ACE_HAS_TRACE
+# endif /* ACE_HAS_TRACE */
+# define RECEPTACLES_STUB_TRACE(X) ACE_TRACE_IMPL(X)
+# include "ace/Trace.h"
+#endif /* (RECEPTACLES_STUB_NTRACE == 1) */
+
+#endif /* RECEPTACLES_STUB_EXPORT_H */
+
+// End of auto generated file.
diff --git a/modules/CIAO/tests/IDL3/Components/ComplexComponent/Receptacles/Receptacles_svnt_export.h b/modules/CIAO/tests/IDL3/Components/ComplexComponent/Receptacles/Receptacles_svnt_export.h
new file mode 100644
index 00000000000..4a4a4f52dcd
--- /dev/null
+++ b/modules/CIAO/tests/IDL3/Components/ComplexComponent/Receptacles/Receptacles_svnt_export.h
@@ -0,0 +1,58 @@
+
+// -*- C++ -*-
+// $Id$
+// Definition for Win32 Export directives.
+// This file is generated automatically by generate_export_file.pl RECEPTACLES_SVNT
+// ------------------------------
+#ifndef RECEPTACLES_SVNT_EXPORT_H
+#define RECEPTACLES_SVNT_EXPORT_H
+
+#include "ace/config-all.h"
+
+#if defined (ACE_AS_STATIC_LIBS) && !defined (RECEPTACLES_SVNT_HAS_DLL)
+# define RECEPTACLES_SVNT_HAS_DLL 0
+#endif /* ACE_AS_STATIC_LIBS && RECEPTACLES_SVNT_HAS_DLL */
+
+#if !defined (RECEPTACLES_SVNT_HAS_DLL)
+# define RECEPTACLES_SVNT_HAS_DLL 1
+#endif /* ! RECEPTACLES_SVNT_HAS_DLL */
+
+#if defined (RECEPTACLES_SVNT_HAS_DLL) && (RECEPTACLES_SVNT_HAS_DLL == 1)
+# if defined (RECEPTACLES_SVNT_BUILD_DLL)
+# define RECEPTACLES_SVNT_Export ACE_Proper_Export_Flag
+# define RECEPTACLES_SVNT_SINGLETON_DECLARATION(T) ACE_EXPORT_SINGLETON_DECLARATION (T)
+# define RECEPTACLES_SVNT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# else /* RECEPTACLES_SVNT_BUILD_DLL */
+# define RECEPTACLES_SVNT_Export ACE_Proper_Import_Flag
+# define RECEPTACLES_SVNT_SINGLETON_DECLARATION(T) ACE_IMPORT_SINGLETON_DECLARATION (T)
+# define RECEPTACLES_SVNT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# endif /* RECEPTACLES_SVNT_BUILD_DLL */
+#else /* RECEPTACLES_SVNT_HAS_DLL == 1 */
+# define RECEPTACLES_SVNT_Export
+# define RECEPTACLES_SVNT_SINGLETON_DECLARATION(T)
+# define RECEPTACLES_SVNT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+#endif /* RECEPTACLES_SVNT_HAS_DLL == 1 */
+
+// Set RECEPTACLES_SVNT_NTRACE = 0 to turn on library specific tracing even if
+// tracing is turned off for ACE.
+#if !defined (RECEPTACLES_SVNT_NTRACE)
+# if (ACE_NTRACE == 1)
+# define RECEPTACLES_SVNT_NTRACE 1
+# else /* (ACE_NTRACE == 1) */
+# define RECEPTACLES_SVNT_NTRACE 0
+# endif /* (ACE_NTRACE == 1) */
+#endif /* !RECEPTACLES_SVNT_NTRACE */
+
+#if (RECEPTACLES_SVNT_NTRACE == 1)
+# define RECEPTACLES_SVNT_TRACE(X)
+#else /* (RECEPTACLES_SVNT_NTRACE == 1) */
+# if !defined (ACE_HAS_TRACE)
+# define ACE_HAS_TRACE
+# endif /* ACE_HAS_TRACE */
+# define RECEPTACLES_SVNT_TRACE(X) ACE_TRACE_IMPL(X)
+# include "ace/Trace.h"
+#endif /* (RECEPTACLES_SVNT_NTRACE == 1) */
+
+#endif /* RECEPTACLES_SVNT_EXPORT_H */
+
+// End of auto generated file.
diff --git a/modules/CIAO/tests/IDL3/Components/SimpleComponent/SimpleComponent.idl b/modules/CIAO/tests/IDL3/Components/SimpleComponent/SimpleComponent.idl
new file mode 100644
index 00000000000..8b020a77e54
--- /dev/null
+++ b/modules/CIAO/tests/IDL3/Components/SimpleComponent/SimpleComponent.idl
@@ -0,0 +1,96 @@
+// $Id$
+/**
+ * @file SimpleComponent.idl
+ *
+ * Tests simple component declarations.
+ */
+
+#include <Components.idl>
+
+module VerySimple
+{
+
+ component Foo
+ {
+ };
+
+ home FooHome manages Foo
+ {
+ };
+
+};
+
+module SupportsInterface
+{
+ interface foo_interface
+ {
+ };
+
+ component Foo supports foo_interface
+ {
+ };
+
+ home FooHome manages Foo
+ {
+ };
+
+};
+
+
+module SupportsMultiple
+{
+ interface foo_interface
+ {
+ };
+
+ interface bar_interface
+ {
+ };
+
+ component FooBar supports foo_interface, bar_interface
+ {
+ };
+
+ home FooBarHome manages FooBar
+ {
+ };
+};
+
+module Inheritance
+{
+ interface foo_interface
+ {
+ };
+
+ interface Bar_interface
+ {
+ };
+
+ component Foo supports foo_interface
+ {
+ };
+
+ component Bar : Foo
+ {
+ };
+
+ home FooHome manages Foo
+ {
+ };
+
+ home BarHome manages Bar
+ {
+ };
+
+
+};
+
+module Bug_2790_Regression
+{
+ // It is legal for a derived component to support an interface
+ interface Wibble {};
+ interface Wobble {};
+ component Bobble {};
+ component Bibble : Bobble supports Wibble, Wobble {};
+};
+
diff --git a/modules/CIAO/tests/IDL3/Components/SimpleComponent/SimpleComponent.mpc b/modules/CIAO/tests/IDL3/Components/SimpleComponent/SimpleComponent.mpc
new file mode 100644
index 00000000000..f2b44a8123e
--- /dev/null
+++ b/modules/CIAO/tests/IDL3/Components/SimpleComponent/SimpleComponent.mpc
@@ -0,0 +1,21 @@
+// $Id$
+// This file is generated with "generate_component_mpc.pl SimpleComponent"
+
+project(SimpleComponent_stub_idl3): ccm_stub {
+
+ sharedname = SimpleComponent_stub
+ idlflags += -Wb,stub_export_macro=SIMPLECOMPONENT_STUB_Export \
+ -Wb,stub_export_include=SimpleComponent_stub_export.h \
+ -Wb,skel_export_macro=SIMPLECOMPONENT_SVNT_Export \
+ -Wb,skel_export_include=SimpleComponent_svnt_export.h
+
+ dynamicflags = SIMPLECOMPONENT_STUB_BUILD_DLL
+
+ IDL_Files {
+ SimpleComponent.idl
+ }
+
+ Source_Files {
+ SimpleComponentC.cpp
+ }
+}
diff --git a/modules/CIAO/tests/IDL3/Components/SimpleComponent/SimpleComponent_exec_export.h b/modules/CIAO/tests/IDL3/Components/SimpleComponent/SimpleComponent_exec_export.h
new file mode 100644
index 00000000000..add746da8f5
--- /dev/null
+++ b/modules/CIAO/tests/IDL3/Components/SimpleComponent/SimpleComponent_exec_export.h
@@ -0,0 +1,58 @@
+
+// -*- C++ -*-
+// $Id$
+// Definition for Win32 Export directives.
+// This file is generated automatically by generate_export_file.pl SIMPLECOMPONENT_EXEC
+// ------------------------------
+#ifndef SIMPLECOMPONENT_EXEC_EXPORT_H
+#define SIMPLECOMPONENT_EXEC_EXPORT_H
+
+#include "ace/config-all.h"
+
+#if defined (ACE_AS_STATIC_LIBS) && !defined (SIMPLECOMPONENT_EXEC_HAS_DLL)
+# define SIMPLECOMPONENT_EXEC_HAS_DLL 0
+#endif /* ACE_AS_STATIC_LIBS && SIMPLECOMPONENT_EXEC_HAS_DLL */
+
+#if !defined (SIMPLECOMPONENT_EXEC_HAS_DLL)
+# define SIMPLECOMPONENT_EXEC_HAS_DLL 1
+#endif /* ! SIMPLECOMPONENT_EXEC_HAS_DLL */
+
+#if defined (SIMPLECOMPONENT_EXEC_HAS_DLL) && (SIMPLECOMPONENT_EXEC_HAS_DLL == 1)
+# if defined (SIMPLECOMPONENT_EXEC_BUILD_DLL)
+# define SIMPLECOMPONENT_EXEC_Export ACE_Proper_Export_Flag
+# define SIMPLECOMPONENT_EXEC_SINGLETON_DECLARATION(T) ACE_EXPORT_SINGLETON_DECLARATION (T)
+# define SIMPLECOMPONENT_EXEC_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# else /* SIMPLECOMPONENT_EXEC_BUILD_DLL */
+# define SIMPLECOMPONENT_EXEC_Export ACE_Proper_Import_Flag
+# define SIMPLECOMPONENT_EXEC_SINGLETON_DECLARATION(T) ACE_IMPORT_SINGLETON_DECLARATION (T)
+# define SIMPLECOMPONENT_EXEC_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# endif /* SIMPLECOMPONENT_EXEC_BUILD_DLL */
+#else /* SIMPLECOMPONENT_EXEC_HAS_DLL == 1 */
+# define SIMPLECOMPONENT_EXEC_Export
+# define SIMPLECOMPONENT_EXEC_SINGLETON_DECLARATION(T)
+# define SIMPLECOMPONENT_EXEC_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+#endif /* SIMPLECOMPONENT_EXEC_HAS_DLL == 1 */
+
+// Set SIMPLECOMPONENT_EXEC_NTRACE = 0 to turn on library specific tracing even if
+// tracing is turned off for ACE.
+#if !defined (SIMPLECOMPONENT_EXEC_NTRACE)
+# if (ACE_NTRACE == 1)
+# define SIMPLECOMPONENT_EXEC_NTRACE 1
+# else /* (ACE_NTRACE == 1) */
+# define SIMPLECOMPONENT_EXEC_NTRACE 0
+# endif /* (ACE_NTRACE == 1) */
+#endif /* !SIMPLECOMPONENT_EXEC_NTRACE */
+
+#if (SIMPLECOMPONENT_EXEC_NTRACE == 1)
+# define SIMPLECOMPONENT_EXEC_TRACE(X)
+#else /* (SIMPLECOMPONENT_EXEC_NTRACE == 1) */
+# if !defined (ACE_HAS_TRACE)
+# define ACE_HAS_TRACE
+# endif /* ACE_HAS_TRACE */
+# define SIMPLECOMPONENT_EXEC_TRACE(X) ACE_TRACE_IMPL(X)
+# include "ace/Trace.h"
+#endif /* (SIMPLECOMPONENT_EXEC_NTRACE == 1) */
+
+#endif /* SIMPLECOMPONENT_EXEC_EXPORT_H */
+
+// End of auto generated file.
diff --git a/modules/CIAO/tests/IDL3/Components/SimpleComponent/SimpleComponent_stub_export.h b/modules/CIAO/tests/IDL3/Components/SimpleComponent/SimpleComponent_stub_export.h
new file mode 100644
index 00000000000..eb8cb7a6c97
--- /dev/null
+++ b/modules/CIAO/tests/IDL3/Components/SimpleComponent/SimpleComponent_stub_export.h
@@ -0,0 +1,58 @@
+
+// -*- C++ -*-
+// $Id$
+// Definition for Win32 Export directives.
+// This file is generated automatically by generate_export_file.pl SIMPLECOMPONENT_STUB
+// ------------------------------
+#ifndef SIMPLECOMPONENT_STUB_EXPORT_H
+#define SIMPLECOMPONENT_STUB_EXPORT_H
+
+#include "ace/config-all.h"
+
+#if defined (ACE_AS_STATIC_LIBS) && !defined (SIMPLECOMPONENT_STUB_HAS_DLL)
+# define SIMPLECOMPONENT_STUB_HAS_DLL 0
+#endif /* ACE_AS_STATIC_LIBS && SIMPLECOMPONENT_STUB_HAS_DLL */
+
+#if !defined (SIMPLECOMPONENT_STUB_HAS_DLL)
+# define SIMPLECOMPONENT_STUB_HAS_DLL 1
+#endif /* ! SIMPLECOMPONENT_STUB_HAS_DLL */
+
+#if defined (SIMPLECOMPONENT_STUB_HAS_DLL) && (SIMPLECOMPONENT_STUB_HAS_DLL == 1)
+# if defined (SIMPLECOMPONENT_STUB_BUILD_DLL)
+# define SIMPLECOMPONENT_STUB_Export ACE_Proper_Export_Flag
+# define SIMPLECOMPONENT_STUB_SINGLETON_DECLARATION(T) ACE_EXPORT_SINGLETON_DECLARATION (T)
+# define SIMPLECOMPONENT_STUB_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# else /* SIMPLECOMPONENT_STUB_BUILD_DLL */
+# define SIMPLECOMPONENT_STUB_Export ACE_Proper_Import_Flag
+# define SIMPLECOMPONENT_STUB_SINGLETON_DECLARATION(T) ACE_IMPORT_SINGLETON_DECLARATION (T)
+# define SIMPLECOMPONENT_STUB_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# endif /* SIMPLECOMPONENT_STUB_BUILD_DLL */
+#else /* SIMPLECOMPONENT_STUB_HAS_DLL == 1 */
+# define SIMPLECOMPONENT_STUB_Export
+# define SIMPLECOMPONENT_STUB_SINGLETON_DECLARATION(T)
+# define SIMPLECOMPONENT_STUB_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+#endif /* SIMPLECOMPONENT_STUB_HAS_DLL == 1 */
+
+// Set SIMPLECOMPONENT_STUB_NTRACE = 0 to turn on library specific tracing even if
+// tracing is turned off for ACE.
+#if !defined (SIMPLECOMPONENT_STUB_NTRACE)
+# if (ACE_NTRACE == 1)
+# define SIMPLECOMPONENT_STUB_NTRACE 1
+# else /* (ACE_NTRACE == 1) */
+# define SIMPLECOMPONENT_STUB_NTRACE 0
+# endif /* (ACE_NTRACE == 1) */
+#endif /* !SIMPLECOMPONENT_STUB_NTRACE */
+
+#if (SIMPLECOMPONENT_STUB_NTRACE == 1)
+# define SIMPLECOMPONENT_STUB_TRACE(X)
+#else /* (SIMPLECOMPONENT_STUB_NTRACE == 1) */
+# if !defined (ACE_HAS_TRACE)
+# define ACE_HAS_TRACE
+# endif /* ACE_HAS_TRACE */
+# define SIMPLECOMPONENT_STUB_TRACE(X) ACE_TRACE_IMPL(X)
+# include "ace/Trace.h"
+#endif /* (SIMPLECOMPONENT_STUB_NTRACE == 1) */
+
+#endif /* SIMPLECOMPONENT_STUB_EXPORT_H */
+
+// End of auto generated file.
diff --git a/modules/CIAO/tests/IDL3/Components/SimpleComponent/SimpleComponent_svnt_export.h b/modules/CIAO/tests/IDL3/Components/SimpleComponent/SimpleComponent_svnt_export.h
new file mode 100644
index 00000000000..694af85e994
--- /dev/null
+++ b/modules/CIAO/tests/IDL3/Components/SimpleComponent/SimpleComponent_svnt_export.h
@@ -0,0 +1,58 @@
+
+// -*- C++ -*-
+// $Id$
+// Definition for Win32 Export directives.
+// This file is generated automatically by generate_export_file.pl SIMPLECOMPONENT_SVNT
+// ------------------------------
+#ifndef SIMPLECOMPONENT_SVNT_EXPORT_H
+#define SIMPLECOMPONENT_SVNT_EXPORT_H
+
+#include "ace/config-all.h"
+
+#if defined (ACE_AS_STATIC_LIBS) && !defined (SIMPLECOMPONENT_SVNT_HAS_DLL)
+# define SIMPLECOMPONENT_SVNT_HAS_DLL 0
+#endif /* ACE_AS_STATIC_LIBS && SIMPLECOMPONENT_SVNT_HAS_DLL */
+
+#if !defined (SIMPLECOMPONENT_SVNT_HAS_DLL)
+# define SIMPLECOMPONENT_SVNT_HAS_DLL 1
+#endif /* ! SIMPLECOMPONENT_SVNT_HAS_DLL */
+
+#if defined (SIMPLECOMPONENT_SVNT_HAS_DLL) && (SIMPLECOMPONENT_SVNT_HAS_DLL == 1)
+# if defined (SIMPLECOMPONENT_SVNT_BUILD_DLL)
+# define SIMPLECOMPONENT_SVNT_Export ACE_Proper_Export_Flag
+# define SIMPLECOMPONENT_SVNT_SINGLETON_DECLARATION(T) ACE_EXPORT_SINGLETON_DECLARATION (T)
+# define SIMPLECOMPONENT_SVNT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_EXPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# else /* SIMPLECOMPONENT_SVNT_BUILD_DLL */
+# define SIMPLECOMPONENT_SVNT_Export ACE_Proper_Import_Flag
+# define SIMPLECOMPONENT_SVNT_SINGLETON_DECLARATION(T) ACE_IMPORT_SINGLETON_DECLARATION (T)
+# define SIMPLECOMPONENT_SVNT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK) ACE_IMPORT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+# endif /* SIMPLECOMPONENT_SVNT_BUILD_DLL */
+#else /* SIMPLECOMPONENT_SVNT_HAS_DLL == 1 */
+# define SIMPLECOMPONENT_SVNT_Export
+# define SIMPLECOMPONENT_SVNT_SINGLETON_DECLARATION(T)
+# define SIMPLECOMPONENT_SVNT_SINGLETON_DECLARE(SINGLETON_TYPE, CLASS, LOCK)
+#endif /* SIMPLECOMPONENT_SVNT_HAS_DLL == 1 */
+
+// Set SIMPLECOMPONENT_SVNT_NTRACE = 0 to turn on library specific tracing even if
+// tracing is turned off for ACE.
+#if !defined (SIMPLECOMPONENT_SVNT_NTRACE)
+# if (ACE_NTRACE == 1)
+# define SIMPLECOMPONENT_SVNT_NTRACE 1
+# else /* (ACE_NTRACE == 1) */
+# define SIMPLECOMPONENT_SVNT_NTRACE 0
+# endif /* (ACE_NTRACE == 1) */
+#endif /* !SIMPLECOMPONENT_SVNT_NTRACE */
+
+#if (SIMPLECOMPONENT_SVNT_NTRACE == 1)
+# define SIMPLECOMPONENT_SVNT_TRACE(X)
+#else /* (SIMPLECOMPONENT_SVNT_NTRACE == 1) */
+# if !defined (ACE_HAS_TRACE)
+# define ACE_HAS_TRACE
+# endif /* ACE_HAS_TRACE */
+# define SIMPLECOMPONENT_SVNT_TRACE(X) ACE_TRACE_IMPL(X)
+# include "ace/Trace.h"
+#endif /* (SIMPLECOMPONENT_SVNT_NTRACE == 1) */
+
+#endif /* SIMPLECOMPONENT_SVNT_EXPORT_H */
+
+// End of auto generated file.