Skip to content

Unable to link regex crate with "-Z instrument-coverage" on x86_64-pc-windows-msvc #85461

Closed

Description

Hello,

Linking regex crate on x86_64-pc-windows-msvc fails when using -Z instrument-coverage.
The link succeeds when using -Z instrument-coverage=except-unused-functions

# Cargo.toml
[package]
name = "foobar"
version = "0.1.0"
authors = ["foobar"]
edition = "2018"

[dependencies]
regex = "1.5.4"
// main.rs
fn main() {
    use regex::Regex;
    let re = Regex::new(r"^\d{4}-\d{2}-\d{2}$").unwrap();
    assert!(re.is_match("2014-01-01"));
}

I expected to see this happen: linking successful.

Instead, this happened:

error: linking with `link.exe` failed: exit code: 1227

note: libmemchr-40eebd4a74e50761.rlib(memchr-40eebd4a74e50761.memchr.2b5ledse-cgu.14.rcgu.o) : fatal error LNK1227: conflicting weak extern definition for '_RINvNtNtNtCs838Isxeq56n_6memchr6memmem9prefilter11genericsimd14find_in_chunk3pEB8_'.  New default '.weak._RINvNtNtNtCs838Isxeq56n_6memchr6memmem9prefilter11genericsimd14find_in_chunk3pEB8_.default._RINvMNtCs93I3MPx9COt_4core5sliceSh13get_uncheckedINtNtNtB5_3ops5range7RangeTojEECs838Isxeq56n_6memchr' conflicts with old default '.weak._RINvNtNtNtCs838Isxeq56n_6memchr6memmem9prefilter11genericsimd14find_in_chunk3pEB8_.default._RINvMNtNtCs93I3MPx9COt_4core3ptr9const_ptrPh4castuECs838Isxeq56n_6memchr' in libmemchr-40eebd4a74e50761.rlib(memchr-40eebd4a74e50761.memchr.2b5ledse-cgu.3.rcgu.o)

Meta

rustc --version --verbose:

rustc +nightly --version --verbose       
rustc 1.54.0-nightly (3e99439f4 2021-05-17)
binary: rustc
commit-hash: 3e99439f4dacc8ba0d2ca48d221694362d587927
commit-date: 2021-05-17
host: x86_64-pc-windows-msvc
release: 1.54.0-nightly
LLVM version: 12.0.1
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Metadata

Assignees

No one assigned

    Labels

    A-code-coverageArea: Source-based code coverage (-Cinstrument-coverage)C-bugCategory: This is a bug.O-windows-msvcToolchain: MSVC, Operating system: Windows

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions