make upgrade/downgrade compatible with fusion in C++0x mode