office-gobmx/external/firebird/c++17.patch
Julien Nabet 86744f0399 firebird: update to 3.0.7
This tries to get rid of a lot of cruft from older builds and it
also aims to build as much as possible on Windows.

The firebird-cygwin-msvc-warnings.patch should be optional. It
gets rid of various compiler warnings on Windows, either by
disableing or fixing them:
- fix: D9002 - ignoring unknown option '-fno-rtti'
- fix: D9024 - unrecognized source file type <filename>, object
  file assumed
- ign: C4291 - <declaration>: no matching operator delete found;
  memory will not be freed if initialization throws an exception
- ign: C4477 - <function>: format string <string> requires an
  argument of type <type>, but variadic argument number has
  type <type>

And I explicitly got rid of the "win32" handling and simply use
arch depending patches on Windows, which strips additional stuff.

sberg adds:  I have no idea how in an upstream macOS build the empbuild
executible in gen/examples should now find @rpath/lib/libfbclient.dylib, as it
does not have an RPATH set.  So add an appropriate one in
external/firebird/firebird-macosx.patch.1's patch of
builds/posix/Makefile.in.examples (which needs to know whether we do a Debug or
a Release build; an attempt of using firebird's $(IsDeveloper) for that caused
other failures, see bca0dc97bf "Revert
'external/firebird: Pass --enable-developer into configure'", so use LO's
$(ENABLE_DEBUG) and rely on that being exported from LO's make into firebird's
make).  Also, the fbclient and Engine12 dylibs now have RPATHs set which we do
not need in LO (where we still stick to our general use of @loader_path), so
drop them in external/firebird/ExternalProject_firebird.mk (even though leaving
them in should be harmless).

Change-Id: Id34bb88900d15f89adda03e34af2ac3d4f6aa085
Reviewed-on: https://gerrit.libreoffice.org/c/core/+/105440
Tested-by: Jenkins
Reviewed-by: Stephan Bergmann <sbergman@redhat.com>
2020-11-26 15:06:59 +01:00

311 lines
9.8 KiB
Diff

--- src/common/DynamicStrings.cpp
+++ src/common/DynamicStrings.cpp
@@ -37,7 +37,7 @@
namespace Firebird {
-unsigned makeDynamicStrings(unsigned length, ISC_STATUS* const dst, const ISC_STATUS* const src) throw(BadAlloc)
+unsigned makeDynamicStrings(unsigned length, ISC_STATUS* const dst, const ISC_STATUS* const src)
{
const ISC_STATUS* end = &src[length];
--- src/common/DynamicStrings.h
+++ src/common/DynamicStrings.h
@@ -34,7 +34,7 @@
namespace Firebird {
-unsigned makeDynamicStrings(unsigned len, ISC_STATUS* const dst, const ISC_STATUS* const src) throw(BadAlloc);
+unsigned makeDynamicStrings(unsigned len, ISC_STATUS* const dst, const ISC_STATUS* const src);
char* findDynamicStrings(unsigned len, ISC_STATUS* ptr) throw();
} // namespace Firebird
--- src/common/StatusArg.cpp
+++ src/common/StatusArg.cpp
@@ -53,7 +53,7 @@
namespace Arg {
-Base::Base(ISC_STATUS k, ISC_STATUS c) throw(Firebird::BadAlloc) :
+Base::Base(ISC_STATUS k, ISC_STATUS c) :
implementation(FB_NEW_POOL(*getDefaultMemoryPool()) ImplBase(k, c))
{
}
@@ -94,28 +94,28 @@
assign(ex);
}
-StatusVector::StatusVector(ISC_STATUS k, ISC_STATUS c) throw(Firebird::BadAlloc) :
+StatusVector::StatusVector(ISC_STATUS k, ISC_STATUS c) :
Base(FB_NEW_POOL(*getDefaultMemoryPool()) ImplStatusVector(k, c))
{
operator<<(*(static_cast<Base*>(this)));
}
-StatusVector::StatusVector(const ISC_STATUS* s) throw(Firebird::BadAlloc) :
+StatusVector::StatusVector(const ISC_STATUS* s) :
Base(FB_NEW_POOL(*getDefaultMemoryPool()) ImplStatusVector(s))
{
}
-StatusVector::StatusVector(const IStatus* s) throw(Firebird::BadAlloc) :
+StatusVector::StatusVector(const IStatus* s) :
Base(FB_NEW_POOL(*getDefaultMemoryPool()) ImplStatusVector(s))
{
}
-StatusVector::StatusVector(const Exception& ex) throw(Firebird::BadAlloc) :
+StatusVector::StatusVector(const Exception& ex) :
Base(FB_NEW_POOL(*getDefaultMemoryPool()) ImplStatusVector(ex))
{
}
-StatusVector::StatusVector() throw(Firebird::BadAlloc) :
+StatusVector::StatusVector() :
Base(FB_NEW_POOL(*getDefaultMemoryPool()) ImplStatusVector(0, 0))
{
}
--- src/common/StatusArg.h
+++ src/common/StatusArg.h
@@ -87,7 +87,7 @@
virtual ~ImplBase() { }
};
- Base(ISC_STATUS k, ISC_STATUS c) throw(Firebird::BadAlloc);
+ Base(ISC_STATUS k, ISC_STATUS c);
explicit Base(ImplBase* i) throw() : implementation(i) { }
~Base() throw() { delete implementation; }
@@ -144,13 +144,13 @@
explicit ImplStatusVector(const Exception& ex) throw();
};
- StatusVector(ISC_STATUS k, ISC_STATUS v) throw(Firebird::BadAlloc);
+ StatusVector(ISC_STATUS k, ISC_STATUS v);
public:
- explicit StatusVector(const ISC_STATUS* s) throw(Firebird::BadAlloc);
- explicit StatusVector(const IStatus* s) throw(Firebird::BadAlloc);
- explicit StatusVector(const Exception& ex) throw(Firebird::BadAlloc);
- StatusVector() throw(Firebird::BadAlloc);
+ explicit StatusVector(const ISC_STATUS* s);
+ explicit StatusVector(const IStatus* s);
+ explicit StatusVector(const Exception& ex);
+ StatusVector();
~StatusVector() { }
const ISC_STATUS* value() const throw() { return implementation->value(); }
--- src/common/classes/alloc.cpp
+++ src/common/classes/alloc.cpp
@@ -1635,7 +1635,7 @@
~FreeObjects();
- FreeObjPtr allocateBlock(MemPool* pool, size_t from, size_t& size) throw (OOM_EXCEPTION)
+ FreeObjPtr allocateBlock(MemPool* pool, size_t from, size_t& size)
{
size_t full_size = size + (from ? 0 : ListBuilder::MEM_OVERHEAD);
if (full_size > Limits::TOP_LIMIT)
@@ -1705,7 +1705,7 @@
ListBuilder listBuilder;
Extent* currentExtent;
- MemBlock* newBlock(MemPool* pool, unsigned slot) throw (OOM_EXCEPTION);
+ MemBlock* newBlock(MemPool* pool, unsigned slot);
};
@@ -1787,26 +1787,26 @@
};
#endif // VALIDATE_POOL
- MemBlock* alloc(size_t from, size_t& length, bool flagRedirect) throw (OOM_EXCEPTION);
+ MemBlock* alloc(size_t from, size_t& length, bool flagRedirect);
void releaseBlock(MemBlock *block, bool flagDecr) throw ();
public:
- void* allocate(size_t size ALLOC_PARAMS) throw (OOM_EXCEPTION);
- MemBlock* allocate2(size_t from, size_t& size ALLOC_PARAMS) throw (OOM_EXCEPTION);
+ void* allocate(size_t size ALLOC_PARAMS);
+ MemBlock* allocate2(size_t from, size_t& size ALLOC_PARAMS);
private:
- virtual void memoryIsExhausted(void) throw (OOM_EXCEPTION);
- void* allocRaw(size_t length) throw (OOM_EXCEPTION);
+ virtual void memoryIsExhausted(void);
+ void* allocRaw(size_t length);
static void releaseMemory(void* block, bool flagExtent) throw ();
static void releaseRaw(bool destroying, void *block, size_t size, bool use_cache = true) throw ();
- void* getExtent(size_t from, size_t& to) throw (OOM_EXCEPTION);
+ void* getExtent(size_t from, size_t& to);
public:
static void releaseExtent(bool destroying, void *block, size_t size, MemPool* pool) throw ();
// pass desired size, return actual extent size
template <class Extent>
- void newExtent(size_t& size, Extent** linkedList) throw (OOM_EXCEPTION);
+ void newExtent(size_t& size, Extent** linkedList);
private:
#ifdef USE_VALGRIND
@@ -1942,7 +1942,7 @@
template <class ListBuilder, class Limits>
-MemBlock* FreeObjects<ListBuilder, Limits>::newBlock(MemPool* pool, unsigned slot) throw (OOM_EXCEPTION)
+MemBlock* FreeObjects<ListBuilder, Limits>::newBlock(MemPool* pool, unsigned slot)
{
size_t size = Limits::getSize(slot);
@@ -2151,7 +2151,7 @@
}
template <class Extent>
-void MemPool::newExtent(size_t& size, Extent** linkedList) throw(OOM_EXCEPTION)
+void MemPool::newExtent(size_t& size, Extent** linkedList)
{
// No large enough block found. We need to extend the pool
void* memory = NULL;
@@ -2216,7 +2216,7 @@
pool->setStatsGroup(newStats);
}
-MemBlock* MemPool::alloc(size_t from, size_t& length, bool flagRedirect) throw (OOM_EXCEPTION)
+MemBlock* MemPool::alloc(size_t from, size_t& length, bool flagRedirect)
{
MutexEnsureUnlock guard(mutex, "MemPool::alloc");
guard.enter();
@@ -2275,7 +2275,7 @@
#ifdef DEBUG_GDS_ALLOC
, const char* fileName, int line
#endif
-) throw (OOM_EXCEPTION)
+)
{
size_t length = from ? size : ROUNDUP(size + VALGRIND_REDZONE, roundingSize) + GUARD_BYTES;
MemBlock* memory = alloc(from, length, true);
@@ -2305,7 +2305,7 @@
}
-void* MemPool::allocate(size_t size ALLOC_PARAMS) throw (OOM_EXCEPTION)
+void* MemPool::allocate(size_t size ALLOC_PARAMS)
{
#ifdef VALIDATE_POOL
MutexLockGuard guard(mutex, "MemPool::allocate");
@@ -2445,12 +2445,12 @@
releaseRaw(pool_destroying, hunk, hunk->length, false);
}
-void MemPool::memoryIsExhausted(void) throw (OOM_EXCEPTION)
+void MemPool::memoryIsExhausted(void)
{
Firebird::BadAlloc::raise();
}
-void* MemPool::allocRaw(size_t size) throw (OOM_EXCEPTION)
+void* MemPool::allocRaw(size_t size)
{
#ifndef USE_VALGRIND
if (size == DEFAULT_ALLOCATION)
@@ -2530,7 +2530,7 @@
}
-void* MemPool::getExtent(size_t from, size_t& to) throw(OOM_EXCEPTION) // pass desired minimum size, return actual extent size
+void* MemPool::getExtent(size_t from, size_t& to) // pass desired minimum size, return actual extent size
{
#ifdef VALIDATE_POOL
MutexLockGuard guard(mutex, "MemPool::getExtent");
@@ -2653,7 +2653,7 @@
deallocate(block);
}
-void* MemoryPool::calloc(size_t size ALLOC_PARAMS) throw (OOM_EXCEPTION)
+void* MemoryPool::calloc(size_t size ALLOC_PARAMS)
{
void* block = allocate(size ALLOC_PASS_ARGS);
memset(block, 0, size);
@@ -2800,7 +2800,7 @@
}
#ifdef LIBC_CALLS_NEW
-void* MemoryPool::globalAlloc(size_t s ALLOC_PARAMS) throw (OOM_EXCEPTION)
+void* MemoryPool::globalAlloc(size_t s ALLOC_PARAMS)
{
if (!defaultMemoryManager)
{
@@ -2818,7 +2818,7 @@
MemPool::globalFree(block);
}
-void* MemoryPool::allocate(size_t size ALLOC_PARAMS) throw (OOM_EXCEPTION)
+void* MemoryPool::allocate(size_t size ALLOC_PARAMS)
{
return pool->allocate(size ALLOC_PASS_ARGS);
}
@@ -2876,11 +2876,11 @@
// in a case when we actually need "new" only with file/line information
// this version should be also present as a pair for "delete".
#ifdef DEBUG_GDS_ALLOC
-void* operator new(size_t s) throw (OOM_EXCEPTION)
+void* operator new(size_t s)
{
return MemoryPool::globalAlloc(s ALLOC_ARGS);
}
-void* operator new[](size_t s) throw (OOM_EXCEPTION)
+void* operator new[](size_t s)
{
return MemoryPool::globalAlloc(s ALLOC_ARGS);
}
--- src/common/classes/alloc.h
+++ src/common/classes/alloc.h
@@ -186,18 +186,18 @@
#define ALLOC_PASS_ARGS
#endif // DEBUG_GDS_ALLOC
- void* calloc(size_t size ALLOC_PARAMS) throw (OOM_EXCEPTION);
+ void* calloc(size_t size ALLOC_PARAMS);
#ifdef LIBC_CALLS_NEW
- static void* globalAlloc(size_t s ALLOC_PARAMS) throw (OOM_EXCEPTION);
+ static void* globalAlloc(size_t s ALLOC_PARAMS);
#else
- static void* globalAlloc(size_t s ALLOC_PARAMS) throw (OOM_EXCEPTION)
+ static void* globalAlloc(size_t s ALLOC_PARAMS)
{
return defaultMemoryManager->allocate(s ALLOC_PASS_ARGS);
}
#endif // LIBC_CALLS_NEW
- void* allocate(size_t size ALLOC_PARAMS) throw (OOM_EXCEPTION);
+ void* allocate(size_t size ALLOC_PARAMS);
static void globalFree(void* mem) throw ();
void deallocate(void* mem) throw ();
@@ -289,20 +289,20 @@
// operators new and delete
-inline void* operator new(size_t s ALLOC_PARAMS) throw (OOM_EXCEPTION)
+inline void* operator new(size_t s ALLOC_PARAMS)
{
return MemoryPool::globalAlloc(s ALLOC_PASS_ARGS);
}
-inline void* operator new[](size_t s ALLOC_PARAMS) throw (OOM_EXCEPTION)
+inline void* operator new[](size_t s ALLOC_PARAMS)
{
return MemoryPool::globalAlloc(s ALLOC_PASS_ARGS);
}
-inline void* operator new(size_t s, Firebird::MemoryPool& pool ALLOC_PARAMS) throw (OOM_EXCEPTION)
+inline void* operator new(size_t s, Firebird::MemoryPool& pool ALLOC_PARAMS)
{
return pool.allocate(s ALLOC_PASS_ARGS);
}
-inline void* operator new[](size_t s, Firebird::MemoryPool& pool ALLOC_PARAMS) throw (OOM_EXCEPTION)
+inline void* operator new[](size_t s, Firebird::MemoryPool& pool ALLOC_PARAMS)
{
return pool.allocate(s ALLOC_PASS_ARGS);
}