more details are following:
std::shared_ptr value1 = std::make_shared(2.5);
std::shared_ptr value2 = std::make_shared(3.7);
std::shared_ptr value3 = std::make_shared(-3.0);
std::shared_ptr value4 = std::make_shared(1.7);
// Perform addition using the operator+
std::shared_ptr<Value> value1_2 = value1 + (value2 * 3.0); # error