-
Assist (and, once we have more of those, fixits and refactorings) need to produce a lot of syntax trees.
This is done with the help of `make` module at the moment. Here's how a moderately-complex l…
-
lazy_static!, while a declarative macro, is a macro nonetheless. It can add quite a bit of additional compilation time cost. once_cell::sync::Lazy does the same thing with generics, and can be used mo…
-
Currently running `x setup` prompts an editor setup for VSCode for rustc compiler development in the following way :
```
x.py can automatically install the recommended `.vscode/settings.json` file f…
-
I have a crate that has a feature that is no longer needed. For now, I keep the feature, but it does nothing. I will at some point remove the feature, but I'd like to be able to issue a warning before…
-
## Feature Request
### Crates
`tracing`
### Motivation
Now that we are not supporting Rust 1.26.0 as our minimum compatible version, we can ship procedural macros in `tracing`. Replacing t…
hawkw updated
5 years ago
-
I would like to make the fact that certain conditions are verified to always hold available to the optimizer. With this, things like bounds checks or `unwrap`s that are verified to never fail can be o…
-
https://github.com/rust-lang-nursery/api-guidelines/issues/135#issuecomment-343698387 suggests a nice one:
> I've been using `PascalCase!` for macros that expand into types. (e.g. `Array![i32; 5; 4…
-
```rust
fn main() {
macro_rules! foo {
() => {
let var = 2;
dbg!(var);
};
}
foo!();
var;
}
```
**cargo check**
```
error[E0425…
-
I ran the existing test suite with miri, which encountered undefined behavior in `From for BoxedString`. Specifically, the error is on the line:
```rs
unsafe { allocator.grow(ptr, old_layout, Self…
-
**EDIT** You can work around this bug by putting the tokens `{ }` after the empty variant.
I have the following code (also on [play.rust-lang.org])
```rust
extern crate serde; // 1.0.75
#[macr…