Issue #134: Change 3 methods to not being inlined. They reference the StrPair class, which is not exported, thus creating linker problems with tinyxml2 in a DLL.
diff --git a/tinyxml2.cpp b/tinyxml2.cpp
index 5611614..b890cb1 100755
--- a/tinyxml2.cpp
+++ b/tinyxml2.cpp
@@ -595,6 +595,10 @@
     }

 }

 

+const char* XMLNode::Value() const 

+{

+    return _value.GetStr();

+}

 

 void XMLNode::SetValue( const char* str, bool staticMem )

 {

@@ -1040,6 +1044,17 @@
 }

 

 // --------- XMLAttribute ---------- //

+

+const char* XMLAttribute::Name() const 

+{

+    return _name.GetStr();

+}

+

+const char* XMLAttribute::Value() const 

+{

+    return _value.GetStr();

+}

+

 char* XMLAttribute::ParseDeep( char* p, bool processEntities )

 {

     // Parse using the name rules: bug fix, was using ParseText before

diff --git a/tinyxml2.h b/tinyxml2.h
index 6b29324..52f9180 100755
--- a/tinyxml2.h
+++ b/tinyxml2.h
@@ -643,9 +643,7 @@
     	Text:		the text string

     	@endverbatim

     */

-    const char* Value() const			{

-        return _value.GetStr();

-    }

+    const char* Value() const;

 

     /** Set the Value of an XML node.

     	@sa Value()

@@ -1014,13 +1012,11 @@
     friend class XMLElement;

 public:

     /// The name of the attribute.

-    const char* Name() const {

-        return _name.GetStr();

-    }

+    const char* Name() const;

+

     /// The value of the attribute.

-    const char* Value() const {

-        return _value.GetStr();

-    }

+    const char* Value() const;

+

     /// The next attribute in the list.

     const XMLAttribute* Next() const {

         return _next;