Skip to content

Commit e002ac4

Browse files
committed
---
yaml --- r: 22599 b: refs/heads/master c: df7ce33 h: refs/heads/master i: 22597: 74b9e5a 22595: 93a591f 22591: 0c4285a v: v3
1 parent 257e9c8 commit e002ac4

File tree

6 files changed

+12
-853
lines changed

6 files changed

+12
-853
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,5 +1,5 @@
11
---
2-
refs/heads/master: 30d94fe9a2fe9c526e63700da3f3012f579caafd
2+
refs/heads/master: df7ce33b3dc6455ce954100241b3b3494295674e
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
44
refs/heads/snap-stage3: cd6f24f9d14ac90d167386a56e7a6ac1f0318195
55
refs/heads/try: ffbe0e0e00374358b789b0037bcb3a577cd218be

trunk/src/rustdoc/astsrv.rs

Lines changed: 11 additions & 73 deletions
Original file line numberDiff line numberDiff line change
@@ -20,8 +20,6 @@ import syntax::ast_map;
2020
import rustc::back::link;
2121
import rustc::metadata::filesearch;
2222
import rustc::front;
23-
import rustc::middle::resolve;
24-
import rustc::middle::resolve3;
2523

2624
export ctxt;
2725
export ctxt_handler;
@@ -32,9 +30,7 @@ export exec;
3230

3331
type ctxt = {
3432
ast: @ast::crate,
35-
ast_map: ast_map::map,
36-
exp_map: resolve::exp_map,
37-
impl_map: resolve::impl_map
33+
ast_map: ast_map::map
3834
};
3935

4036
type srv_owner<T> = fn(srv: srv) -> T;
@@ -72,12 +68,11 @@ fn run<T>(owner: srv_owner<T>, source: ~str, +parse: parser) -> T {
7268
}
7369

7470
fn act(po: comm::port<msg>, source: ~str, parse: parser) {
75-
let (sess, ignore_errors) = build_session();
71+
let sess = build_session();
7672

7773
let ctxt = build_ctxt(
7874
sess,
79-
parse(sess, source),
80-
ignore_errors
75+
parse(sess, source)
8176
);
8277

8378
let mut keep_going = true;
@@ -107,41 +102,34 @@ fn exec<T:send>(
107102
}
108103

109104
fn build_ctxt(sess: session,
110-
ast: @ast::crate,
111-
ignore_errors: @mut bool) -> ctxt {
105+
ast: @ast::crate) -> ctxt {
112106

113107
import rustc::front::config;
114108

115109
let ast = config::strip_unconfigured_items(ast);
116110
let ast = front::test::modify_for_testing(sess, ast);
117111
let ast_map = ast_map::map_crate(sess.diagnostic(), *ast);
118-
*ignore_errors = true;
119-
let {exp_map, impl_map, _} = resolve3::resolve_crate(sess, ast_map, ast);
120-
*ignore_errors = false;
121112

122113
{
123114
ast: ast,
124115
ast_map: ast_map,
125-
exp_map: exp_map,
126-
impl_map: impl_map
127116
}
128117
}
129118

130-
fn build_session() -> (session, @mut bool) {
119+
fn build_session() -> session {
131120
let sopts: @options = basic_options();
132121
let codemap = codemap::new_codemap();
133122
let error_handlers = build_error_handlers(codemap);
134-
let {emitter, span_handler, ignore_errors} = error_handlers;
123+
let {emitter, span_handler} = error_handlers;
135124

136125
let session = driver::build_session_(sopts, codemap, emitter,
137126
span_handler);
138-
(session, ignore_errors)
127+
session
139128
}
140129

141130
type error_handlers = {
142131
emitter: diagnostic::emitter,
143-
span_handler: diagnostic::span_handler,
144-
ignore_errors: @mut bool
132+
span_handler: diagnostic::span_handler
145133
};
146134

147135
// Build a custom error handler that will allow us to ignore non-fatal
@@ -152,16 +140,13 @@ fn build_error_handlers(
152140

153141
type diagnostic_handler = {
154142
inner: diagnostic::handler,
155-
ignore_errors: @mut bool
156143
};
157144

158145
impl of diagnostic::handler for diagnostic_handler {
159146
fn fatal(msg: ~str) -> ! { self.inner.fatal(msg) }
160147
fn err(msg: ~str) { self.inner.err(msg) }
161148
fn bump_err_count() {
162-
if !(*self.ignore_errors) {
163-
self.inner.bump_err_count();
164-
}
149+
self.inner.bump_err_count();
165150
}
166151
fn has_errors() -> bool { self.inner.has_errors() }
167152
fn abort_if_errors() { self.inner.abort_if_errors() }
@@ -175,25 +160,20 @@ fn build_error_handlers(
175160
}
176161
}
177162

178-
let ignore_errors = @mut false;
179163
let emitter = fn@(cmsp: option<(codemap::codemap, codemap::span)>,
180164
msg: ~str, lvl: diagnostic::level) {
181-
if !(*ignore_errors) {
182-
diagnostic::emit(cmsp, msg, lvl);
183-
}
165+
diagnostic::emit(cmsp, msg, lvl);
184166
};
185167
let inner_handler = diagnostic::mk_handler(some(emitter));
186168
let handler = {
187169
inner: inner_handler,
188-
ignore_errors: ignore_errors
189170
};
190171
let span_handler = diagnostic::mk_span_handler(
191172
handler as diagnostic::handler, codemap);
192173

193174
{
194175
emitter: emitter,
195-
span_handler: span_handler,
196-
ignore_errors: ignore_errors
176+
span_handler: span_handler
197177
}
198178
}
199179

@@ -217,48 +197,6 @@ fn srv_should_build_ast_map() {
217197
}
218198
}
219199
220-
#[test]
221-
fn srv_should_build_reexport_map() {
222-
let source = ~"import a::b; export b; mod a { mod b { } }";
223-
do from_str(source) |srv| {
224-
do exec(srv) |ctxt| {
225-
assert ctxt.exp_map.size() != 0u
226-
};
227-
}
228-
}
229-
230-
#[test]
231-
fn srv_should_resolve_external_crates() {
232-
let source = ~"use std;\
233-
fn f() -> std::sha1::sha1 {\
234-
std::sha1::mk_sha1() }";
235-
// Just testing that resolve doesn't crash
236-
from_str(source, |_srv| { } )
237-
}
238-
239-
#[test]
240-
fn srv_should_resolve_core_crate() {
241-
let source = ~"fn a() -> option { fail }";
242-
// Just testing that resolve doesn't crash
243-
from_str(source, |_srv| { } )
244-
}
245-
246-
#[test]
247-
fn srv_should_resolve_non_existant_imports() {
248-
// XXX: XFAIL'd
249-
250-
// We want to ignore things we can't resolve. Shouldn't
251-
// need to be able to find external crates to create docs.
252-
//let source = ~"import wooboo; fn a() { }";
253-
//from_str(source, |_srv| { } )
254-
}
255-
256-
#[test]
257-
fn srv_should_resolve_non_existant_uses() {
258-
let source = ~"use forble; fn a() { }";
259-
from_str(source, |_srv| { } )
260-
}
261-
262200
#[test]
263201
fn should_ignore_external_import_paths_that_dont_exist() {
264202
let source = ~"use forble; import forble::bippy;";

0 commit comments

Comments
 (0)