gccrs icon indicating copy to clipboard operation
gccrs copied to clipboard

rustc_const_stable attribute broken

Open powerboat9 opened this issue 2 years ago • 2 comments

Code

#[rustc_const_stable(feature = "const_ascii_ctype_on_intrinsics", since = "1.47.0")]
pub fn foo() {}

Meta

  • git sha c93eb308c5ad272059d690980813746895116c71
Backtrace

crab1: internal compiler error: Segmentation fault
0x1104eaf crash_signal
	../../gccrs/gcc/toplev.cc:314
0xaa3d63 std::char_traits<char>::copy(char*, char const*, unsigned long)
	/usr/lib/gcc/x86_64-pc-linux-gnu/12/include/g++-v12/bits/char_traits.h:435
0xaa3d63 std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_S_copy(char*, char const*, unsigned long)
	/usr/lib/gcc/x86_64-pc-linux-gnu/12/include/g++-v12/bits/basic_string.h:431
0xaa3d63 std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_S_copy(char*, char const*, unsigned long)
	/usr/lib/gcc/x86_64-pc-linux-gnu/12/include/g++-v12/bits/basic_string.h:426
0xaa3d63 std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_S_copy_chars(char*, char*, char*)
	/usr/lib/gcc/x86_64-pc-linux-gnu/12/include/g++-v12/bits/basic_string.h:479
0xaa3d63 void std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::_M_construct<char*>(char*, char*, std::forward_iterator_tag)
	/usr/lib/gcc/x86_64-pc-linux-gnu/12/include/g++-v12/bits/basic_string.tcc:243
0xaa8336 std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> >::basic_string(std::__cxx11::basic_string<char, std::char_traits<char>, std::allocator<char> > const&)
	/usr/lib/gcc/x86_64-pc-linux-gnu/12/include/g++-v12/bits/basic_string.h:552
0xaa8336 Rust::AST::Fragment Rust::MacroExpander::expand_attribute_proc_macro<std::unique_ptr<Rust::AST::Item, std::default_delete<Rust::AST::Item> > >(std::unique_ptr<Rust::AST::Item, std::default_delete<Rust::AST::Item> >&, Rust::AST::SimplePath&)
	../../gccrs/gcc/rust/expand/rust-macro-expand.h:416
0xaa63ac expand_attribute
	../../gccrs/gcc/rust/expand/rust-expand-visitor.cc:134
0xaa63ac Rust::ExpandVisitor::expand_inner_items(std::vector<std::unique_ptr<Rust::AST::Item, std::default_delete<Rust::AST::Item> >, std::allocator<std::unique_ptr<Rust::AST::Item, std::default_delete<Rust::AST::Item> > > >&)
	../../gccrs/gcc/rust/expand/rust-expand-visitor.cc:208
0x9fd874 Rust::Session::expansion(Rust::AST::Crate&)
	../../gccrs/gcc/rust/rust-session-manager.cc:870
0xa02dc8 Rust::Session::compile_crate(char const*)
	../../gccrs/gcc/rust/rust-session-manager.cc:581

powerboat9 avatar Jun 21 '23 16:06 powerboat9

git bisect blames 12131c106fdffe25c40fa4a309d8ead03b99a685

powerboat9 avatar Jun 21 '23 17:06 powerboat9

This is no longer happening on master (3ccf008b148). I'll add the test as a testcase in a PR

CohenArthur avatar Jun 22 '23 13:06 CohenArthur

Fixed by #3003

CohenArthur avatar Jun 18 '24 11:06 CohenArthur