waffle
waffle
Thanks! It's also worth noticing that this can be done throw `#![feature(unboxed_closures)]` and `Fn`: ```rust #![feature(unboxed_closures)] #[async_trait] trait Trait { async fn run(&self); } #[async_trait] impl Trait for F where...
I've just found out that in my code this doesn't work :( Because 1. I have param in both `Trait` and `F` 2. I have a struct that also implements...
@rustbot ready
It was an interesting problem: ```diff - let is_aligned = |p| -> bool { 0 == p as usize & (Self::align_of() - 1) }; + let is_aligned = |p| ->...
@rustbot label +T-libs-api -T-libs
> Should this be added to the strict provenance feature gate? I don't really have an opinion on this. While this is mostly useful to mask pointers without touching provenance...
I've rebased to fix the merge conflicts. Still waiting on review.
build fixed, codegen test added. @rustbot ready
So the errors seems to be happening [here](https://github.com/rust-lang/llvm-project/blob/e3be3f64ecac101d14ceda759ba078ad0aaf3747/llvm/lib/IR/Type.cpp#L729) while building `std`: ```cpp PointerType *PointerType::get(Type *EltTy, unsigned AddressSpace) { assert(EltTy && "Can't get a pointer to type!"); assert(isValidElementType(EltTy) && "Invalid type...
I can't find where it's documented, but apparently void in llvm is only valid as the return type of functions, and not as a pointer element type (at least [this...