diff options
| author | Nicholas Nethercote <n.nethercote@gmail.com> | 2022-06-10 11:58:29 +1000 |
|---|---|---|
| committer | Nicholas Nethercote <n.nethercote@gmail.com> | 2022-06-10 11:58:29 +1000 |
| commit | 3186e311e526e3dad197dacc91c2d84cde2be846 (patch) | |
| tree | 9a8b86ea039a286af6d64215920531f8b372702e /compiler/rustc_metadata/src/rmeta | |
| parent | 7f51a1b97638780a3d22979d886384ad7903cc4e (diff) | |
| download | rust-3186e311e526e3dad197dacc91c2d84cde2be846.tar.gz rust-3186e311e526e3dad197dacc91c2d84cde2be846.zip | |
Revert dc08bc51f2c58a0f5f815a07f9bb3d671153b5a1.
Diffstat (limited to 'compiler/rustc_metadata/src/rmeta')
| -rw-r--r-- | compiler/rustc_metadata/src/rmeta/encoder.rs | 9 |
1 files changed, 8 insertions, 1 deletions
diff --git a/compiler/rustc_metadata/src/rmeta/encoder.rs b/compiler/rustc_metadata/src/rmeta/encoder.rs index e090b4c37e5..3285273ba90 100644 --- a/compiler/rustc_metadata/src/rmeta/encoder.rs +++ b/compiler/rustc_metadata/src/rmeta/encoder.rs @@ -93,6 +93,9 @@ macro_rules! encoder_methods { } impl<'a, 'tcx> Encoder for EncodeContext<'a, 'tcx> { + type Ok = <opaque::Encoder as Encoder>::Ok; + type Err = <opaque::Encoder as Encoder>::Err; + encoder_methods! { emit_usize(usize); emit_u128(u128); @@ -115,6 +118,10 @@ impl<'a, 'tcx> Encoder for EncodeContext<'a, 'tcx> { emit_str(&str); emit_raw_bytes(&[u8]); } + + fn finish(self) -> Result<Self::Ok, Self::Err> { + self.opaque.finish() + } } impl<'a, 'tcx, T> Encodable<EncodeContext<'a, 'tcx>> for LazyValue<T> { @@ -2216,7 +2223,7 @@ fn encode_metadata_impl(tcx: TyCtxt<'_>) -> EncodedMetadata { // culminating in the `CrateRoot` which points to all of it. let root = ecx.encode_crate_root(); - let mut result = ecx.opaque.finish(); + let mut result = ecx.opaque.finish().unwrap(); // Encode the root position. let header = METADATA_HEADER.len(); |
