Skip to content

Adding serde_json as an unused external crate causes a compiler error in unrelated code #46257

Open
@jdm

Description

@jdm

This code compiles:

use std::cell::Cell;
use std::default::Default;

fn main() {
   let cell = Cell::new(0u64);
    cell.get() == Default::default();
}

This code does not:

extern crate serde_json;

use std::cell::Cell;
use std::default::Default;

fn main() {
   let cell = Cell::new(0u64);
    cell.get() == Default::default();
}
error[E0283]: type annotations required: cannot resolve `u64: std::cmp::PartialEq<_>`
 --> src/lib.rs:7:16
  |
7 |     cell.get() == Default::default();
  |                ^^

error: aborting due to previous error

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-diagnosticsArea: Messages for errors, warnings, and lintsC-enhancementCategory: An issue proposing an enhancement or a PR with one.T-compilerRelevant to the compiler team, which will review and decide on the PR/issue.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions