… | |
… | |
121 | can also be defined before including F<ecb.h>, in which case it will be |
121 | can also be defined before including F<ecb.h>, in which case it will be |
122 | unchanged. |
122 | unchanged. |
123 | |
123 | |
124 | =item ECB_GCC_VERSION (major, minor) |
124 | =item ECB_GCC_VERSION (major, minor) |
125 | |
125 | |
126 | Expands to a true value (suitable for testing in by the preprocessor) |
126 | Expands to a true value (suitable for testing by the preprocessor) if the |
127 | if the compiler used is GNU C and the version is the given version, or |
127 | compiler used is GNU C and the version is the given version, or higher. |
128 | higher. |
|
|
129 | |
128 | |
130 | This macro tries to return false on compilers that claim to be GCC |
129 | This macro tries to return false on compilers that claim to be GCC |
131 | compatible but aren't. |
130 | compatible but aren't. |
132 | |
131 | |
133 | =item ECB_EXTERN_C |
132 | =item ECB_EXTERN_C |
… | |
… | |
152 | |
151 | |
153 | ECB_EXTERN_C_END |
152 | ECB_EXTERN_C_END |
154 | |
153 | |
155 | =item ECB_STDFP |
154 | =item ECB_STDFP |
156 | |
155 | |
157 | If this evaluates to a true value (suitable for testing in by the |
156 | If this evaluates to a true value (suitable for testing by the |
158 | preprocessor), then C<float> and C<double> use IEEE 754 single/binary32 |
157 | preprocessor), then C<float> and C<double> use IEEE 754 single/binary32 |
159 | and double/binary64 representations internally I<and> the endianness of |
158 | and double/binary64 representations internally I<and> the endianness of |
160 | both types match the endianness of C<uint32_t> and C<uint64_t>. |
159 | both types match the endianness of C<uint32_t> and C<uint64_t>. |
161 | |
160 | |
162 | This means you can just copy the bits of a C<float> (or C<double>) to an |
161 | This means you can just copy the bits of a C<float> (or C<double>) to an |