Skip to content

CGO/Clang Build failure #401

Description

@ReillyBrogan

We just updated to runc 1.5.0 which uses libpathrs 0.2.5 and since we use Clang as our default compiler we are now getting a build failure that appears to be in go-pathrs:

/mason/gomodcache/cyphar.com/go-pathrs@v0.2.5/internal/libpathrs/libpathrs_linux.go:256:32: cannot use (_Ciconst_PATHRS_PROC_ROOT) (untyped int constant 18446744067006164835) as int64 value in variable declaration (overflows)
/mason/gomodcache/cyphar.com/go-pathrs@v0.2.5/internal/libpathrs/libpathrs_linux.go:257:32: cannot use (_Ciconst_PATHRS_PROC_SELF) (untyped int constant 18446744065272536607) as int64 value in variable declaration (overflows)
/mason/gomodcache/cyphar.com/go-pathrs@v0.2.5/internal/libpathrs/libpathrs_linux.go:258:32: cannot use (_Ciconst_PATHRS_PROC_THREAD_SELF) (untyped int constant 18446744066171166239) as int64 value in variable declaration (overflows)

As far as we can tell the behavior of variables here is slightly different between Clang and GCC and there may need to be an explicit cast to int64 added on the go side.

This is using Golang 1.26.4 and Clang 22.1.8.

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions