statgen / savvy

Interface to various variant calling formats.
Mozilla Public License 2.0
26 stars 5 forks source link

Fix arm64 build failure caused by char being unsigned #21

Closed pettyalex closed 2 years ago

pettyalex commented 2 years ago

Mark typed_value::off_data a signed char, allowing templates to work on arm64 where char is unsigned.

Without this, savvy & things that depend and it cannot build or run on arm64 because the templates that are supposed to operate on these don't work.

This fixes https://github.com/statgen/savvy/issues/20

pettyalex commented 2 years ago

I have not yet actually had a chance to validate that this fixed the arm64 build, because a sourceforge outage means i can't cget build right now, and savvy loads xz from sourceforge

pettyalex commented 2 years ago

OK, now this is building on arm64 on MacOS. I'll validate on Linux too.

What happens if that enable_if is removed and type_code is callable with all types? It looks like it would still be able to correctly try and fit things in int8, 16, 32, etc, and fall back on int64 if it can't.

pettyalex commented 2 years ago

Closing, there was a commit on master that fixes this.