Got most of the commodity tests working, save multiplication and division.

This commit is contained in:
John Wiegley 2007-04-17 09:11:23 +00:00
parent d650725f37
commit 269a7c6f3b

View file

@ -634,6 +634,13 @@ amount_t& amount_t::operator/=(const amount_t& amt)
goto finish;
}
if (has_commodity() && amt.has_commodity() &&
commodity() != amt.commodity())
throw new amount_error
(std::string("Dividing amounts with different commodities: ") +
(has_commodity() ? commodity_->qualified_symbol : "NONE") + " != " +
(amt.has_commodity() ? amt.commodity_->qualified_symbol : "NONE"));
_dup();
// Increase the value's precision, to capture fractional parts after