I originally encountered this bug, when I tried using the homebrew version of rhash to verify a file, previously renamed by rhash (1.3.4). I have since tried building from source with exactly the same result.
gcc --version
Configured with: --prefix=/Applications/Xcode.app/Contents/Developer/usr --with-gxx-include-dir=/Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.12.sdk/usr/include/c++/4.2.1
Apple LLVM version 8.0.0 (clang-800.0.42.1)
Target: x86_64-apple-darwin16.1.0
Thread model: posix
InstalledDir: /Applications/Xcode.app/Contents/Developer/Toolchains/XcodeDefault.xctoolchain/usr/bin
I can without problem generate hashes, e.g. rhash -e foo works as expected, but checking the same, renamed file with rhash -k terminates with an illegal instruction.
It seems like llvm bug, needs investigation.
Thanks for reporting such twisted (for investigation) bug.
The bug is also reproduced with clang on Linux.
The fix is now in the master branch, commit 2b60b175353f377afb659dde5b6df9b1c00a69c0.
Fixed in v1.3.5.