Skip to content

Commit

Permalink
Merge branch 'compiletest-update' of https://github.com/alexcrichton/…
Browse files Browse the repository at this point in the history
…rust into update-cargo
  • Loading branch information
alexcrichton committed Mar 7, 2018
2 parents d2ae289 + 632811b commit 9c23b7a
Show file tree
Hide file tree
Showing 4 changed files with 15 additions and 12 deletions.
8 changes: 5 additions & 3 deletions Cargo.toml
Original file line number Diff line number Diff line change
Expand Up @@ -10,11 +10,13 @@ filetime = "0.1"
getopts = "0.2"
log = "0.4"
regex = "0.2"
rustc-serialize = "0.3"
serde = "1.0"
serde_json = "1.0"
serde_derive = "1.0"

[target.'cfg(unix)'.dependencies]
libc = "0.2"

[target.'cfg(windows)'.dependencies]
miow = "0.2"
winapi = "0.2"
miow = "0.3"
winapi = { version = "0.3", features = ["winerror"] }
13 changes: 6 additions & 7 deletions src/json.rs
Original file line number Diff line number Diff line change
Expand Up @@ -9,25 +9,24 @@
// except according to those terms.

use errors::{Error, ErrorKind};
use rustc_serialize::json;
use serde_json;
use std::str::FromStr;
use std::path::Path;
use runtest::ProcRes;

// These structs are a subset of the ones found in
// `syntax::json`.

#[derive(RustcEncodable, RustcDecodable)]
#[derive(Deserialize)]
struct Diagnostic {
message: String,
code: Option<DiagnosticCode>,
level: String,
spans: Vec<DiagnosticSpan>,
children: Vec<Diagnostic>,
rendered: Option<String>,
}

#[derive(RustcEncodable, RustcDecodable, Clone)]
#[derive(Deserialize, Clone)]
struct DiagnosticSpan {
file_name: String,
line_start: usize,
Expand All @@ -40,7 +39,7 @@ struct DiagnosticSpan {
expansion: Option<Box<DiagnosticSpanMacroExpansion>>,
}

#[derive(RustcEncodable, RustcDecodable, Clone)]
#[derive(Deserialize, Clone)]
struct DiagnosticSpanMacroExpansion {
/// span where macro was applied to generate this code
span: DiagnosticSpan,
Expand All @@ -49,7 +48,7 @@ struct DiagnosticSpanMacroExpansion {
macro_decl_name: String,
}

#[derive(RustcEncodable, RustcDecodable, Clone)]
#[derive(Deserialize, Clone)]
struct DiagnosticCode {
/// The code itself.
code: String,
Expand All @@ -67,7 +66,7 @@ fn parse_line(file_name: &str, line: &str, output: &str, proc_res: &ProcRes) ->
// The compiler sometimes intermingles non-JSON stuff into the
// output. This hack just skips over such lines. Yuck.
if line.starts_with('{') {
match json::decode::<Diagnostic>(line) {
match serde_json::from_str::<Diagnostic>(line) {
Ok(diagnostic) => {
let mut expected_errors = vec![];
push_expected_errors(&mut expected_errors, &diagnostic, &[], file_name);
Expand Down
4 changes: 3 additions & 1 deletion src/main.rs
Original file line number Diff line number Diff line change
Expand Up @@ -21,8 +21,10 @@ extern crate getopts;
extern crate libc;
#[macro_use]
extern crate log;
extern crate rustc_serialize;
extern crate regex;
#[macro_use]
extern crate serde_derive;
extern crate serde_json;
extern crate test;

use std::env;
Expand Down
2 changes: 1 addition & 1 deletion src/read2.rs
Original file line number Diff line number Diff line change
Expand Up @@ -119,7 +119,7 @@ mod imp {
use self::miow::iocp::{CompletionPort, CompletionStatus};
use self::miow::pipe::NamedPipe;
use self::miow::Overlapped;
use self::winapi::ERROR_BROKEN_PIPE;
use self::winapi::shared::winerror::ERROR_BROKEN_PIPE;

struct Pipe<'a> {
dst: &'a mut Vec<u8>,
Expand Down

0 comments on commit 9c23b7a

Please sign in to comment.