Quinton Miller
Quinton Miller
This is most likely because `FileUtils.mv` checks for `Errno.value`, but Win32 APIs only set `WinError.value`.
Rust also backported this to LLVM 17 and below: https://blog.rust-lang.org/2024/03/30/i128-layout-update.html
`ClassDef` and `ModuleDef` are still missing (#6679 only attempted the API docs), as are lib-related nodes (#5244).
At the minimum it should be possible to reconstruct every AST node from macro interpolation of that node's direct constituents. For example, * Reconstructing a `TypeDeclaration` is simple: ```crystal macro...
So I went through the AST node types with `crystal tool hierarchy`, and here is my full review: * Nodes that have no inner components and can be documented already:...
My current opinion on mutability is: the macro language lacks macro-exclusive sequential and associative collections, or rather, doing so wouldn't bring any substantial benefits over simply reusing real AST nodes,...
`External`s are not syntactic nodes but rather semantic ones that correspond to lib funs and variables: ```crystal lib LibFoo fun foo $bar : Int32 end def x {{ LibFoo.methods }}...
Closing in favor of #14651
The actual problem is that `BigDecimal#scale` in Crystal is a `UInt64`, so it can express `1e-10000000` very concisely (`value == 1.to_big_i, scale == 10000000`), but not `1e+10000000` (`value == 10.to_big_i...
The blockless `#any?` being callable most certainly implies `#empty?` is also callable, but note that crystal-lang/crystal#13866 is restricted to `Enumerable` and there are quite a few stdlib types that define...