Fix missing includes

This commit is contained in:
proller 2017-06-20 14:32:45 +03:00 committed by alexey-milovidov
parent 5fd6d75fbf
commit 9c7d30e0df
5 changed files with 44 additions and 2 deletions

View File

@ -263,6 +263,14 @@ struct StringRefHash : CRC32Hash {};
#else #else
struct CRC32Hash
{
size_t operator() (StringRef x) const
{
throw std::logic_error{"Not implemented CRC32Hash without SSE"};
};
};
struct StringRefHash : StringRefHash64 {}; struct StringRefHash : StringRefHash64 {};
#endif #endif

View File

@ -1,6 +1,7 @@
#pragma once #pragma once
#include <Interpreters/IInterpreter.h> #include <Interpreters/IInterpreter.h>
#include <Parsers/IAST.h>
namespace DB namespace DB
{ {

View File

@ -1,5 +1,6 @@
#pragma once #pragma once
#include <iterator>
namespace ext namespace ext
{ {

View File

@ -1,5 +1,7 @@
#pragma once #pragma once
#include <utility>
namespace ext namespace ext
{ {
/// \brief Identity function for use with other algorithms as a pass-through. /// \brief Identity function for use with other algorithms as a pass-through.

View File

@ -3,12 +3,42 @@
# Finds missing #include <...> # Finds missing #include <...>
# prints compile time, number of includes, use with sort: ./check_include.sh 2>&1 | sort -rk3 # prints compile time, number of includes, use with sort: ./check_include.sh 2>&1 | sort -rk3
pwd=`pwd` pwd=`pwd`
inc="-I. -I./contrib/libdivide -I./contrib/libre2 -I./build/contrib/libre2 -I./contrib/libfarmhash -I./contrib/libmetrohash/src -I./contrib/libdouble-conversion -I./contrib/libcityhash/include -I./contrib/libzookeeper/include -I./contrib/libtcmalloc/include -I./build/contrib/libzlib-ng -I./contrib/libzlib-ng -I./contrib/libpoco/MongoDB/include -I./contrib/libpoco/XML/include -I./contrib/libpoco/Crypto/include -I./contrib/libpoco/Data/ODBC/include -I./contrib/libpoco/Data/include -I./contrib/libpoco/Net/include -I./contrib/libpoco/Util/include -I./contrib/libpoco/Foundation/include -I./contrib/libboost/boost_1_62_0 -I./libs/libmysqlxx/include -I./libs/libcommon/include -I./build/libs/libcommon/include -I./dbms/src -I./build/dbms/src -I./libs/libpocoext/include -I./libs/libzkutil/include -I./libs/libdaemon/include" inc="-I. \
-I./contrib/libdivide \
-I./contrib/libre2 \
-I./build/contrib/libre2 \
-I./contrib/libfarmhash \
-I./contrib/libmetrohash/src \
-I./contrib/libdouble-conversion \
-I./contrib/libcityhash/include \
-I./contrib/libzookeeper/include \
-I./contrib/libtcmalloc/include \
-I./build/contrib/libzlib-ng \
-I./contrib/libzlib-ng \
-I./contrib/libpoco/MongoDB/include \
-I./contrib/libpoco/XML/include \
-I./contrib/libpoco/Crypto/include \
-I./contrib/libpoco/Data/ODBC/include \
-I./contrib/libpoco/Data/include \
-I./contrib/libpoco/Net/include \
-I./contrib/libpoco/Util/include \
-I./contrib/libpoco/Foundation/include \
-I./contrib/libboost/boost_1_62_0 \
-I./contrib/libbtrie/include \
-I./libs/libmysqlxx/include \
-I./libs/libcommon/include \
-I./build/libs/libcommon/include \
-I./libs/libpocoext/include \
-I./libs/libzkutil/include \
-I./libs/libdaemon/include \
-I./dbms/src \
-I./build/dbms/src"
if [ -z $1 ]; then if [ -z $1 ]; then
cd .. cd ..
find dbms libs utils -name *.h -exec sh $pwd/$0 {} \; ; find dbms libs utils -name *.h -exec sh $pwd/$0 {} \; ;
else else
echo -n "$1 " echo -n "$1 "
echo -n `grep "#include" $1| wc -l` " " echo -n `grep "#include" $1| wc -l` " "
echo -e "#include <$1> \n int main() {return 0;}" | bash -c "TIMEFORMAT='%3R'; time g++-6 -c -std=gnu++1y $inc -x c++ -" echo -e "#include <$1> \n int main() {return 0;}" | bash -c "TIMEFORMAT='%3R'; time g++-6 -c -std=gnu++1z $inc -x c++ -"
fi fi