aboutsummaryrefslogtreecommitdiffhomepage
diff options
context:
space:
mode:
-rw-r--r--src/CellBuffer.cxx3
-rw-r--r--src/RunStyles.cxx9
2 files changed, 5 insertions, 7 deletions
diff --git a/src/CellBuffer.cxx b/src/CellBuffer.cxx
index 3e9deb934..04486d4c6 100644
--- a/src/CellBuffer.cxx
+++ b/src/CellBuffer.cxx
@@ -21,7 +21,6 @@
#include <optional>
#include <algorithm>
#include <memory>
-#include <type_traits>
#include "ScintillaTypes.h"
@@ -216,7 +215,7 @@ public:
}
void InsertLines(Sci::Line line, const Sci::Position *positions, size_t lines, bool lineStart) override {
const POS lineAsPos = pos_cast(line);
- if constexpr (std::is_convertible_v<Sci::Position *, POS *>) {
+ if constexpr (sizeof(Sci::Position) == sizeof(POS)) {
starts.InsertPartitions(lineAsPos, positions, lines);
} else {
starts.InsertPartitionsWithCast(lineAsPos, positions, lines);
diff --git a/src/RunStyles.cxx b/src/RunStyles.cxx
index 4fac2c2b3..848670ba9 100644
--- a/src/RunStyles.cxx
+++ b/src/RunStyles.cxx
@@ -319,10 +319,9 @@ void RunStyles<DISTANCE, STYLE>::Check() const {
}
}
-// should also cover all possible types underlying ptrdiff_t (Sci::Position)
template class Scintilla::Internal::RunStyles<int, int>;
template class Scintilla::Internal::RunStyles<int, char>;
-template class Scintilla::Internal::RunStyles<long, int>;
-template class Scintilla::Internal::RunStyles<long, char>;
-template class Scintilla::Internal::RunStyles<long long, int>;
-template class Scintilla::Internal::RunStyles<long long, char>;
+#if (PTRDIFF_MAX != INT_MAX) || defined(__HAIKU__)
+template class Scintilla::Internal::RunStyles<ptrdiff_t, int>;
+template class Scintilla::Internal::RunStyles<ptrdiff_t, char>;
+#endif