Skip to content

Instantly share code, notes, and snippets.

diff --git a/src/librustc/middle/infer/mod.rs b/src/librustc/middle/infer/mod.rs
index b752e04..ad8d197 100644
--- a/src/librustc/middle/infer/mod.rs
+++ b/src/librustc/middle/infer/mod.rs
@@ -484,6 +484,7 @@ pub fn normalize_associated_type<'a, 'tcx, T>(infcx: &InferCtxt<'a,'tcx>, value:
where T : TypeFoldable<'tcx> + HasTypeFlags
{
debug!("normalize_associated_type(t={:?})", value);
+ debug!("normalize_associated_types(infcx.deanonymize={:?})", infcx.deanonymize);
running 1920 tests
fatal runtime error: Could not unwind stack, error = 5
/bin/sh: line 1: 65851 Illegal instruction: 4 DYLD_LIBRARY_PATH=/Users/m4rw3r/Projects/Clones/rust/x86_64-apple-darwin/stage1/lib:$DYLD_LIBRARY_PATH x86_64-apple-darwin/stage1/bin/compiletest --compile-lib-path x86_64-apple-darwin/stage1/lib --run-lib-path x86_64-apple-darwin/stage1/lib/rustlib/x86_64-apple-darwin/lib --rustc-path x86_64-apple-darwin/stage1/bin/rustc --rustdoc-path x86_64-apple-darwin/stage1/bin/rustdoc --llvm-bin-path /Users/m4rw3r/Projects/Clones/rust/x86_64-apple-darwin/llvm/Release/bin --aux-base /Users/m4rw3r/Projects/Clones/rust/src/test/auxiliary/ --stage-id stage1-x86_64-apple-darwin --target x86_64-apple-darwin --host x86_64-apple-darwin --python "/opt/local/bin/python2.7" --gdb-version="GNU gdb (GDB) 7.9.1" --lldb-version="lldb-330.0.48" --android-cross-path=/opt/ndk_standalone --adb-path= --adb-test-dir= --host-rustcflags " --cfg rtopt -O -L x86_64-apple-darwin/rt" --lldb-python-dir=/Applications/Xcode.ap
@m4rw3r
m4rw3r / gist:e2cc5196c662ccdab02b
Created September 7, 2015 12:05
make check-stage2-ctest when removing if !data.has_escaping_regions() in librustc/middle/traits/project.rs::AssociatedTypeNormalizer::fold_ty
failures:
---- [compile-fail] compile-fail/associated-types-outlives.rs stdout ----
error: expected error on line 32 not found: cannot move out of `x` because it is borrowed
status: exit code: 101
command: x86_64-apple-darwin/stage2/bin/rustc /Users/m4rw3r/Projects/Clones/rust/src/test/compile-fail/associated-types-outlives.rs -L x86_64-apple-darwin/test/compile-fail/ --target=x86_64-apple-darwin -L x86_64-apple-darwin/test/compile-fail/associated-types-outlives.stage2-x86_64-apple-darwin.compile-fail.libaux -C prefer-dynamic -o x86_64-apple-darwin/test/compile-fail/associated-types-outlives.stage2-x86_64-apple-darwin --cfg rtopt -O -L x86_64-apple-darwin/rt
stdout:
------------------------------------------
@m4rw3r
m4rw3r / http_parser.rs
Created September 7, 2015 16:59
Second version of the attoparsec benchmark for parsing HTTP header dumps writtien in rust using my experimental parser combinator, post version 3.
//! http parser comparable to the http-parser found in attoparsec's examples.
//!
//! Reads data in the following format:
//!
//! ```text
//! GET /robot.txt HTTP/1.1
//! Host: localhost
//! Accept: text/html,application/xhtml+xml,application/xml;q=0.9,*/*;q=0.8
//!
//! ```
@m4rw3r
m4rw3r / combine_http_parser_1.0.0.rs
Last active September 7, 2015 17:37
Version of the attoparsec example using the parser combinator Combine version 1.0.0.
extern crate combine;
use combine::*;
use combine::primitives::Error;
use std::fs::File;
use std::env;
#[derive(Debug)]
@m4rw3r
m4rw3r / nom_http_parser.rs
Created September 7, 2015 17:56
Version of the attoparsec example using the parser combinator Nom version 0.3.11.
#[macro_use]
extern crate nom;
use nom::IResult;
use std::env;
use std::fs::File;
#[derive(Debug)]
struct Request<'a> {
method: &'a [u8],
/// Macro emulating `do`-notation for the parser monad, automatically threading the linear type.
///
/// ```ignore
/// parse!{input;
/// parser("parameter");
/// let value = other_parser();
///
/// ret do_something(value);
/// }
/// // equivalent to:
#[macro_use]
extern crate nom;
use nom::IResult;
use std::env;
use std::fs::File;
#[derive(Debug)]
struct Request<'a> {
extern crate combine;
use combine::*;
use combine::primitives::Error;
use combine::combinator::take_while1;
use std::fs::File;
use std::env;
@m4rw3r
m4rw3r / nom_many1_fix_incomplete.diff
Created November 27, 2015 16:42
Nom: Fix for many1 not propagating incomplete state
diff --git a/src/macros.rs b/src/macros.rs
index 7ea9fbd..607ab25 100644
--- a/src/macros.rs
+++ b/src/macros.rs
@@ -1712,14 +1712,27 @@ macro_rules! many1(
{
let mut res = Vec::new();
let mut input = $i;
- while let $crate::IResult::Done(i,o) = $submac!(input, $($args)*) {
- if i.len() == input.len() {