#### 5.1.1.2 Traditional Other Types ¶

If the upper bound of a subrange is 0 and the lower bound is positive, the type is a floating point type, and the lower bound of the subrange indicates the number of bytes in the type:

    .stabs "float:t12=r1;4;0;",128,0,0,0
    .stabs "double:t13=r1;8;0;",128,0,0,0

However, GCC writes `long double` the same way it writes `double`, so there is no way to distinguish.

    .stabs "long double:t14=r1;8;0;",128,0,0,0

Complex types are defined the same way as floating-point types; there is no way to distinguish a single-precision complex from a double-precision floating-point type.

The C `void` type is defined as itself:

    .stabs "void:t15=15",128,0,0,0

I’m not sure how a boolean type is represented.