diff options
| author | Michael Goulet <michael@errs.io> | 2025-01-08 17:31:40 +0000 |
|---|---|---|
| committer | lcnr <rust@lcnr.de> | 2025-01-09 13:55:40 +0100 |
| commit | 39daadc76ebdb97e0acf242791be129ae1003e16 (patch) | |
| tree | 1418e9ef2251a2f9c09dc3c25851cacf099f1d6b /tests/coverage | |
| parent | b6b8361bce8561fb8786ad33ca1abfdf4bc487b6 (diff) | |
Account for identity substituted items in symbol mangling
Diffstat (limited to 'tests/coverage')
| -rw-r--r-- | tests/coverage/generic-unused-impl.cov-map | 18 | ||||
| -rw-r--r-- | tests/coverage/generic-unused-impl.coverage | 17 | ||||
| -rw-r--r-- | tests/coverage/generic-unused-impl.rs | 16 |
3 files changed, 51 insertions, 0 deletions
diff --git a/tests/coverage/generic-unused-impl.cov-map b/tests/coverage/generic-unused-impl.cov-map new file mode 100644 index 00000000000..7cb6d2f385d --- /dev/null +++ b/tests/coverage/generic-unused-impl.cov-map @@ -0,0 +1,18 @@ +Function name: <generic_unused_impl::W<_> as core::convert::From<[<_ as generic_unused_impl::Foo>::Assoc; 1]>>::from (unused) +Raw bytes (9): 0x[01, 01, 00, 01, 00, 0a, 05, 03, 06] +Number of files: 1 +- file 0 => global file 1 +Number of expressions: 0 +Number of file 0 mappings: 1 +- Code(Zero) at (prev + 10, 5) to (start + 3, 6) +Highest counter ID seen: (none) + +Function name: generic_unused_impl::main +Raw bytes (9): 0x[01, 01, 00, 01, 01, 10, 01, 00, 0d] +Number of files: 1 +- file 0 => global file 1 +Number of expressions: 0 +Number of file 0 mappings: 1 +- Code(Counter(0)) at (prev + 16, 1) to (start + 0, 13) +Highest counter ID seen: c0 + diff --git a/tests/coverage/generic-unused-impl.coverage b/tests/coverage/generic-unused-impl.coverage new file mode 100644 index 00000000000..0c20285f845 --- /dev/null +++ b/tests/coverage/generic-unused-impl.coverage @@ -0,0 +1,17 @@ + LL| |trait Foo { + LL| | type Assoc; + LL| | + LL| | fn from(s: Self::Assoc) -> Self; + LL| |} + LL| | + LL| |struct W<T>(T); + LL| | + LL| |impl<T: Foo> From<[T::Assoc; 1]> for W<T> { + LL| 0| fn from(from: [T::Assoc; 1]) -> Self { + LL| 0| let [item] = from; + LL| 0| W(Foo::from(item)) + LL| 0| } + LL| |} + LL| | + LL| 1|fn main() {} + diff --git a/tests/coverage/generic-unused-impl.rs b/tests/coverage/generic-unused-impl.rs new file mode 100644 index 00000000000..e44b1ca8a1d --- /dev/null +++ b/tests/coverage/generic-unused-impl.rs @@ -0,0 +1,16 @@ +trait Foo { + type Assoc; + + fn from(s: Self::Assoc) -> Self; +} + +struct W<T>(T); + +impl<T: Foo> From<[T::Assoc; 1]> for W<T> { + fn from(from: [T::Assoc; 1]) -> Self { + let [item] = from; + W(Foo::from(item)) + } +} + +fn main() {} |
