1
0
mirror of https://github.com/mariadb-corporation/mariadb-columnstore-engine.git synced 2025-07-29 08:21:15 +03:00

MCOL-4839: Fix clang build (#2102)

* Fix clang build

* Extern C returned to plugin_instance

Co-authored-by: Leonid Fedorov <l.fedorov@mail.corp.ru>
This commit is contained in:
Leonid Fedorov
2021-08-23 23:58:56 +03:00
committed by GitHub
parent ea622eec93
commit ef09342d47
59 changed files with 422 additions and 600 deletions

View File

@ -97,13 +97,13 @@ namespace BRM
namespace rowgroup
{
struct Row;
class Row;
};
namespace execplan
{
struct SimpleColumn;
class SimpleColumn;
};

View File

@ -14,14 +14,16 @@
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
MA 02110-1301, USA.
*/
MA 02110-1301, USA.
*/
#ifndef MCS_TSFLOAT128_H_INCLUDED
#define MCS_TSFLOAT128_H_INCLUDED
#include <cfloat>
#include <cctype>
#include <cstdint>
#include <cstring>
#include <string>
#include "mcs_numeric_limits.h"
#ifdef __aarch64__
@ -103,7 +105,7 @@ static const float128_t mcs_fl_one = 1.0, mcs_fl_Zero[] = {0.0, -0.0,};
template<> class numeric_limits<float128_t> {
public:
static constexpr bool is_specialized = true;
static constexpr float128_t max()
static float128_t max()
{
return mcs_ieee854_float128{ .ieee = {0xffffffff,
0xffffffff,
@ -112,7 +114,7 @@ template<> class numeric_limits<float128_t> {
0x7ffe,
0x0}}.value;
}
static constexpr float128_t min()
static float128_t min()
{
return mcs_ieee854_float128{ .ieee = {0x0,
0x0,

View File

@ -14,8 +14,8 @@
You should have received a copy of the GNU General Public License
along with this program; if not, write to the Free Software
Foundation, Inc., 51 Franklin Street, Fifth Floor, Boston,
MA 02110-1301, USA.
*/
MA 02110-1301, USA.
*/
#ifndef MCS_INT128_H_INCLUDED
#define MCS_INT128_H_INCLUDED
@ -40,7 +40,7 @@
src_restrictions, \
clobb) \
::memcpy((dst), (src), sizeof(int128_t));
#elif defined(__GNUC__) && (__GNUC___ > 7)
#elif defined(__GNUC__) && (__GNUC___ > 7) || defined(__clang__)
#define MACRO_VALUE_PTR_128(dst, \
dst_restrictions, \
src, \
@ -114,7 +114,7 @@ template<>
struct is_int128_t<int128_t> {
static const bool value = true;
};
template <typename T>
struct is_uint128_t {
static const bool value = false;
@ -129,7 +129,7 @@ inline int128_t abs(int128_t x)
{
return (x >= 0) ? x : -x;
}
class TSInt128
{
public:
@ -143,6 +143,12 @@ class TSInt128
// Copy ctor
TSInt128(const TSInt128& other): s128Value(other.s128Value) { }
TSInt128& operator=(const TSInt128& other)
{
s128Value = other.s128Value;
return *this;
}
// aligned argument
explicit TSInt128(const int128_t& x) { s128Value = x; }
@ -335,7 +341,7 @@ class TSInt128
int128_t s128Value;
}; // end of class
} //end of namespace datatypes