-
Nils Goroll authored
Please replace this commit with a better solution, if you have one. e1ac5933 brought us the VRBT node color encoded in the lower two bits of pointers. gcc strict aliasing rules (as enabled with -O2 and higher) forbid aliased lvalue access as in the following macro expanded code: (*(uintptr_t *)&(parent)->entry.rbe_parent) &= ~((uintptr_t)3); Until we have a better solution, disable strict aliasing with gcc for targets with any source file using vtree.h. Note that we would want to limit -fno-strict-aliasing to individual compliation units, but automake does not offer a simple and clean way to achieve this: https://www.gnu.org/software/automake/manual/html_node/Per_002dObject-Flags.html