[Libreoffice-commits] core.git: external/firebird

Stephan Bergmann sbergman at redhat.com
Thu Oct 1 23:37:25 PDT 2015


 external/firebird/UnpackedTarball_firebird.mk |    3 +++
 external/firebird/firebird-c++14.patch        |   14 ++++++++++++++
 2 files changed, 17 insertions(+)

New commits:
commit 01fd60b8fa614f5911d96bb34b40c62ebe1c20fb
Author: Stephan Bergmann <sbergman at redhat.com>
Date:   Thu Oct 1 18:14:56 2015 +0200

    Make external/firebird work with C++14 sized deallocation
    
    ...where firebird's replacements of global new/delete would still be called for
    "new" but not for "delete".  Lets hope that always adding the C++14 size_t
    overloads of operator delete is harmless in all relevant pre-C++14 environments,
    and only causes harmless warnings like -Wimplicit-exception-spec-mismatch in all
    relevant C++14 environments.
    
    (But why does a /library/ replace global new/delete in the first place?)
    
    Change-Id: Ib0b0ad748c6641c07ffed6cec3d6809a1530679f
    Reviewed-on: https://gerrit.libreoffice.org/19081
    Tested-by: Jenkins <ci at libreoffice.org>
    Reviewed-by: Stephan Bergmann <sbergman at redhat.com>

diff --git a/external/firebird/UnpackedTarball_firebird.mk b/external/firebird/UnpackedTarball_firebird.mk
index 79fe914..c42cbd5 100644
--- a/external/firebird/UnpackedTarball_firebird.mk
+++ b/external/firebird/UnpackedTarball_firebird.mk
@@ -11,11 +11,14 @@ $(eval $(call gb_UnpackedTarball_UnpackedTarball,firebird))
 
 $(eval $(call gb_UnpackedTarball_set_tarball,firebird,$(FIREBIRD_TARBALL)))
 
+$(eval $(call gb_UnpackedTarball_set_patchlevel,firebird,0))
+
 $(eval $(call gb_UnpackedTarball_add_patches,firebird,\
 	external/firebird/firebird-rpath.patch.0 \
 	external/firebird/firebird-c++11.patch.1 \
 	external/firebird/firebird-c++11replfn.patch.0 \
         external/firebird/firebird.disable-ib-util-not-found.patch.1 \
+	external/firebird/firebird-c++14.patch \
 ))
 
 ifeq ($(OS)-$(COM),WNT-MSC)
diff --git a/external/firebird/firebird-c++14.patch b/external/firebird/firebird-c++14.patch
new file mode 100644
index 0000000..ad095bf
--- /dev/null
+++ b/external/firebird/firebird-c++14.patch
@@ -0,0 +1,14 @@
+--- src/common/classes/alloc.cpp
++++ src/common/classes/alloc.cpp
+@@ -2121,3 +2121,11 @@
+ {
+ 	Firebird::MemoryPool::globalFree(mem);
+ }
++void operator delete(void* mem, size_t) throw()
++{
++	Firebird::MemoryPool::globalFree(mem);
++}
++void operator delete[](void* mem, size_t) throw()
++{
++	Firebird::MemoryPool::globalFree(mem);
++}


More information about the Libreoffice-commits mailing list