Closed
Description
Affected rules
M0-1-3
Description
Similar to, but for global/namespace/member variables:
5ecee7e
Example
#include <cstdio>
template <int t>
class CharBuffer
{
public:
int member[t];
CharBuffer():member{0}{}
};
constexpr int line_length = 1024U;
int foo()
{
CharBuffer<line_length> buffer{};
constexpr std::size_t max_stack_size_usage = 64 * 1024;
static_assert(
(sizeof(buffer) + sizeof(line_length)) <= max_stack_size_usage,
"assert");
return buffer.member[0];
}