Skip to content

Commit 99efb94

Browse files
committed
---
yaml --- r: 41586 b: refs/heads/master c: 9e5a416 h: refs/heads/master v: v3
1 parent be9023d commit 99efb94

File tree

2 files changed

+8
-6
lines changed

2 files changed

+8
-6
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: af298deff7141c3b8b95acb94ef2145d2ef9adc0
2+
refs/heads/master: 9e5a4166d5bf0ebad622535a6619e12014fc6470
33
refs/heads/snap-stage1: e33de59e47c5076a89eadeb38f4934f58a3618a6
44
refs/heads/snap-stage3: 2f46b763da2c098913884f101b6d71d69af41b49
55
refs/heads/try: 3d5418789064fdb463e872a4e651af1c628a3650

trunk/src/libcore/extfmt.rs

Lines changed: 7 additions & 5 deletions
Original file line numberDiff line numberDiff line change
@@ -214,17 +214,19 @@ pub mod ct {
214214
err: ErrorFn) ->
215215
Parsed<Piece> {
216216
let parm = parse_parameter(s, i, lim);
217-
let flags = parse_flags(s, parm.next, lim);
218-
let width = parse_count(s, flags.next, lim);
217+
// avoid copying ~[Flag] by destructuring
218+
let Parsed {val: flags_val, next: flags_next} = parse_flags(s,
219+
parm.next, lim);
220+
let width = parse_count(s, flags_next, lim);
219221
let prec = parse_precision(s, width.next, lim);
220222
let ty = parse_type(s, prec.next, lim, err);
221-
return Parsed::new(
223+
Parsed::new(
222224
PieceConv(Conv {param: parm.val,
223-
flags: copy flags.val,
225+
flags: flags_val,
224226
width: width.val,
225227
precision: prec.val,
226228
ty: ty.val}),
227-
ty.next);
229+
ty.next)
228230
}
229231
pub fn parse_parameter(s: &str, i: uint, lim: uint) ->
230232
Parsed<Option<uint>> {

0 commit comments

Comments
 (0)