summarylogtreecommitdiffstats
path: root/firebird-gcc6.patch
diff options
context:
space:
mode:
Diffstat (limited to 'firebird-gcc6.patch')
-rw-r--r--firebird-gcc6.patch272
1 files changed, 0 insertions, 272 deletions
diff --git a/firebird-gcc6.patch b/firebird-gcc6.patch
deleted file mode 100644
index 1bc69073c13d..000000000000
--- a/firebird-gcc6.patch
+++ /dev/null
@@ -1,272 +0,0 @@
-From acb2b707dae178dd5a7a03eb3e21d885ba971974 Mon Sep 17 00:00:00 2001
-From: AlexPeshkoff <alexander.peshkoff@gmail.com>
-Date: Tue, 23 Jan 2018 19:44:06 +0300
-Subject: [PATCH] Make it build with gcc6, also fixed most annoying warnings
-
----
- builds/posix/prefix.linux | 2 +-
- builds/posix/prefix.linux_amd64 | 2 +-
- builds/posix/prefix.linux_generic | 2 +-
- src/common/classes/alloc.cpp | 11 ++++-
- src/common/classes/alloc.h | 84 ++++++++++++++++++++++-----------------
- src/include/fb_blk.h | 17 ++++----
- src/jrd/gdsassert.h | 2 +-
- 7 files changed, 68 insertions(+), 52 deletions(-)
-
-diff --git a/builds/posix/prefix.linux b/builds/posix/prefix.linux
-index 61f01813e4..b37373215e 100644
---- a/builds/posix/prefix.linux
-+++ b/builds/posix/prefix.linux
-@@ -18,7 +18,7 @@
- #
- # 2 Oct 2002, Nickolay Samofatov - Major cleanup
-
--COMMON_FLAGS=-ggdb -DFB_SEND_FLAGS=MSG_NOSIGNAL -DLINUX -pipe -MMD -fPIC -fmessage-length=0
-+COMMON_FLAGS=-ggdb -DFB_SEND_FLAGS=MSG_NOSIGNAL -DLINUX -pipe -MMD -fPIC -fmessage-length=0 -std=gnu++03 -fno-delete-null-pointer-checks
- OPTIMIZE_FLAGS=-O3 -march=i586 -mtune=i686 -fno-omit-frame-pointer
- WARN_FLAGS=-Wall -Wno-switch -Wno-parentheses -Wno-unknown-pragmas -Wno-unused-variable
-
-diff --git a/builds/posix/prefix.linux_amd64 b/builds/posix/prefix.linux_amd64
-index 8a22b2c2e9..4f20d0aaea 100644
---- a/builds/posix/prefix.linux_amd64
-+++ b/builds/posix/prefix.linux_amd64
-@@ -18,7 +18,7 @@
- #
- # 2 Oct 2002, Nickolay Samofatov - Major cleanup
-
--COMMON_FLAGS=-ggdb -DFB_SEND_FLAGS=MSG_NOSIGNAL -DLINUX -DAMD64 -pipe -MMD -fPIC -fmessage-length=0
-+COMMON_FLAGS=-ggdb -DFB_SEND_FLAGS=MSG_NOSIGNAL -DLINUX -DAMD64 -pipe -MMD -fPIC -fmessage-length=0 -std=gnu++03 -fno-delete-null-pointer-checks
- OPTIMIZE_FLAGS=-O3 -fno-omit-frame-pointer
- WARN_FLAGS=-Wall -Wno-switch -Wno-parentheses -Wno-unknown-pragmas -Wno-unused-variable
- CXXFLAGS:= $(CXXFLAGS) -fno-rtti
-diff --git a/builds/posix/prefix.linux_generic b/builds/posix/prefix.linux_generic
-index 1a25abebff..130f43bcf6 100644
---- a/builds/posix/prefix.linux_generic
-+++ b/builds/posix/prefix.linux_generic
-@@ -18,7 +18,7 @@
- #
- # 2 Oct 2002, Nickolay Samofatov - Major cleanup
-
--COMMON_FLAGS=-DLINUX -pipe -MMD -fPIC -DFB_SEND_FLAGS=MSG_NOSIGNAL -fsigned-char
-+COMMON_FLAGS=-DLINUX -pipe -MMD -fPIC -DFB_SEND_FLAGS=MSG_NOSIGNAL -fsigned-char -std=gnu++03 -fno-delete-null-pointer-checks
-
- PROD_FLAGS=-ggdb -O3 -DNDEBUG $(COMMON_FLAGS)
- DEV_FLAGS=-ggdb -p -Wall -Wno-switch $(COMMON_FLAGS)
-diff --git a/src/common/classes/alloc.cpp b/src/common/classes/alloc.cpp
-index 7a7a76caab..84238cf25c 100644
---- a/src/common/classes/alloc.cpp
-+++ b/src/common/classes/alloc.cpp
-@@ -2199,6 +2199,13 @@ void* MemoryPool::globalAlloc(size_t s) THROW_BAD_ALLOC
- }
- #endif // LIBC_CALLS_NEW
-
-+void* MemoryPool::calloc(size_t size ALLOC_PARAMS)
-+{
-+ void* block = allocate(size ALLOC_PASS_ARGS);
-+ memset(block, 0, size);
-+ return block;
-+}
-+
- #if defined(DEV_BUILD)
- void AutoStorage::ProbeStack() const
- {
-@@ -2224,11 +2231,11 @@ void AutoStorage::ProbeStack() const
-
- void* operator new(size_t s) THROW_BAD_ALLOC
- {
-- return Firebird::MemoryPool::globalAlloc(s);
-+ return Firebird::MemoryPool::globalAlloc(s ALLOC_ARGS);
- }
- void* operator new[](size_t s) THROW_BAD_ALLOC
- {
-- return Firebird::MemoryPool::globalAlloc(s);
-+ return Firebird::MemoryPool::globalAlloc(s ALLOC_ARGS);
- }
-
- void operator delete(void* mem) throw()
-diff --git a/src/common/classes/alloc.h b/src/common/classes/alloc.h
-index 6a27a7b4fb..81a26feffa 100644
---- a/src/common/classes/alloc.h
-+++ b/src/common/classes/alloc.h
-@@ -73,6 +73,16 @@
-
- #endif
-
-+#ifdef DEBUG_GDS_ALLOC
-+#define ALLOC_ARGS , __FILE__, __LINE__
-+#define ALLOC_PARAMS , const char* file, int line
-+#define ALLOC_PASS_ARGS , file, line
-+#else
-+#define ALLOC_ARGS
-+#define ALLOC_PARAMS
-+#define ALLOC_PASS_ARGS
-+#endif // DEBUG_GDS_ALLOC
-+
- namespace Firebird {
-
- // Maximum number of B+ tree pages kept spare for tree allocation
-@@ -395,15 +405,11 @@ class MemoryPool
- // This method is needed when C++ runtime can call
- // redefined by us operator new before initialization of global variables.
- #ifdef LIBC_CALLS_NEW
-- static void* globalAlloc(size_t s) THROW_BAD_ALLOC;
-+ static void* globalAlloc(size_t s ALLOC_PARAMS) THROW_BAD_ALLOC;
- #else // LIBC_CALLS_NEW
-- static void* globalAlloc(size_t s) THROW_BAD_ALLOC
-+ static void* globalAlloc(size_t s ALLOC_PARAMS) THROW_BAD_ALLOC
- {
-- return processMemoryPool->allocate(s
--#ifdef DEBUG_GDS_ALLOC
-- ,__FILE__, __LINE__
--#endif
-- );
-+ return processMemoryPool->allocate(s ALLOC_PASS_ARGS);
- }
- #endif // LIBC_CALLS_NEW
-
-@@ -424,19 +430,7 @@ class MemoryPool
- }
-
- // Allocate zero-initialized block of memory
-- void* calloc(size_t size
--#ifdef DEBUG_GDS_ALLOC
-- , const char* file = NULL, int line = 0
--#endif
-- ) {
-- void* result = allocate(size
--#ifdef DEBUG_GDS_ALLOC
-- , file, line
--#endif
-- );
-- memset(result, 0, size);
-- return result;
-- }
-+ void* calloc(size_t size ALLOC_PARAMS);
-
- // Initialize and finalize global memory pool
- static void init();
-@@ -498,40 +492,58 @@ using Firebird::MemoryPool;
-
- inline static MemoryPool* getDefaultMemoryPool() { return Firebird::MemoryPool::processMemoryPool; }
-
--#if (( ! __GNUC__ ) || ( __GNUC__ < 6 ))
-+// operators new and delete
-
--// Global versions of operators new and delete
- void* operator new(size_t s) THROW_BAD_ALLOC;
- void* operator new[](size_t s) THROW_BAD_ALLOC;
-
--#endif
--
- void operator delete(void* mem) throw();
- void operator delete[](void* mem) throw();
-
-+inline void* operator new(size_t s, Firebird::MemoryPool& pool ALLOC_PARAMS) THROW_BAD_ALLOC
-+{
-+ return pool.allocate(s ALLOC_PASS_ARGS);
-+}
-+inline void* operator new[](size_t s, Firebird::MemoryPool& pool ALLOC_PARAMS) THROW_BAD_ALLOC
-+{
-+ return pool.allocate(s ALLOC_PASS_ARGS);
-+}
-+
-+inline void operator delete(void* mem, Firebird::MemoryPool& pool ALLOC_PARAMS) throw()
-+{
-+ MemoryPool::globalFree(mem);
-+}
-+inline void operator delete[](void* mem, Firebird::MemoryPool& pool ALLOC_PARAMS) throw()
-+{
-+ MemoryPool::globalFree(mem);
-+}
-+
- #ifdef DEBUG_GDS_ALLOC
--inline void* operator new(size_t s, Firebird::MemoryPool& pool, const char* file, int line)
-+
-+inline void* operator new(size_t s ALLOC_PARAMS) THROW_BAD_ALLOC
- {
-- return pool.allocate(s, file, line);
-+ return MemoryPool::globalAlloc(s ALLOC_PASS_ARGS);
- }
--inline void* operator new[](size_t s, Firebird::MemoryPool& pool, const char* file, int line)
-+inline void* operator new[](size_t s ALLOC_PARAMS) THROW_BAD_ALLOC
- {
-- return pool.allocate(s, file, line);
-+ return MemoryPool::globalAlloc(s ALLOC_PASS_ARGS);
- }
--#define FB_NEW(pool) new(pool, __FILE__, __LINE__)
--#define FB_NEW_RPT(pool, count) new(pool, count, __FILE__, __LINE__)
--#else
--inline void* operator new(size_t s, Firebird::MemoryPool& pool)
-+
-+inline void operator delete(void* mem ALLOC_PARAMS) throw()
- {
-- return pool.allocate(s);
-+ MemoryPool::globalFree(mem);
- }
--inline void* operator new[](size_t s, Firebird::MemoryPool& pool)
-+inline void operator delete[](void* mem ALLOC_PARAMS) throw()
- {
-- return pool.allocate(s);
-+ MemoryPool::globalFree(mem);
- }
-+
-+#define FB_NEW(pool) new(pool, __FILE__, __LINE__)
-+#define FB_NEW_RPT(pool, count) new(pool, count, __FILE__, __LINE__)
-+#else // DEBUG_GDS_ALLOC
- #define FB_NEW(pool) new(pool)
- #define FB_NEW_RPT(pool, count) new(pool, count)
--#endif
-+#endif // DEBUG_GDS_ALLOC
-
-
- namespace Firebird
-diff --git a/src/include/fb_blk.h b/src/include/fb_blk.h
-index b57443f3c4..fdd894408b 100644
---- a/src/include/fb_blk.h
-+++ b/src/include/fb_blk.h
-@@ -170,8 +170,8 @@ class pool_alloc : public TypedHandle<BLOCK_TYPE>
-
- private:
- // These operators are off-limits
-- void* operator new(size_t s) { return 0; }
-- void* operator new[](size_t s) { return 0; }
-+ void* operator new(size_t s);
-+ void* operator new[](size_t s);
- };
-
- template<typename RPT, BlockType BLOCK_TYPE = type_unknown>
-@@ -193,16 +193,13 @@ class pool_alloc_rpt : public TypedHandle<BLOCK_TYPE>
-
- private:
- // These operations are not supported on static repeat-base objects
-- void* operator new[](size_t s, MemoryPool& p)
-- { return 0; }
-- void operator delete[](void* mem, MemoryPool& p)
-- { }
-- void operator delete[](void* mem)
-- { }
-+ void* operator new[](size_t s, MemoryPool& p);
-+ void operator delete[](void* mem, MemoryPool& p);
-+ void operator delete[](void* mem);
-
- // These operators are off-limits
-- void* operator new(size_t s) { return 0; }
-- void* operator new[](size_t s) { return 0; }
-+ void* operator new(size_t s);
-+ void* operator new[](size_t s);
- };
-
- #endif // INCLUDE_FB_BLK
-diff --git a/src/jrd/gdsassert.h b/src/jrd/gdsassert.h
-index 9431479fc7..dd90c38823 100644
---- a/src/jrd/gdsassert.h
-+++ b/src/jrd/gdsassert.h
-@@ -28,7 +28,7 @@
- #include <stdlib.h> // abort()
- #include <stdio.h>
-
--#define FB_ASSERT_FAILURE_STRING "Assertion (%s) failure: %s %"LINEFORMAT"\n"
-+#define FB_ASSERT_FAILURE_STRING "Assertion (%s) failure: %s %" LINEFORMAT "\n"
-
- #ifdef SUPERCLIENT
-