-
Notifications
You must be signed in to change notification settings - Fork 184
Open
Description
There is a rust project here: https://github.com/BLAKE3-team/BLAKE3/blob/master/reference_impl/reference_impl.rs
Which is a nice simple test case of rust which does not require much of the stdlib and no macros or attributes. This seems to be achievable when we complete the Control Flow 2 milestone.
There are likely many bugs to find along the way with this one. Thanks to Mark Wieelard pointing this out.
We will keep track of the missing features or bugs via this checklist:
- array constant folding Array Constant Folding #681
- references within method receivers Adjustments for method receivers #241
- core::cmp::min support requires the Cmp traits which will require operator overloading Operator overloading #249
- core::convert::TryInto requires the AutoTrait of Sized to be implemented see https://github.com/rust-lang/rust/blob/master/library/core/src/convert/mod.rs#L390-L398 Sized Trait #776
- Constant folding of copied array elements #749
- Failure to resolve generic TypePath #746
- Type resolution errors with method trait query #744
- Type Resolution errors on covariant types in generic traits #743
- ICE when using a method from trait bound #741
- QualifiedPathInType's fail within the same Trait #739
- Array Constant Folding #681
- Missing coercion site at assignment operators and argument passing #700
- Forward declared block items #531
- Enum Compilation #79
- ICE in autoderef in generic type bound's with method call #753
- Missing coercion site in arguments to MethodCallExpr #755
- Where constraints #442
- Support match expression #190
- Operator overloading #249
- Constant folding is not applied to blocks, only toplevel items #711
- Unable to handle TypeBound TypePaths #786
- Parser error with lifetime arguments #773
- Operator overloading #249
- TREE_ADDRESSABLE is not being set when required #804
- Deref operator overloading #809
- ICE with multiple generic trait-impl blocks for the same trait #808
- Bad mutability error #815
- Add missing bitwise lang items for operator overloading #848
- HIR::ImplBlock items should mangle based from their canonical path's #847
- Duplicate symbol name generated #845
- Add support for Slices #849
- ICE on generic enum #851
- Match expression support a wildcard pattern #853
-
let _ = ...
binding produces an error #557 - ICE in trail expression post match expression in Block #858
- Bad assertion on Impl Blocks containing associated types #1274
- Bad typechecking for slice from array in goal test case #1273
- &Str has the same layout as &[T] #1271
- Incorrect type error with slice get_unchecked #1237
- Bad type resolution on &[T] vs *const T #1235
- Bitwise shift operator doesn't cast shift amount #1234
- const slice ptr lang item #1232
- Invalid cast to pointer should be allowed #1226
- erroneous "cannot 'break' outside of a loop" from match within LoopExpr #1196
- Bad name resolution on path with generic segments #1173
- Identifier expressions are not inferring generic arguments #1165
- Code generation coercion sites dont handle complex cases #1146
- Bad type resolution for associated types #1133
- Bad placeholder type handling #1034
- Support for range loops #869
- Parser error on RangeTo patterns #1270