Squashed 'third_party/boostorg/serialization/' content from commit 738695b

Change-Id: I48528198ad1f62b90288d249eb2243d4db02fd5d
git-subtree-dir: third_party/boostorg/serialization
git-subtree-split: 738695b70733f9d592a570fb17a505d6a029b48a
diff --git a/example/demo_pimpl_A.hpp b/example/demo_pimpl_A.hpp
new file mode 100644
index 0000000..8697de8
--- /dev/null
+++ b/example/demo_pimpl_A.hpp
@@ -0,0 +1,24 @@
+#ifndef BOOST_SERIALIZATION_EXAMPLE_DEMO_PIMPL_A_HPP
+#define BOOST_SERIALIZATION_EXAMPLE_DEMO_PIMPL_A_HPP
+
+/////////1/////////2/////////3/////////4/////////5/////////6/////////7/////////8
+// demo_pimpl_A.hpp
+
+// (C) Copyright 2002 Robert Ramey - http://www.rrsd.com . 
+// Use, modification and distribution is subject to the Boost Software
+// License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at
+// http://www.boost.org/LICENSE_1_0.txt)
+
+// class whose declaration is hidden by a pointer
+struct B;
+
+struct A {
+    // class a contains a pointer to a "hidden" declaration
+    B *pimpl;
+    template<class Archive>
+    void serialize(Archive & ar, const unsigned int file_version);
+    A();
+    ~A();
+};
+
+#endif // BOOST_SERIALIZATION_EXAMPLE_DEMO_PIMPL_A_HPP