You're instantiating for the base class `testing::TestWithParam<Size>` here, because `Mul1` is just a typedef. I'm not sure what happens in this case, but it can't be good. You need to change `Mul1` to a real class that inherits from `testing::TestWithParam<Size>`.