exercism / sml

Exercism exercises in Standard ML.
https://exercism.org/tracks/sml
MIT License
26 stars 33 forks source link

Quickfix for failing github action `ci` #218

Closed rainij closed 1 year ago

rainij commented 1 year ago

The github action ci fails with the following error during the build of poly-ml v5.8:

In file included from /usr/include/pthread.h:33,
                 from locking.h:44,
                 from processes.h:38,
                 from sighandler.cpp:103:
sighandler.cpp:557:6: error: missing binary operator before token "("
  557 | #if (PTHREAD_STACK_MIN < 4096)
      |      ^~~~~~~~~~~~~~~~~
make[3]: *** [Makefile:761: sighandler.lo] Error 1
make[3]: Leaving directory '/home/runner/work/sml/sml/polyml-5.8/libpolyml'
make[2]: *** [Makefile:801: all-recursive] Error 1
make[2]: Leaving directory '/home/runner/work/sml/sml/polyml-5.8/libpolyml'
make[1]: *** [Makefile:722: all-recursive] Error 1
make[1]: Leaving directory '/home/runner/work/sml/sml/polyml-5.8'
make: *** [Makefile:487: all] Error 2

The reason that this fails now and not earlier is very likely connected to the fact that ubuntu-latest recently changed from ubuntu-20.4 to ubuntu-22.4.

I fixed the error while still using ubuntu-latest by switching to poly-ml v5.9. The release notes of v5.9 explicitly mention Fix for systems where PTHREAD_STACK_MIN is a function rather than a constant. which solves the error.

rainij commented 1 year ago

I will fix the ubuntu version as suggested. I take this opportunity to set the newest release: ubuntu-22.4 (or whetever it is called).