summaryrefslogtreecommitdiffstats
path: root/dbus
diff options
context:
space:
mode:
authortzik@chromium.org <tzik@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-06-27 07:58:40 +0000
committertzik@chromium.org <tzik@chromium.org@0039d316-1c4b-4281-b951-d872f2087c98>2014-06-27 07:58:40 +0000
commit517723a8fca7f1bc427d93e8d753061ec0edcbac (patch)
treeb846a5c0edc85e6ed7e025d0b997b92c49187843 /dbus
parent02ed28a0db9b794b9ef790b89474ce98e5c18bff (diff)
downloadchromium_src-517723a8fca7f1bc427d93e8d753061ec0edcbac.zip
chromium_src-517723a8fca7f1bc427d93e8d753061ec0edcbac.tar.gz
chromium_src-517723a8fca7f1bc427d93e8d753061ec0edcbac.tar.bz2
[DBus] Explicitly instantiate dbus::Property variants
dbus::Property<std::vector<uint8> > isn't instantiated in libdbus in non-ChromeOS build + latest clang. That causes instantiation of the template in dbus_unittests, and causes link failure. BUG= Review URL: https://codereview.chromium.org/354553002 git-svn-id: svn://svn.chromium.org/chrome/trunk/src@280264 0039d316-1c4b-4281-b951-d872f2087c98
Diffstat (limited to 'dbus')
-rw-r--r--dbus/property.h16
1 files changed, 15 insertions, 1 deletions
diff --git a/dbus/property.h b/dbus/property.h
index f6baffc..bfbddbe 100644
--- a/dbus/property.h
+++ b/dbus/property.h
@@ -350,7 +350,7 @@ class CHROME_DBUS_EXPORT PropertySet {
// default value. Specializations for basic D-Bus types, strings, object
// paths and arrays are provided for you.
template <class T>
-class CHROME_DBUS_EXPORT Property : public PropertyBase {
+class Property : public PropertyBase {
public:
Property() {}
@@ -409,67 +409,81 @@ class CHROME_DBUS_EXPORT Property : public PropertyBase {
template <> Property<uint8>::Property();
template <> bool Property<uint8>::PopValueFromReader(MessageReader* reader);
template <> void Property<uint8>::AppendSetValueToWriter(MessageWriter* writer);
+template class CHROME_DBUS_EXPORT Property<uint8>;
template <> Property<bool>::Property();
template <> bool Property<bool>::PopValueFromReader(MessageReader* reader);
template <> void Property<bool>::AppendSetValueToWriter(MessageWriter* writer);
+template class CHROME_DBUS_EXPORT Property<bool>;
template <> Property<int16>::Property();
template <> bool Property<int16>::PopValueFromReader(MessageReader* reader);
template <> void Property<int16>::AppendSetValueToWriter(MessageWriter* writer);
+template class CHROME_DBUS_EXPORT Property<int16>;
template <> Property<uint16>::Property();
template <> bool Property<uint16>::PopValueFromReader(MessageReader* reader);
template <> void Property<uint16>::AppendSetValueToWriter(
MessageWriter* writer);
+template class CHROME_DBUS_EXPORT Property<uint16>;
template <> Property<int32>::Property();
template <> bool Property<int32>::PopValueFromReader(MessageReader* reader);
template <> void Property<int32>::AppendSetValueToWriter(MessageWriter* writer);
+template class CHROME_DBUS_EXPORT Property<int32>;
template <> Property<uint32>::Property();
template <> bool Property<uint32>::PopValueFromReader(MessageReader* reader);
template <> void Property<uint32>::AppendSetValueToWriter(
MessageWriter* writer);
+template class CHROME_DBUS_EXPORT Property<uint32>;
template <> Property<int64>::Property();
template <> bool Property<int64>::PopValueFromReader(MessageReader* reader);
template <> void Property<int64>::AppendSetValueToWriter(MessageWriter* writer);
+template class CHROME_DBUS_EXPORT Property<int64>;
template <> Property<uint64>::Property();
template <> bool Property<uint64>::PopValueFromReader(MessageReader* reader);
template <> void Property<uint64>::AppendSetValueToWriter(
MessageWriter* writer);
+template class CHROME_DBUS_EXPORT Property<uint64>;
template <> Property<double>::Property();
template <> bool Property<double>::PopValueFromReader(MessageReader* reader);
template <> void Property<double>::AppendSetValueToWriter(
MessageWriter* writer);
+template class CHROME_DBUS_EXPORT Property<double>;
template <> bool Property<std::string>::PopValueFromReader(
MessageReader* reader);
template <> void Property<std::string>::AppendSetValueToWriter(
MessageWriter* writer);
+template class CHROME_DBUS_EXPORT Property<std::string>;
template <> bool Property<ObjectPath>::PopValueFromReader(
MessageReader* reader);
template <> void Property<ObjectPath>::AppendSetValueToWriter(
MessageWriter* writer);
+template class CHROME_DBUS_EXPORT Property<ObjectPath>;
template <> bool Property<std::vector<std::string> >::PopValueFromReader(
MessageReader* reader);
template <> void Property<std::vector<std::string> >::AppendSetValueToWriter(
MessageWriter* writer);
+template class CHROME_DBUS_EXPORT Property<std::vector<std::string> >;
template <> bool Property<std::vector<ObjectPath> >::PopValueFromReader(
MessageReader* reader);
template <> void Property<std::vector<ObjectPath> >::AppendSetValueToWriter(
MessageWriter* writer);
+template class CHROME_DBUS_EXPORT Property<std::vector<ObjectPath> >;
template <> bool Property<std::vector<uint8> >::PopValueFromReader(
MessageReader* reader);
template <> void Property<std::vector<uint8> >::AppendSetValueToWriter(
MessageWriter* writer);
+template class CHROME_DBUS_EXPORT Property<std::vector<uint8> >;
} // namespace dbus