Lines Matching refs:Promotion
203 typedef typename ArithmeticPromotion<T>::type Promotion; \
207 if (IsIntegerArithmeticSafe<Promotion, T, T>::value) \
208 return CheckedNumeric<Promotion>( \
212 T result = Checked##NAME(static_cast<Promotion>(lhs.ValueUnsafe()), \
213 static_cast<Promotion>(rhs.ValueUnsafe()), \
215 return CheckedNumeric<Promotion>( \
230 typedef typename ArithmeticPromotion<T, Src>::type Promotion; \
231 if (IsIntegerArithmeticSafe<Promotion, T, Src>::value) \
232 return CheckedNumeric<Promotion>( \
235 return CheckedNumeric<Promotion>::cast(lhs) \
236 OP CheckedNumeric<Promotion>::cast(rhs); \
242 typedef typename ArithmeticPromotion<T, Src>::type Promotion; \
243 if (IsIntegerArithmeticSafe<Promotion, T, Src>::value) \
244 return CheckedNumeric<Promotion>(lhs.ValueUnsafe() OP rhs, \
246 return CheckedNumeric<Promotion>::cast(lhs) \
247 OP CheckedNumeric<Promotion>::cast(rhs); \
253 typedef typename ArithmeticPromotion<T, Src>::type Promotion; \
254 if (IsIntegerArithmeticSafe<Promotion, T, Src>::value) \
255 return CheckedNumeric<Promotion>(lhs OP rhs.ValueUnsafe(), \
257 return CheckedNumeric<Promotion>::cast(lhs) \
258 OP CheckedNumeric<Promotion>::cast(rhs); \