Skip to content

[Bug]: Building CppInterOp using gcc 15.2 causes tests to fail (found on MacOS) #754

@mcbarton

Description

@mcbarton

Description of bug

I built llvm and CppInterOp with gcc version 15.2 (issue could exist with other gcc versions. I haven't checked) on MacOS. When running the tests you get the following errors

1: [ RUN      ] CppInterOpTest/InProcessJIT.FunctionReflectionTestGetFunctionAddress
1/2 Test #1: cppinterop-CppInterOpTests ..............***Exception: SegFault  2.23 sec

2: [ RUN      ] CppInterOpTest/InProcessJIT.DynamicLibraryManagerTestSanity
2: Expected<T> must be checked before access or destruction.
2: Unchecked Expected<T> contained error:
2: The file was not recognized as a valid object file
2/2 Test #2: cppinterop-DynamicLibraryManagerTests ...Subprocess aborted***Exception:   0.20 sec

Its entirely possible more tests fail, but without further debugging by skipping these tests I don't know.

Having a gcc build on Mac in the ci has something I have considered in the past, but haven't done due to lack of cache space. This might hint that its worth finding a way of including. I could have such a build in the ci workflows repo as a post merge PR. I also plan to free up some space by using a package manager for some of the older native llvms, so it could be fit in CppInterOps ci.

In the ci we also use an older version of gcc for Linux, so it should be checked that this bug doesn't exist on Linux too.

This might exist for other llvms, but I only checked for llvm 20.

What operating system was you using when the bug occured?

MacOS

What is the architechture of the cpu on your system?

ARM

What did you build CppInterOp against?

No response

Metadata

Metadata

Assignees

No one assigned

    Labels

    bugSomething isn't working

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions