git.iko.soy/rowtype-yoga/purescript-native
on golang help sign in
C++: use 'int' for any::array indices
fe64592Andy Arvanitis
pcc/runtime/purescript.cc+2−1
@@ -104,7 +104,8 @@ auto any::unthunkVariant(const any& a) -> const any& {
104 return *variant;
104 return *variant;
105}
105}
106
106
107−auto any::operator[](const size_t rhs) const -> const any& {
107+auto any::operator[](const int rhs) const -> const any& {
108+ assert(rhs >= 0);
108 const auto& xs = static_cast<const array&>(*this);
109 const auto& xs = static_cast<const array&>(*this);
109 return xs[rhs];
110 return xs[rhs];
110}
111}
pcc/runtime/purescript.hh+1−1
@@ -346,7 +346,7 @@ class any {
346 return static_cast<T>(rawPointer());
346 return static_cast<T>(rawPointer());
347 }
347 }
348
348
349− auto operator[](const size_t) const -> const any&;
349+ auto operator[](const int) const -> const any&;
350 auto at(const char *) const -> const any&;
350 auto at(const char *) const -> const any&;
351 auto size() const -> size_t;
351 auto size() const -> size_t;
352 auto empty() const -> bool;
352 auto empty() const -> bool;