Index: trunk/include/VBox/settings.h
===================================================================
--- trunk/include/VBox/settings.h	(revision 21084)
+++ trunk/include/VBox/settings.h	(revision 21085)
@@ -242,4 +242,23 @@
 #pragma warning (disable:4251)
 #pragma warning (disable:4275)
+#endif
+
+/** @def IN_VBOXXML_R3
+ * Used to indicate whether we're inside the same link module as the
+ * XML Settings File Manipulation API.
+ *
+ * @todo should go to a separate common include together with VBOXXML2_CLASS
+ * once there becomes more than one header in the VBoxXML2 library.
+ */
+#ifdef DOXYGEN_RUNNING
+# define IN_VBOXXML_R3
+#endif
+
+/** @def VBOXXML_CLASS
+ * Class export/import wrapper. */
+#ifdef IN_VBOXXML_R3
+# define VBOXXML_CLASS DECLEXPORT_CLASS
+#else
+# define VBOXXML_CLASS DECLIMPORT_CLASS
 #endif
 
Index: trunk/include/iprt/xml_cpp.h
===================================================================
--- trunk/include/iprt/xml_cpp.h	(revision 21084)
+++ trunk/include/iprt/xml_cpp.h	(revision 21085)
@@ -40,23 +40,4 @@
 #include <iprt/ministring_cpp.h>
 
-/** @def IN_VBOXXML_R3
- * Used to indicate whether we're inside the same link module as the
- * XML Settings File Manipulation API.
- *
- * @todo should go to a separate common include together with VBOXXML2_CLASS
- * once there becomes more than one header in the VBoxXML2 library.
- */
-#ifdef DOXYGEN_RUNNING
-# define IN_VBOXXML_R3
-#endif
-
-/** @def VBOXXML_CLASS
- * Class export/import wrapper. */
-#ifdef IN_VBOXXML_R3
-# define VBOXXML_CLASS DECLEXPORT_CLASS
-#else
-# define VBOXXML_CLASS DECLIMPORT_CLASS
-#endif
-
 /* Forwards */
 typedef struct _xmlParserInput xmlParserInput;
@@ -76,5 +57,5 @@
  * Base exception class.
  */
-class VBOXXML_CLASS Error : public std::exception
+class RT_DECL_CLASS Error : public std::exception
 {
 public:
@@ -116,5 +97,5 @@
 };
 
-class VBOXXML_CLASS LogicError : public Error
+class RT_DECL_CLASS LogicError : public Error
 {
 public:
@@ -127,5 +108,5 @@
 };
 
-class VBOXXML_CLASS RuntimeError : public Error
+class RT_DECL_CLASS RuntimeError : public Error
 {
 public:
@@ -136,5 +117,5 @@
 };
 
-class VBOXXML_CLASS XmlError : public RuntimeError
+class RT_DECL_CLASS XmlError : public RuntimeError
 {
 public:
@@ -147,5 +128,5 @@
 //////////////////////////////////////////////////////////////////////////////
 
-class VBOXXML_CLASS ENotImplemented : public LogicError
+class RT_DECL_CLASS ENotImplemented : public LogicError
 {
 public:
@@ -154,5 +135,5 @@
 };
 
-class VBOXXML_CLASS EInvalidArg : public LogicError
+class RT_DECL_CLASS EInvalidArg : public LogicError
 {
 public:
@@ -161,5 +142,5 @@
 };
 
-class VBOXXML_CLASS EDocumentNotEmpty : public LogicError
+class RT_DECL_CLASS EDocumentNotEmpty : public LogicError
 {
 public:
@@ -168,5 +149,5 @@
 };
 
-class VBOXXML_CLASS ENodeIsNotElement : public LogicError
+class RT_DECL_CLASS ENodeIsNotElement : public LogicError
 {
 public:
@@ -178,5 +159,5 @@
 //////////////////////////////////////////////////////////////////////////////
 
-class VBOXXML_CLASS ENoMemory : public RuntimeError, public std::bad_alloc
+class RT_DECL_CLASS ENoMemory : public RuntimeError, public std::bad_alloc
 {
 public:
@@ -185,5 +166,5 @@
 };
 
-class VBOXXML_CLASS EIPRTFailure : public RuntimeError
+class RT_DECL_CLASS EIPRTFailure : public RuntimeError
 {
 public:
@@ -201,5 +182,5 @@
  * The Stream class is a base class for I/O streams.
  */
-class VBOXXML_CLASS Stream
+class RT_DECL_CLASS Stream
 {
 public:
@@ -236,5 +217,5 @@
  * useful functionality.
  */
-class VBOXXML_CLASS Input : virtual public Stream
+class RT_DECL_CLASS Input : virtual public Stream
 {
 public:
@@ -254,5 +235,5 @@
  *
  */
-class VBOXXML_CLASS Output : virtual public Stream
+class RT_DECL_CLASS Output : virtual public Stream
 {
 public:
@@ -291,5 +272,5 @@
  * when reading from or writing to such File instances.
  */
-class VBOXXML_CLASS File : public Input, public Output
+class RT_DECL_CLASS File : public Input, public Output
 {
 public:
@@ -374,5 +355,5 @@
  * memory buffer.
  */
-class VBOXXML_CLASS MemoryBuf : public Input
+class RT_DECL_CLASS MemoryBuf : public Input
 {
 public:
@@ -409,5 +390,5 @@
 typedef FNEXTERNALENTITYLOADER *PFNEXTERNALENTITYLOADER;
 
-class VBOXXML_CLASS GlobalLock
+class RT_DECL_CLASS GlobalLock
 {
 public:
@@ -454,5 +435,5 @@
 class ContentNode;
 
-class VBOXXML_CLASS Node
+class RT_DECL_CLASS Node
 {
 public:
@@ -488,5 +469,5 @@
 };
 
-class VBOXXML_CLASS ElementNode : public Node
+class RT_DECL_CLASS ElementNode : public Node
 {
 public:
@@ -516,5 +497,5 @@
 };
 
-class VBOXXML_CLASS ContentNode : public Node
+class RT_DECL_CLASS ContentNode : public Node
 {
 public:
@@ -529,5 +510,5 @@
 };
 
-class VBOXXML_CLASS AttributeNode : public Node
+class RT_DECL_CLASS AttributeNode : public Node
 {
 public:
@@ -547,5 +528,5 @@
  */
 
-class VBOXXML_CLASS NodesLoop
+class RT_DECL_CLASS NodesLoop
 {
 public:
@@ -565,5 +546,5 @@
  */
 
-class VBOXXML_CLASS Document
+class RT_DECL_CLASS Document
 {
 public:
@@ -594,5 +575,5 @@
  */
 
-class VBOXXML_CLASS XmlParserBase
+class RT_DECL_CLASS XmlParserBase
 {
 protected:
@@ -608,5 +589,5 @@
  */
 
-class VBOXXML_CLASS XmlFileParser : public XmlParserBase
+class RT_DECL_CLASS XmlFileParser : public XmlParserBase
 {
 public:
@@ -630,5 +611,5 @@
  */
 
-class VBOXXML_CLASS XmlFileWriter
+class RT_DECL_CLASS XmlFileWriter
 {
 public:
