-
Notifications
You must be signed in to change notification settings - Fork 13.3k
LLVM assertion: "stdcall" with return value on Android #24958
New issue
Have a question about this project? # for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “#”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? # to your account
Comments
The problem here is that this test doesn't even compile for Android. See rust-lang#24958.
Something that works on any host (i.e. you needn’t compile libstd for android to repro): #![feature(no_std,lang_items,fundamental)]
#![no_std]
#![crate_type="lib"]
#[lang="sized"]
#[fundamental]
pub trait Sized {}
#[lang="sync"]
pub unsafe trait Sync {}
#[lang="phantom_data"]
pub struct PhantomData<T:?Sized>;
#[lang="send"]
pub unsafe trait Send {}
#[lang="copy"]
pub trait Copy {}
#[lang="no_copy_bound"]
pub struct NoCopy;
pub extern "stdcall" fn sup(_: isize) -> isize {
0
}
|
As the error says, |
I'm hitting this when I tried to run tests for 1.10.0 on arm64 (aarch64-unknown-linux-gnu). The build succeeds otherwise. I'm just adding |
Neither example crashes today. Closing, since I don't see any good opportunity for a test here (it'd have to be something like With
Updated @nagisa's example: #![feature(no_core,lang_items,fundamental)]
#![no_core]
#[lang="sized"]
#[fundamental]
pub trait Sized {}
#[lang="sync"]
pub unsafe trait Sync {}
#[lang="phantom_data"]
pub struct PhantomData<T:?Sized>;
#[lang="send"]
pub unsafe trait Send {}
#[lang="copy"]
pub trait Copy {}
pub extern "stdcall" fn sup(_: isize) -> isize {
0
}
|
Cleanup rust-lang#24958 Since rust-lang#24958 was closed we might want to remove the workarounds it introduced for android, arm and aarch64.
Rollup of 13 pull requests Successful merges: - #51628 (use checked write in `LineWriter` example) - #52116 (Handle array manually in str case conversion methods) - #52218 (Amend option.take examples) - #52418 (Do not use desugared ident when suggesting adding a type) - #52439 (Revert some changes from #51917 to fix custom libdir) - #52455 (Fix doc comment: use `?` instead of `.unwrap()`) - #52458 (rustc: Fix a suggestion for the `proc_macro` feature) - #52464 (Allow clippy to be installed with make install) - #52472 (rustc: Enable `use_extern_macros` in 2018 edition) - #52477 (Clarify short-circuiting behvaior of Iterator::zip.) - #52480 (Cleanup #24958) - #52487 (Don't build twice the sanitizers on Linux) - #52510 (rustdoc: remove FIXME about macro redirects) Failed merges: r? @ghost
main.rs:
Triggers an LLVM assertion when targeting Android:
The text was updated successfully, but these errors were encountered: