Skip to content

Commit 3457d37

Browse files
committed
Fix compilation errors
1 parent cb936f7 commit 3457d37

File tree

2 files changed

+7
-2
lines changed

2 files changed

+7
-2
lines changed

include/kiwi/TemplateUtils.hpp

Lines changed: 6 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -56,7 +56,10 @@ namespace kiwi
5656
};
5757

5858
template<class Ty>
59-
struct SeqMax;
59+
struct SeqMax
60+
{
61+
static constexpr std::ptrdiff_t value = 0;
62+
};
6063

6164
template<std::ptrdiff_t i>
6265
struct SeqMax<seq<i>>
@@ -130,7 +133,7 @@ namespace kiwi
130133
template<class ValTy, class SeqTy>
131134
class Table
132135
{
133-
ValTy table[SeqMax<SeqTy>::value + 1];
136+
std::array<ValTy, SeqMax<SeqTy>::value + 1> table;
134137

135138
template<class ValGetter>
136139
void set(seq<>)
@@ -153,6 +156,7 @@ namespace kiwi
153156

154157
constexpr ValTy operator[](std::ptrdiff_t idx) const
155158
{
159+
if (idx < 0 || (size_t)idx >= table.size()) return ValTy{};
156160
return table[idx];
157161
}
158162
};

src/Combiner.cpp

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -2,6 +2,7 @@
22
#include <iostream>
33
#include <unordered_set>
44
#include <algorithm>
5+
#include <limits>
56

67
#include <kiwi/Utils.h>
78
#include <kiwi/TagUtils.h>

0 commit comments

Comments
 (0)