MacOS Illegal Instruction when running Tests


Does anyone know the actual hardware that the MacOS VMs run on?

I am building a C++ application for Linux & MacOS with Github Actions. I tried adding a step last night to run my tests. This works fine on the Linux build, but fails with:

/Users/runner/work/_temp/ line 1: 38224 Illegal instruction: 4

I develop locally on a Mac and this code works fine. A Google search turns up some people having trouble with the same illegal instruction when running software on the new M1 Apple Silicon. Hence me wondering what hardware the MacOS VMs actually run?

A failed run log is here: Renamed a lot of variables · spinicist/riesling@eb89042 · GitHub

Hi @spinicist :wave:

You might need to specify a different shell for the workflow?
Check out the shell definitions here and see if this helps resolve the issue: Workflow syntax for GitHub Actions - GitHub Docs


Why do you think a different shell would help with an illegal instruction error?

I specify bash as the shell and all the step does is to run the generated binary - riesling/build.yml at 962e1b3debadce5b8ef6361b9d7b3595e7c8e5fd · spinicist/riesling · GitHub