mirror of https://github.com/zeldaret/botw.git
IteratorUtil: Forward (non-reference) return types correctly
With auto&, an operator[] that returns a value (and not a reference) would result in the proxy returning a reference to a local temporary, which is UB
This commit is contained in:
parent
bd8b3dc61d
commit
0912686d9b
|
@ -66,8 +66,8 @@ public:
|
|||
: mIndex(index), mContainer(container) {}
|
||||
|
||||
int getIndex() const { return mIndex; }
|
||||
constexpr auto& get() const { return mContainer[mIndex]; }
|
||||
constexpr auto& operator*() const { return get(); }
|
||||
constexpr decltype(auto) get() const { return mContainer[mIndex]; }
|
||||
constexpr decltype(auto) operator*() const { return get(); }
|
||||
constexpr auto* operator->() const { return &get(); }
|
||||
|
||||
private:
|
||||
|
|
Loading…
Reference in New Issue