while this could theoretically work, there are probably a lot of places in the code that dont expect that LTC_FAST_TYPE becomes a char, and vice versa that the char array becomes a LTC_FAST_TYPE array. for example when you index into the array using arr +x + y. so to be sure anything works as expected, all the code paths that use it should be checked.
imo the cleanest solution is the following
```c
#ifdef LTC_FAST
#if __GNUC__ < 4 /* if the compiler does not support gnu extensions, i.e. its neither clang nor gcc */
#error the LTC_FAST hack is only available on compilers that support __attribute__((may_alias)) - disable it for your compiler, and dont worry, it won't buy you much anyway
#else
typedef unsigned int __attribute__((__may_alias__)) LTC_FAST_TYPE;
#endif
#endif /* LTC_FAST */
```