Skip to content

ICE in insert_resolved_name, at rust/resolve/rust-name-resolver.cc:475 #3546

Open
@matthiaskrgr

Description

@matthiaskrgr

auto-reduced (treereduce-rust):

const L: usize = 3;

trait Print {}

struct Printer {}
impl Print<L> for Printer {}

original:

// We previously incorrectly linted `L` as unused here.
#![deny(dead_code)]
#![allow(dead_code)]
#![deny(const_generics)]

// We previously incorrectly linted `L` as unused here.
const L: usize = 3;

fn main() {
    let p = Printer {};
    p.print();
}

trait Print<const N: usize> {
    fn print(&self) -> usize {
        3
    }
}

struct Printer {}
impl Print<L> for Printer {}

Version information:

a988708

Command:
crab1 -Warray-bounds -mtune=generic -march=x86-64 -O0 -L/lib/x86_64-linux-gnu -L/lib/../lib64 -L/usr/lib/x86_64-linux-gnu -L/usr/lib/../lib64 -frust-incomplete-and-experimental-compiler-do-not-use

Program output

crab1: internal compiler error: in insert_resolved_name, at rust/resolve/rust-name-resolver.cc:475
0x86805f Rust::Resolver::Resolver::insert_resolved_name(unsigned int, unsigned int)
	../../gcc/rust/resolve/rust-name-resolver.cc:475
0xe6e4a4 Rust::Resolver::ResolveExpr::go(Rust::AST::Expr&, Rust::Resolver::CanonicalPath const&, Rust::Resolver::CanonicalPath const&, bool)
	../../gcc/rust/resolve/rust-ast-resolve-expr.cc:36
0xe75656 Rust::Resolver::ResolveGenericArgs::resolve_disambiguated_generic(Rust::AST::GenericArg&)
	../../gcc/rust/resolve/rust-ast-resolve-type.cc:744
0xe75656 Rust::Resolver::ResolveGenericArgs::go(Rust::AST::GenericArgs&, Rust::Resolver::CanonicalPath const&, Rust::Resolver::CanonicalPath const&)
	../../gcc/rust/resolve/rust-ast-resolve-type.cc:773
0xe7573a Rust::Resolver::ResolveGenericArgs::go(Rust::AST::GenericArgs&)
	../../gcc/rust/resolve/rust-ast-resolve-type.cc:758
0xe76bcb Rust::Resolver::ResolveTypeToCanonicalPath::visit(Rust::AST::TypePath&)
	../../gcc/rust/resolve/rust-ast-resolve-type.cc:520
0xe70b5f Rust::Resolver::ResolveTypeToCanonicalPath::go(Rust::AST::Type&, Rust::Resolver::CanonicalPath&)
	../../gcc/rust/resolve/rust-ast-resolve-type.cc:491
0xe5bac4 Rust::Resolver::ResolveItem::visit(Rust::AST::TraitImpl&)
	../../gcc/rust/resolve/rust-ast-resolve-item.cc:686
0xe5aafc Rust::Resolver::ResolveItem::go(Rust::AST::Item&, Rust::Resolver::CanonicalPath const&, Rust::Resolver::CanonicalPath const&)
	../../gcc/rust/resolve/rust-ast-resolve-item.cc:174
0xe495ed Rust::Resolver::NameResolution::go(Rust::AST::Crate&)
	../../gcc/rust/resolve/rust-ast-resolve.cc:108
0xc5c295 Rust::Session::compile_crate(char const*)
	../../gcc/rust/rust-session-manager.cc:650
Please submit a full bug report, with preprocessed source (by using -freport-bug).
Please include the complete backtrace with any bug report.
See <https://gcc.gnu.org/bugs/> for instructions.

Metadata

Metadata

Assignees

No one assigned

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions