Direct threading, which uses GCC's label-as-value extension, does not work when git is compiled as a 64-bit application. This is because the label-as-value value, which is of type void*, cannot (in a 64-bit application) be converted to a git_uint32 without loosing some of the value, since the uin32 is 32 bits, but the pointer is 64 bits.
Direct threading, which uses GCC's label-as-value extension, does not work when git is compiled as a 64-bit application. This is because the label-as-value value, which is of type void*, cannot (in a 64-bit application) be converted to a git_uint32 without loosing some of the value, since the uin32 is 32 bits, but the pointer is 64 bits.