Add a note about avoiding default implemenations in some places
Link: https://github.com/rust-lang/compiler-builtins/pull/707
This commit is contained in:
parent
8153729f91
commit
996799a896
1 changed files with 4 additions and 0 deletions
|
|
@ -313,6 +313,10 @@ pub(crate) trait HInt: Int {
|
|||
/// Integer that is double the bit width of the integer this trait is implemented for
|
||||
type D: DInt<H = Self> + MinInt;
|
||||
|
||||
// NB: some of the below methods could have default implementations (e.g. `widen_hi`), but for
|
||||
// unknown reasons this can cause infinite recursion when optimizations are disabled. See
|
||||
// <https://github.com/rust-lang/compiler-builtins/pull/707> for context.
|
||||
|
||||
/// Widens (using default extension) the integer to have double bit width
|
||||
fn widen(self) -> Self::D;
|
||||
/// Widens (zero extension only) the integer to have double bit width. This is needed to get
|
||||
|
|
|
|||
Loading…
Add table
Add a link
Reference in a new issue