openjade: fix build with GCC 4.6

In GCC 4.6 the compiler no longer allows objects of const-qualified type to
be default initialized unless the type has a user-declared default
constructor.

Patch from Gentoo bugzilla: http://bugs.gentoo.org/show_bug.cgi?id=358021

Signed-off-by: Joshua Lock <josh@linux.intel.com>
This commit is contained in:
Joshua Lock 2011-03-31 21:46:42 +01:00
parent b02f8a482d
commit 74aeb0a2ec
2 changed files with 91 additions and 2 deletions

View File

@ -0,0 +1,88 @@
In GCC 4.6 the compiler no longer allows objects of const-qualified type to
be default initialized unless the type has a user-declared default
constructor.
Patch from Gentoo bugzilla: http://bugs.gentoo.org/show_bug.cgi?id=358021
Gentoo Bugzilla description follows:
"If a class or struct has no user-defined default constructor, C++ doesn't
allow you to default construct a const instance of it.
https://bugs.gentoo.org/358021
http://clang.llvm.org/compatibility.html#default_init_const
http://gcc.gnu.org/PR44499"
--- a/jade/TeXFOTBuilder.cxx
+++ b/jade/TeXFOTBuilder.cxx
@@ -88,6 +88,8 @@ public:
value.convertString(nic_.placement);
}
ExtensionFlowObj *copy() const { return new PageFloatFlowObj(*this); }
+ public:
+ PageFloatFlowObj() {}
private:
PageFloatNIC nic_;
StringC name_;
@@ -101,6 +103,8 @@ public:
fotb.endPageFootnote();
}
ExtensionFlowObj *copy() const { return new PageFootnoteFlowObj(*this); }
+ public:
+ PageFootnoteFlowObj() {}
private:
};
//////////////////////////////////////////////////////////////////////
--- a/jade/TransformFOTBuilder.cxx
+++ b/jade/TransformFOTBuilder.cxx
@@ -41,6 +41,7 @@ public:
};
class EntityRefFlowObj : public TransformExtensionFlowObj {
public:
+ EntityRefFlowObj() {}
void atomic(TransformFOTBuilder &fotb, const NodePtr &) const {
fotb.entityRef(name_);
}
@@ -56,6 +57,7 @@ public:
};
class ProcessingInstructionFlowObj : public TransformExtensionFlowObj {
public:
+ ProcessingInstructionFlowObj() {}
void atomic(TransformFOTBuilder &fotb, const NodePtr &) const {
fotb.processingInstruction(data_);
}
@@ -98,6 +100,8 @@ public:
}
}
ExtensionFlowObj *copy() const { return new EmptyElementFlowObj(*this); }
+ public:
+ EmptyElementFlowObj() {}
private:
ElementNIC nic_;
};
@@ -133,6 +137,8 @@ public:
}
}
ExtensionFlowObj *copy() const { return new ElementFlowObj(*this); }
+ public:
+ ElementFlowObj() {}
private:
ElementNIC nic_;
};
@@ -150,6 +156,8 @@ public:
value.convertString(systemId_);
}
ExtensionFlowObj *copy() const { return new EntityFlowObj(*this); }
+ public:
+ EntityFlowObj() {}
private:
StringC systemId_;
};
@@ -174,6 +182,8 @@ public:
}
}
ExtensionFlowObj *copy() const { return new DocumentTypeFlowObj(*this); }
+ public:
+ DocumentTypeFlowObj() {}
private:
DocumentTypeNIC nic_;
};

View File

@ -7,13 +7,14 @@ SECTION = "base"
LICENSE = "BSD"
LIC_FILES_CHKSUM = "file://COPYING;md5=641ff1e4511f0a87044ad42f87cb1045"
PR = "r1"
PR = "r2"
DEPENDS = "opensp-native sgml-common-native"
RDEPENDS_${PN} = "sgml-common"
SRC_URI = "${SOURCEFORGE_MIRROR}/openjade/openjade-${PV}.tar.gz \
file://makefile.patch"
file://makefile.patch \
file://user-declared-default-constructor.patch"
SRC_URI[md5sum] = "7df692e3186109cc00db6825b777201e"
SRC_URI[sha256sum] = "1d2d7996cc94f9b87d0c51cf0e028070ac177c4123ecbfd7ac1cb8d0b7d322d1"