Skip to content

riscv64: gccjit_sys: error[E0308]: mismatched types: expected *const i8, found *const u8 #149492

@yuzibo

Description

@yuzibo

In our internal CI, we found this issue when ./x check stage 2

#6 1148.2     Checking gccjit_sys v1.1.1
#6 1148.9 error[E0308]: mismatched types
#6 1148.9   --> /home/jenkins/.cargo/registry/src/community-ci.openruyi.cn-563c67b1241fa9eb/gccjit_sys-1.1.1/src/dynload.rs:25:33
#6 1148.9    |
#6 1148.9 25 |             let handle = dlopen(path.as_ptr(), RTLD_NOW);
#6 1148.9    |                          ------ ^^^^^^^^^^^^^ expected `*const i8`, found `*const u8`
#6 1148.9    |                          |
#6 1148.9    |                          arguments to this function are incorrect
#6 1148.9    |
#6 1148.9    = note: expected raw pointer `*const i8`
#6 1148.9               found raw pointer `*const u8`
#6 1148.9 note: function defined here
#6 1148.9   --> /home/jenkins/.cargo/registry/src/community-ci.openruyi.cn-563c67b1241fa9eb/gccjit_sys-1.1.1/src/dynload.rs:11:12
#6 1148.9    |
#6 1148.9 11 |         fn dlopen(filename: *const i8, flag: c_int) -> *mut c_void;
#6 1148.9    |            ^^^^^^ --------
#6 1148.9 
#6 1148.9 error[E0308]: mismatched types
#6 1148.9   --> /home/jenkins/.cargo/registry/src/community-ci.openruyi.cn-563c67b1241fa9eb/gccjit_sys-1.1.1/src/dynload.rs:35:37
#6 1148.9    |
#6 1148.9 35 |             let ptr = dlsym(self.0, sym.as_ptr());
#6 1148.9    |                       -----         ^^^^^^^^^^^^ expected `*const i8`, found `*const u8`
#6 1148.9    |                       |
#6 1148.9    |                       arguments to this function are incorrect
#6 1148.9    |
#6 1148.9    = note: expected raw pointer `*const i8`
#6 1148.9               found raw pointer `*const u8`
#6 1148.9 note: function defined here
#6 1148.9   --> /home/jenkins/.cargo/registry/src/community-ci.openruyi.cn-563c67b1241fa9eb/gccjit_sys-1.1.1/src/dynload.rs:12:12
#6 1148.9    |
#6 1148.9 12 |         fn dlsym(handle: *mut c_void, symbol: *const i8) -> *mut c_void;
#6 1148.9    |            ^^^^^                      ------
#6 1148.9 
#6 1149.8 For more information about this error, try `rustc --explain E0308`.
#6 1149.9 error: could not compile `gccjit_sys` (lib) due to 2 previous errors
#6 1149.9 warning: build failed, waiting for other jobs to finish...
#6 1179.5 Build completed unsuccessfully in 0:19:36
#6 ERROR: process "/bin/sh -c ./x check --stage 2" did not complete successfully: exit code: 1
------

Please see the log

Note: the CI system for riscv64 which we are developing it, so please ignore the return status of the CI above. In detail see the [discussion](#t-infra > We're eager to provide the community with RISC-V CI infrastr @ 💬).

Meta

rustc --version --verbose:

rustc 1.93.0-dev

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-gccThings relevant to the [future] GCC backendC-bugCategory: This is a bug.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions