[/ Copyright 2007 John Maddock. Distributed under the Boost Software License, Version 1.0. (See accompanying file LICENSE_1_0.txt or copy at http://www.boost.org/LICENSE_1_0.txt). ] [section:integral_promotion integral_promotion] template struct integral_promotion { typedef __below type; }; template using integral_promotion_t = typename integral_promotion::type; // C++11 and above __type If integral promotion can be applied to an rvalue of type `T`, then applies integral promotion to `T` and keeps cv-qualifiers of `T`, otherwise leaves `T` unchanged. __std_ref 4.5 except 4.5/3 (integral bit-field). __header ` #include ` or ` #include ` [table Examples [ [Expression] [Result Type]] [[`integral_promotion::type`][`int const`]] [[`integral_promotion::type`][`short&`]] [[`integral_promotion::type`][`int`]] ] [endsect]