<span class="hljs-comment">// Primitive types:</span>
<span class="hljs-type">char8_t</span> test;
<span class="hljs-type">char16_t</span> test;
<span class="hljs-type">char32_t</span> test;
<span class="hljs-type">char8_t</span> test;
<span class="hljs-type">int8_t</span> test;
<span class="hljs-type">int16_t</span> test;
<span class="hljs-type">int32_t</span> test;
<span class="hljs-type">int64_t</span> test;
<span class="hljs-type">int_fast8_t</span> test;
<span class="hljs-type">int_fast16_t</span> test;
<span class="hljs-type">int_fast32_t</span> test;
<span class="hljs-type">int_fast64_t</span> test;
<span class="hljs-type">int_least8_t</span> test;
<span class="hljs-type">int_least16_t</span> test;
<span class="hljs-type">int_least32_t</span> test;
<span class="hljs-type">int_least64_t</span> test;
<span class="hljs-type">intmax_t</span> test;
<span class="hljs-type">intptr_t</span> test;
<span class="hljs-type">uint8_t</span> test;
<span class="hljs-type">uint16_t</span> test;
<span class="hljs-type">uint32_t</span> test;
<span class="hljs-type">uint64_t</span> test;
<span class="hljs-type">uint_fast8_t</span> test;
<span class="hljs-type">uint_fast16_t</span> test;
<span class="hljs-type">uint_fast32_t</span> test;
<span class="hljs-type">uint_fast64_t</span> test;
<span class="hljs-type">uint_least8_t</span> test;
<span class="hljs-type">uint_least16_t</span> test;
<span class="hljs-type">uint_least32_t</span> test;
<span class="hljs-type">uint_least64_t</span> test;
<span class="hljs-type">uintmax_t</span> test;
<span class="hljs-type">uintptr_t</span> test;
<span class="hljs-type">max_align_t</span> test;
<span class="hljs-type">mbstate_t</span> test;
<span class="hljs-type">nullptr_t</span> test;
<span class="hljs-type">ptrdiff_t</span> test;
<span class="hljs-type">size_t</span> test;
<span class="hljs-type">wchar_t</span> test;
<span class="hljs-type">wctrans_t</span> test;
<span class="hljs-type">wctype_t</span> test;
<span class="hljs-type">wint_t</span> test;
  
<span class="hljs-comment">// Non-primitive type with &#x27;_t&#x27;:</span>
<span class="hljs-keyword">struct</span> <span class="hljs-title class_">position_tag</span>;
<span class="hljs-keyword">class</span> <span class="hljs-title class_">_thread</span>;

<span class="hljs-comment">// Type traits and helpers types:</span>
<span class="hljs-keyword">template</span>&lt;<span class="hljs-keyword">class</span> <span class="hljs-title class_">T</span>&gt;
<span class="hljs-keyword">using</span> <span class="hljs-type">decay_t</span> = <span class="hljs-keyword">typename</span> decay&lt;T&gt;::type;

<span class="hljs-keyword">template</span>&lt;<span class="hljs-keyword">typename</span> T&gt;
<span class="hljs-keyword">struct</span> <span class="hljs-title class_">X</span> {
  <span class="hljs-keyword">using</span> <span class="hljs-type">decayed_t</span> = <span class="hljs-keyword">typename</span> std::<span class="hljs-type">decay_t</span>&lt;X&lt;T&gt;&gt;;
};

X&lt;<span class="hljs-type">int</span>&amp;&gt;::<span class="hljs-type">decayed_t</span> x;