Skip to content

Commit

Permalink
Convert it into a warning
Browse files Browse the repository at this point in the history
Co-authored-by: León Orell Valerian Liehr <[email protected]>
  • Loading branch information
Noratrieb and fmease committed Aug 22, 2023
1 parent 1b9159e commit d16e9c3
Showing 1 changed file with 6 additions and 1 deletion.
7 changes: 6 additions & 1 deletion compiler/rustc_index/src/lib.rs
Original file line number Diff line number Diff line change
Expand Up @@ -29,13 +29,18 @@ pub use {idx::Idx, slice::IndexSlice, vec::IndexVec};
pub use rustc_macros::newtype_index;

/// Type size assertion. The first argument is a type and the second argument is its expected size.
/// Note to the reader: Emitting hard errors from size assertions like this is generally not
///
/// <div class="warning">
///
/// Emitting hard errors from size assertions like this is generally not
/// recommended, especially in libraries, because they can cause build failures if the layout
/// algorithm or dependencies change. Here in rustc we control the toolchain and layout algorithm,
/// so the former is not a problem. For the latter we have a lockfile as rustc is an application and
/// precompiled library.
///
/// Short version: Don't copy this macro into your own code. Use a `#[test]` instead.
///
/// </div>
#[macro_export]
macro_rules! static_assert_size {
($ty:ty, $size:expr) => {
Expand Down

0 comments on commit d16e9c3

Please sign in to comment.