Skip to content

Commit f7e017a

Browse files
committed
---
yaml --- r: 940 b: refs/heads/master c: 3e01b2d h: refs/heads/master v: v3
1 parent 59b8c0d commit f7e017a

File tree

3 files changed

+27
-17
lines changed

3 files changed

+27
-17
lines changed

[refs]

Lines changed: 1 addition & 1 deletion
Original file line numberDiff line numberDiff line change
@@ -1,2 +1,2 @@
11
---
2-
refs/heads/master: c0741c13abe687667f28557c85386a97eaf276e4
2+
refs/heads/master: 3e01b2d529a81ac7b2d7ba3deb5d1f116efc7b34

trunk/src/Makefile

Lines changed: 10 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -536,6 +536,9 @@ TEST_XFAILS_SELF := $(filter-out \
536536
uint.rs \
537537
unit.rs \
538538
while-and-do-while.rs \
539+
) \
540+
$(addprefix test/compile-fail/, \
541+
arg-count-mismatch.rs \
539542
), \
540543
$(wildcard test/*/*.rs test/*/*.rc))
541544

@@ -772,6 +775,13 @@ test/compile-fail/%-boot.llvm.out.tmp: test/compile-fail/%.rs $(BREQ)
772775
$(CFG_QUIET)grep --text --quiet \
773776
"`awk -F: '/error-pattern/ { print $$2 }' $< | tr -d '\n\r'`" $@
774777

778+
test/compile-fail/%.llvm.out.tmp: test/compile-fail/%.rs $(BREQ)
779+
@$(call CFG_ECHO, compile [rustc]: $<)
780+
$(CFG_QUIET)rm -f $@
781+
$(BOOT) -o $(@:.out=$(CFG_EXE_SUFFIX)) $< >$@ 2>&1 || true
782+
$(CFG_QUIET)grep --text --quiet \
783+
"`awk -F: '/error-pattern/ { print $$2 }' $< | tr -d '\n\r'`" $@
784+
775785
test/run-pass/%-boot.x86$(CFG_EXE_SUFFIX): test/run-pass/%.rc $(BREQ)
776786
@$(call CFG_ECHO, compile [boot x86]: $<)
777787
$(BOOT) -o $@ $<

trunk/src/comp/middle/typeck.rs

Lines changed: 16 additions & 16 deletions
Original file line numberDiff line numberDiff line change
@@ -821,67 +821,67 @@ fn demand_expr(&fn_ctxt fcx, @ty expected, @ast.expr e) -> @ast.expr {
821821

822822
alt (e.node) {
823823
case (ast.expr_vec(?es, ?ann)) {
824-
auto t = demand(fcx, e.span, ann_to_type(ann), expected);
824+
auto t = demand(fcx, e.span, expected, ann_to_type(ann));
825825
e_1 = ast.expr_vec(es, ast.ann_type(t));
826826
}
827827
case (ast.expr_tup(?es, ?ann)) {
828-
auto t = demand(fcx, e.span, ann_to_type(ann), expected);
828+
auto t = demand(fcx, e.span, expected, ann_to_type(ann));
829829
e_1 = ast.expr_tup(es, ast.ann_type(t));
830830
}
831831
case (ast.expr_rec(?es, ?ann)) {
832-
auto t = demand(fcx, e.span, ann_to_type(ann), expected);
832+
auto t = demand(fcx, e.span, expected, ann_to_type(ann));
833833
e_1 = ast.expr_rec(es, ast.ann_type(t));
834834
}
835835
case (ast.expr_call(?sube, ?es, ?ann)) {
836-
auto t = demand(fcx, e.span, ann_to_type(ann), expected);
836+
auto t = demand(fcx, e.span, expected, ann_to_type(ann));
837837
e_1 = ast.expr_call(sube, es, ast.ann_type(t));
838838
}
839839
case (ast.expr_binary(?bop, ?lhs, ?rhs, ?ann)) {
840-
auto t = demand(fcx, e.span, ann_to_type(ann), expected);
840+
auto t = demand(fcx, e.span, expected, ann_to_type(ann));
841841
e_1 = ast.expr_binary(bop, lhs, rhs, ast.ann_type(t));
842842
}
843843
case (ast.expr_unary(?uop, ?sube, ?ann)) {
844-
auto t = demand(fcx, e.span, ann_to_type(ann), expected);
844+
auto t = demand(fcx, e.span, expected, ann_to_type(ann));
845845
e_1 = ast.expr_unary(uop, sube, ast.ann_type(t));
846846
}
847847
case (ast.expr_lit(?lit, ?ann)) {
848-
auto t = demand(fcx, e.span, ann_to_type(ann), expected);
848+
auto t = demand(fcx, e.span, expected, ann_to_type(ann));
849849
e_1 = ast.expr_lit(lit, ast.ann_type(t));
850850
}
851851
case (ast.expr_cast(?sube, ?ast_ty, ?ann)) {
852-
auto t = demand(fcx, e.span, ann_to_type(ann), expected);
852+
auto t = demand(fcx, e.span, expected, ann_to_type(ann));
853853
e_1 = ast.expr_cast(sube, ast_ty, ast.ann_type(t));
854854
}
855855
case (ast.expr_if(?cond, ?then, ?els, ?ann)) {
856-
auto t = demand(fcx, e.span, ann_to_type(ann), expected);
856+
auto t = demand(fcx, e.span, expected, ann_to_type(ann));
857857
e_1 = ast.expr_if(cond, then, els, ast.ann_type(t));
858858
}
859859
case (ast.expr_while(?cond, ?bloc, ?ann)) {
860-
auto t = demand(fcx, e.span, ann_to_type(ann), expected);
860+
auto t = demand(fcx, e.span, expected, ann_to_type(ann));
861861
e_1 = ast.expr_while(cond, bloc, ast.ann_type(t));
862862
}
863863
case (ast.expr_do_while(?bloc, ?cond, ?ann)) {
864-
auto t = demand(fcx, e.span, ann_to_type(ann), expected);
864+
auto t = demand(fcx, e.span, expected, ann_to_type(ann));
865865
e_1 = ast.expr_do_while(bloc, cond, ast.ann_type(t));
866866
}
867867
case (ast.expr_block(?bloc, ?ann)) {
868-
auto t = demand(fcx, e.span, ann_to_type(ann), expected);
868+
auto t = demand(fcx, e.span, expected, ann_to_type(ann));
869869
e_1 = ast.expr_block(bloc, ast.ann_type(t));
870870
}
871871
case (ast.expr_assign(?lhs, ?rhs, ?ann)) {
872-
auto t = demand(fcx, e.span, ann_to_type(ann), expected);
872+
auto t = demand(fcx, e.span, expected, ann_to_type(ann));
873873
e_1 = ast.expr_assign(lhs, rhs, ast.ann_type(t));
874874
}
875875
case (ast.expr_field(?lhs, ?rhs, ?ann)) {
876-
auto t = demand(fcx, e.span, ann_to_type(ann), expected);
876+
auto t = demand(fcx, e.span, expected, ann_to_type(ann));
877877
e_1 = ast.expr_field(lhs, rhs, ast.ann_type(t));
878878
}
879879
case (ast.expr_index(?base, ?index, ?ann)) {
880-
auto t = demand(fcx, e.span, ann_to_type(ann), expected);
880+
auto t = demand(fcx, e.span, expected, ann_to_type(ann));
881881
e_1 = ast.expr_index(base, index, ast.ann_type(t));
882882
}
883883
case (ast.expr_name(?name, ?d, ?ann)) {
884-
auto t = demand(fcx, e.span, ann_to_type(ann), expected);
884+
auto t = demand(fcx, e.span, expected, ann_to_type(ann));
885885
e_1 = ast.expr_name(name, d, ast.ann_type(t));
886886
}
887887
case (_) {

0 commit comments

Comments
 (0)