Value->Error
construction does not grade the problem, but the latter construction does?Well, yes, it's true that
Value->Error()
doesn't set the score, but the MathObject answer checker explicitly sets the score to 0 prior to calling your checker, so there is no need for you to return a value if you want to score to be 0 when you produce the error. Just calling Value->Error()
is perfectly fine, and in fact is how all the MathObject answer checkers report errors. So if there were a problem with this, it would have been apparent long ago.