Closed pettyalex closed 2 years ago
Closing, I meant to create this on savvy. Apologies!
SAIGE can't build right now on arm64 because of Savvy's problem.
Actually, I'm going to re-open this to track the update to a fixed version of Savvy
This was resolved by the update to Savvy v2.1.0
SAIGE needs to update to a newer version of savvy to enable arm64 running / building.
From the Savvy issue: Savvy can't build or run on arm64 right now, because char is unsigned on arm64 and this code assumes that char will be signed. The C/C++ specification says nothing about the signed-ness of char by default, so if char is signed varies by compiler / architecture / implementation.
Some quick ways to work around this would be to either specify that these types are signed chars, or to update the template so that it works on unsigned types. I haven't investigated deeper and barely know C++, so I'd appreciate your help with a solution.
Specifically, I see that typed_value.hpp we have some char vectors https://github.com/statgen/savvy/blob/master/include/savvy/typed_value.hpp#L1712
and then expect to be able to operate on them with this template https://github.com/statgen/savvy/blob/master/include/savvy/typed_value.hpp#L125:
Stack trace from build failure on arm64: