Skip to content

Instantly share code, notes, and snippets.

Niko Matsakis nikomatsakis

Block or report user

Report or block nikomatsakis

Hide content and notifications from this user.

Learn more about blocking users

Contact Support about this user’s behavior.

Learn more about reporting abuse

Report abuse
View GitHub Profile
View dyn-trait-coherence.md

Coherence can be bypassed by an indirect impl for a trait object #57893

Links

Background

View diamond.rs
// run-pass
#![feature(trait_upcasting)]
trait Foo: PartialEq<i32> {
}
trait Bar1: Foo {
}
View double_input.ll
; ModuleID = '31e3415mrsire8w'
source_filename = "31e3415mrsire8w"
target datalayout = "e-m:e-i64:64-f80:128-n8:16:32:64-S128"
target triple = "x86_64-unknown-linux-gnu"
@__rustc_debug_gdb_scripts_section__ = linkonce_odr unnamed_addr constant [34 x i8] c"\01gdb_load_rust_pretty_printers.py\00", section ".debug_gdb_scripts", align 1
; Function Attrs: nounwind nonlazybind
define i32 @double_input(i32) unnamed_addr #0 !dbg !5 {
start:
View issue-64960.rs
use std::fmt::Formatter;
use std::marker::PhantomData;
async fn foo(_: String) {
}
#[derive(Copy, Clone)]
pub struct Arguments<'a> {
// Format string pieces to print.
pieces: &'a [&'a str],
View NOTES.md
Row Self Case Stable #61207 Niko's take
1 Foo fn(self: Pin<&mut Self>, f: &u8) -> &u8 f self +
2 Foo fn(self: Pin<&mut Foo>, f: &u8) -> &u8 f self +
3 Foo<'a> fn(self: Pin<&mut Self>, f: &u8) -> &u8 f self +
4 Foo<'a> fn(self: Pin<&mut Foo>, f: &u8) -> &u8 f self +
5 Foo<'a> fn(self: Self, f: &u8) -> &u8 f f ?
6 Foo<'a> fn(self: Foo<'a>, f: &u8) -> &u8 f f ?
7 Foo<'a> fn(self: Box<Foo<'a>>, f: &u8) -> &u8 f f ?
8 Foo<'a> fn(self: Box<Foo>, f: &u8) -> &u8 X X
View magit: rust-2<versioned>.txt
Head: issue-56238-multiple-lifetimes-async-fn-region-solver implement `TypeFoldable` for `Arc`
Merge: rust-lang/master Auto merge of #61915 - Centril:rollup-oire3i8, r=Centril
Push: nikomatsakis/issue-56238-multiple-lifetimes-async-fn-region-solver implement `TypeFoldable` for `Arc`
Tag: 1.0.0-beta (54304)
Unstaged changes (2)
modified src/librustc/infer/opaque_types/mod.rs
@@ -425,6 +425,11 @@ impl<'a, 'tcx> InferCtxt<'a, 'tcx> {
opaque_defn: &OpaqueTypeDecl<'tcx>,
opaque_type_def_id: DefId,
View foo.diff
diff --git a/src/librustc/infer/opaque_types/mod.rs b/src/librustc/infer/opaque_types/mod.rs
index 9bb782e31f2..44ac68c3eab 100644
--- a/src/librustc/infer/opaque_types/mod.rs
+++ b/src/librustc/infer/opaque_types/mod.rs
@@ -425,6 +425,11 @@ impl<'a, 'tcx> InferCtxt<'a, 'tcx> {
opaque_defn: &OpaqueTypeDecl<'tcx>,
opaque_type_def_id: DefId,
) {
+ debug!(
+ "generate_member_constraint: definition_span = {:?}",
View Salsa In More Depth (2019.01).md

Salsa In More Depth (2019.01)

#[salsa::query_group(InputsStorage)]
pub trait MyQueryGroup {
  #[salsa::input] // `set_manifest` is auto-generated
  fn manifest(&self) -> Manifest;

  #[salsa::input] // `set_source_text` is auto-generated
  fn source_text(&self, name: String) -> String;
View fitzgen.prolog
% name(Id, TheName).
% crate(Id, Crate).
% size(Id, TheSize).
% one of:
% code(Id).
% data(Id).
% debug(Id).
% misc(Id).
% edge(Id, Id).
View rustc_phase_2_configure_and_expand-fp.csv
Test Clean BaseIncr CleanIncr PatchedIncr0
regression-31157-Check 0 10 14 12
ucd-Debug 5 5 11 N/A
inflate-Opt 0 1 8 8
regex-Check 10 11 18 21
packed-simd-Check 10 8 40 N/A
futures-Opt 1 2 5 5
tuple-stress-Opt 4 4 8 9
keccak-Debug 3 3 15 N/A
coercions-Debug 2 1 2 6
You can’t perform that action at this time.