Skip to content

LLVM_ERROR when building serde_json in release + debuginfo mode #56265

Closed
@matthiaskrgr

Description

@matthiaskrgr

dummy toml:

[dependencies]
serde_json  = "1.0.33"

[profile.release]
debug=1

RUSTC_WRAPPER="" RUSTFLAGS="" cargo build --release

       Fresh itoa v0.4.3
       Fresh serde v1.0.80
       Fresh ryu v0.2.7
   Compiling serde_json v1.0.33
     Running `rustc --crate-name serde_json /home/matthias/.cargo/registry/src/github.com-1ecc6299db9ec823/serde_json-1.0.33/src/lib.rs --color always --crate-type lib --emit=dep-info,link -C opt-level=3 -C debuginfo=1 --cfg 'feature="default"' -C metadata=2687b362712dc6be -C extra-filename=-2687b362712dc6be --out-dir /tmp/b/target/release/deps -L dependency=/tmp/b/target/release/deps --extern itoa=/tmp/b/target/release/deps/libitoa-e0773b33ff0b20a6.rlib --extern ryu=/tmp/b/target/release/deps/libryu-c0c32e7fbba89ebc.rlib --extern serde=/tmp/b/target/release/deps/libserde-4872489d3d4920f8.rlib --cap-lints allow`
!dbg attachment points at wrong subprogram for function
!399 = distinct !DISubprogram(name: "deserialize<serde_json::de::MapKey<serde_json::read::StrRead>>", linkageName: "_ZN5serde2de5impls89_$LT$impl$u20$serde..de..Deserialize$LT$$u27$de$GT$$u20$for$u20$alloc..string..String$GT$11deserialize17hdffd335a6103359fE", scope: !401, file: !400, line: 418, type: !270, isLocal: true, isDefinition: true, scopeLine: 418, flags: DIFlagPrototyped, isOptimized: true, unit: !193, templateParams: !4, retainedNodes: !4)
void (%"core::result::Result<alloc::string::String, error::Error>"*, i64*)* @"_ZN5serde2de5impls89_$LT$impl$u20$serde..de..Deserialize$LT$$u27$de$GT$$u20$for$u20$alloc..string..String$GT$11deserialize17hdffd335a6103359fE"
  %26 = bitcast %"alloc::vec::Vec<u8>"* %4 to i8*, !dbg !457
!457 = !DILocation(line: 326, column: 11, scope: !458)
!458 = distinct !DISubprogram(name: "visit_str<serde_json::error::Error>", linkageName: "_ZN85_$LT$serde..de..impls..StringVisitor$u20$as$u20$serde..de..Visitor$LT$$u27$de$GT$$GT$9visit_str17h49a37b04e6e36535E", scope: !401, file: !400, line: 322, type: !276, isLocal: true, isDefinition: true, scopeLine: 322, flags: DIFlagPrototyped, isOptimized: true, unit: !193)
!458 = distinct !DISubprogram(name: "visit_str<serde_json::error::Error>", linkageName: "_ZN85_$LT$serde..de..impls..StringVisitor$u20$as$u20$serde..de..Visitor$LT$$u27$de$GT$$GT$9visit_str17h49a37b04e6e36535E", scope: !401, file: !400, line: 322, type: !276, isLocal: true, isDefinition: true, scopeLine: 322, flags: DIFlagPrototyped, isOptimized: true, unit: !193)
!dbg attachment points at wrong subprogram for function
!399 = distinct !DISubprogram(name: "deserialize<serde_json::de::MapKey<serde_json::read::StrRead>>", linkageName: "_ZN5serde2de5impls89_$LT$impl$u20$serde..de..Deserialize$LT$$u27$de$GT$$u20$for$u20$alloc..string..String$GT$11deserialize17hdffd335a6103359fE", scope: !401, file: !400, line: 418, type: !270, isLocal: true, isDefinition: true, scopeLine: 418, flags: DIFlagPrototyped, isOptimized: true, unit: !193, templateParams: !4, retainedNodes: !4)
void (%"core::result::Result<alloc::string::String, error::Error>"*, i64*)* @"_ZN5serde2de5impls89_$LT$impl$u20$serde..de..Deserialize$LT$$u27$de$GT$$u20$for$u20$alloc..string..String$GT$11deserialize17hdffd335a6103359fE"
  %26 = bitcast %"alloc::vec::Vec<u8>"* %4 to i8*, !dbg !457
!457 = !DILocation(line: 326, column: 11, scope: !458)
!458 = distinct !DISubprogram(name: "visit_str<serde_json::error::Error>", linkageName: "_ZN85_$LT$serde..de..impls..StringVisitor$u20$as$u20$serde..de..Visitor$LT$$u27$de$GT$$GT$9visit_str17h49a37b04e6e36535E", scope: !401, file: !400, line: 322, type: !276, isLocal: true, isDefinition: true, scopeLine: 322, flags: DIFlagPrototyped, isOptimized: true, unit: !193)
!458 = distinct !DISubprogram(name: "visit_str<serde_json::error::Error>", linkageName: "_ZN85_$LT$serde..de..impls..StringVisitor$u20$as$u20$serde..de..Visitor$LT$$u27$de$GT$$GT$9visit_str17h49a37b04e6e36535E", scope: !401, file: !400, line: 322, type: !276, isLocal: true, isDefinition: true, scopeLine: 322, flags: DIFlagPrototyped, isOptimized: true, unit: !193)
LLVM ERROR: Broken module found, compilation aborted!
error: Could not compile `serde_json`.

Caused by:
  process didn't exit successfully: `rustc --crate-name serde_json /home/matthias/.cargo/registry/src/github.com-1ecc6299db9ec823/serde_json-1.0.33/src/lib.rs --color always --crate-type lib --emit=dep-info,link -C opt-level=3 -C debuginfo=1 --cfg 'feature="default"' -C metadata=2687b362712dc6be -C extra-filename=-2687b362712dc6be --out-dir /tmp/b/target/release/deps -L dependency=/tmp/b/target/release/deps --extern itoa=/tmp/b/target/release/deps/libitoa-e0773b33ff0b20a6.rlib --extern ryu=/tmp/b/target/release/deps/libryu-c0c32e7fbba89ebc.rlib --extern serde=/tmp/b/target/release/deps/libserde-4872489d3d4920f8.rlib --cap-lints allow` (exit code: 101)

meta:

rustc 1.32.0-nightly (6bfb46e4a 2018-11-26)
binary: rustc
commit-hash: 6bfb46e4ac9a2704f06de1a2ff7a4612cd70c8cb
commit-date: 2018-11-26
host: x86_64-unknown-linux-gnu
release: 1.32.0-nightly
LLVM version: 8.0

Probably caused by #55835

Metadata

Metadata

Assignees

No one assigned

    Labels

    A-LLVMArea: Code generation parts specific to LLVM. Both correctness bugs and optimization-related issues.A-debuginfoArea: Debugging information in compiled programs (DWARF, PDB, etc.)

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions