Be strict about constant expressions
The local basis is passed into the local operator kernels as a const reference. That means, its lvalue is not a constant expression. Would we pass it by value, then it's lvalue would be a constant expression (through it's rvalue still would not). Calling a static function of a class throuh an object with the syntax ```c++ lb.size() ``` will evaluate the lvalue of the object. Since that lvalue is not constant when the object was passed by reference, the call cannot be a constant expression. Clang (rightly) complained about this, so write the call as ```c++ LocalBases::size() ``` where a constant expression is required.
parent
6ae036cc
No related branches found
No related tags found
Please register or sign in to comment