2 Replies to “BSDNow 038: A BUG’s Life”

Half-OT question to John Marino: the status overview on http://www.dragonlace.net/ lists OpenBSD as not fully supporting GNAT AUX but seems to refer to a rather old version that was tested. Is GNAT AUX currently available on OpenBSD and does it work? Since this week’s BSDNow episode (ha, something on topic!) claims that pkgsrc can also be installed on OpenBSD and GNAT AUX seems to be working perfectly on systems where it is available via pkgsrc, according to the overview page from above, would this suggest that GNAT AUX could also work perfectly on OpenBSD now?

the lang/gcc-aux version of GNAT AUX will build on openbsd, but tasking tests indicating tasking doesn’t work at all. I believe there must have been changes in GNAT posix tasking between gcc 4.8 and 4.9 — something that doesn’t work with OpenBSD.

The egcc compiler that compiles with OpenBSD ports is based on gcc 4.8.2 and all tests pass on it.

The other big issue is that Zero-Cost Exceptions simply do not work on OpenBSD, and it is the only BSD set to use the very expensive SJLJ exception handling.

Once some OpenBSD user gives me a patch to fix tasking on OpenBSD with gcc 4.9 then we can turn it on in pkgsrc. You can build it now if you want, just uncomment the ONLY_FOR_PLATFORM line for OpenBSD which is commented out. It should build after that – and work as long as you don’t use tasking which never returns from Thread Sleep state.