Patrick Walton
d7e74b5e91
librustc: Convert all uses of assert
over to fail_unless!
2013-03-07 22:37:57 -08:00
Patrick Walton
30bb09c0e7
test: Remove fn@
, fn~
, and fn&
from the test suite. rs=defun
2013-03-02 18:47:47 -08:00
Seth Pink
dcd2f73560
Fix some struct-tuple def prettyprint issues
...
- Removed space between struct name and parentheses
- Fixed indentation of the rest of the file (missing end)
- Don't print parentheses for structs with no fields
- Added test
2013-03-02 13:32:40 +10:00
Tim Chevalier
d66a3dd0ec
testsuite: Re-xfail record-trailing-comma
...
It was xfailed before the other commits in this pull request,
so no big deal. I'll look into it later.
2013-02-28 21:46:44 -08:00
Tim Chevalier
6b6d15ac20
Remove code that was awaiting a snapshot
...
* Disallow structural records everywhere
* Remove all #[cfg(stage0)] stuff
* Remove the last deprecated modes in libcore
* Un-xfail a test
2013-02-28 20:30:50 -08:00
Patrick Walton
82062a6348
test: De-mut the test suite. rs=demuting
2013-02-22 18:35:01 -08:00
bors
bf27352953
auto merge of #4911 : lifthrasiir/rust/comment-exemptions, r=catamorphism
...
This is a natural extension of #4887 , and handles the following three cases:
~~~~
a line with only /s
////////////////////////////////////////////
a line with only /s followed by whitespace
////////////////////////////////////////////
a block comment with only *s between two /s
/********************************/
~~~~
2013-02-14 16:34:38 -08:00
Nick Desaulniers
4445b38df2
Remove die!, raplace invocations with fail! Issue #4524 pt 3
2013-02-13 17:01:32 -08:00
Kang Seonghoon
6d98ca94cc
libsyntax: don't parse ////, /***/ as doc comments
2013-02-13 11:39:13 +09:00
Seo Sanghyeon
683e7a45a6
Change pretty-exact to pp-exact
2013-02-08 02:56:49 +09:00
Nick Desaulniers
aee7929469
Replace most invocations of fail keyword with die! macro
2013-01-31 20:12:49 -08:00
Niko Matsakis
0682ad0eb9
Finalize moves-based-on-type implementation.
...
Changes:
- Refactor move mode computation
- Removes move mode arguments, unary move, capture clauses
(though they still parse for backwards compatibility)
- Simplify how moves are handled in trans
- Fix a number of illegal copies that cropped up
- Workaround for bug involving def-ids in params
(see details below)
Future work (I'll open bugs for these...):
- Improve error messages for moves that are due
to bindings
- Add support for moving owned content like a.b.c
to borrow check, test in trans (but I think it'll
"just work")
- Proper fix for def-ids in params
Def ids in params:
Move captures into a map instead of recomputing.
This is a workaround for a larger bug having to do with the def-ids associated
with ty_params, which are not always properly preserved when inlining. I am
not sure of my preferred fix for the larger bug yet. This current fix removes
the only code in trans that I know of which relies on ty_param def-ids, but
feels fragile.
2013-01-31 12:09:00 -08:00
Tim Chevalier
3b36708ca7
testsuite: De-record pretty tests
2013-01-28 19:41:56 -08:00
Graydon Hoare
ed686aeac4
tests: relicense .pp files. Oddly not caught during local testing.
2012-12-10 18:15:39 -08:00
Graydon Hoare
d1affff623
Reliciense makefiles and testsuite. Yup.
2012-12-10 17:32:58 -08:00
Tim Chevalier
10ec058638
Remove obsolete comment
2012-12-06 21:52:50 -08:00
Tim Chevalier
39c306eeef
Un-xfail working tests
2012-11-15 19:36:44 -08:00
Niko Matsakis
b0ed151539
Cleanup how we handle proto in types, remove unsound subtyping
...
Fixes #1896 which was never truly fixed, just masked.
The given tests would have failed had they used `~fn()` and
not `@fn()`. They now result in compilation errors.
Fixes #2978 .
Necessary first step for #2202 , #2263 .
2012-11-06 08:56:29 -08:00
Ben Striegel
684d945ab7
Fix a pprint test for fixed-length vecs
2012-10-20 17:50:46 -07:00
Brian Anderson
8337fa1a54
Camel case the option type
2012-08-26 15:56:16 -07:00
Tim Chevalier
e9622f09aa
Remove match check from test cases
2012-08-23 15:12:02 -07:00
Paul Stansifer
29f32b4a72
m1!{...}
-> m1!(...)
2012-08-23 11:14:14 -07:00
Graydon Hoare
8271b3f0c8
More attempts at fixing .. breakage.
2012-08-14 05:17:38 +00:00
Graydon Hoare
20d622835a
Try to fix pretty-test breakage harder.
2012-08-14 04:17:45 +00:00
Graydon Hoare
ad776421ed
Try to fix pretty-test breakage.
2012-08-14 04:15:21 +00:00
Brian Anderson
ecaf9e39c9
Convert alt to match. Stop parsing alt
2012-08-06 15:36:30 -07:00
Brian Anderson
025d86624d
Switch alts to use arrows
2012-08-05 22:08:09 -07:00
Brian Anderson
a52f6d26db
Fix closure pretty-print tests
2012-08-04 17:41:04 -07:00
Brian Anderson
b355936b4d
Convert ret to return
2012-08-01 19:16:06 -07:00
Brian Anderson
567f881fdf
syntax: More tweaks to make alt arrows parse and print correctly
2012-07-31 15:41:26 -07:00
Niko Matsakis
c206d024eb
accept naked exprs with commas in pattern arms
...
pretty printing will use them, but indentation is slightly off
if the expr is long
2012-07-31 15:41:26 -07:00
Paul Stansifer
a9cc5066ee
Change syntax extension syntax: #m[...]
-> m!{...}
.
2012-07-30 18:38:15 -07:00
Patrick Walton
978ca03cb2
Revert "accept naked exprs with commas in pattern arms" due to pretty-printing failures
...
This reverts commit f712b2d76b
.
In alt arms, the parser needs to do a little lookahead to determine
whether it's looking at a record literal or a block.
Also there are some indentation issues in the expected source.
2012-07-19 07:53:55 -07:00
Niko Matsakis
f712b2d76b
accept naked exprs with commas in pattern arms
...
pretty printing will use them, but indentation is slightly off
if the expr is long
2012-07-18 20:16:41 -07:00
Tim Chevalier
e8e143b9d7
Comments only: annotate FIXMEs in tests
2012-07-12 18:09:31 -07:00
Michael Sullivan
0070527383
Pretty print vectors as ~[] instead of []/~. Closes #2863 .
2012-07-10 13:55:19 -07:00
Gareth Daniel Smith
be0141666d
convert doc-attributes to doc-comments using ./src/etc/sugarise-doc-comments.py (and manually tweaking) - for issue #2498
2012-07-04 19:18:13 -07:00
Ben Striegel
f2e2a14f36
Remove empty argument lists from do expressions
2012-07-04 17:21:29 -07:00
Brian Anderson
569467eb0d
Merge remote-tracking branch 'Dretch/prettydocs'
...
Conflicts:
src/compiletest/errors.rs
src/libsyntax/parse/attr.rs
src/libsyntax/parse/comments.rs
src/test/compile-fail/ambig_impl_unify.rs
src/test/compile-fail/assign-super.rs
src/test/compile-fail/bad-for-loop.rs
src/test/compile-fail/bad-var-env-capture-in-block-arg.rs
src/test/compile-fail/block-arg-as-stmt-with-value.rs
src/test/compile-fail/borrowck-assign-comp-idx.rs
src/test/compile-fail/borrowck-lend-flow.rs
src/test/compile-fail/borrowck-loan-blocks-move-cc.rs
src/test/compile-fail/borrowck-loan-blocks-mut-uniq.rs
src/test/compile-fail/borrowck-loan-rcvr.rs
src/test/compile-fail/borrowck-loan-vec-content.rs
src/test/compile-fail/borrowck-mut-vec-as-imm-slice-bad.rs
src/test/compile-fail/cap-clause-with-stack-closure.rs
src/test/compile-fail/do1.rs
src/test/compile-fail/do2.rs
src/test/compile-fail/empty-vec-trailing-comma.rs
src/test/compile-fail/evec-subtyping.rs
src/test/compile-fail/issue-1896.rs
src/test/compile-fail/issue-2149.rs
src/test/compile-fail/issue-2150.rs
src/test/compile-fail/issue-2487-b.rs
src/test/compile-fail/kindck-implicit-close-over-mut-var.rs
src/test/compile-fail/liveness-issue-2163.rs
src/test/compile-fail/liveness-use-in-index-lvalue.rs
src/test/compile-fail/no-reuse-move-arc.rs
src/test/compile-fail/no-send-res-ports.rs
src/test/compile-fail/non-const.rs
src/test/compile-fail/pure-higher-order.rs
src/test/compile-fail/pure-loop-body.rs
src/test/compile-fail/regions-addr-of-upvar-self.rs
src/test/compile-fail/regions-escape-loop-via-vec.rs
src/test/compile-fail/regions-scoping.rs
src/test/compile-fail/seq-args.rs
src/test/compile-fail/tstate-unsat-in-called-fn-expr.rs
src/test/compile-fail/tstate-unsat-in-fn-expr.rs
src/test/compile-fail/vec-add.rs
src/test/compile-fail/vec-concat-bug.rs
src/test/compile-fail/vector-no-ann.rs
2012-07-02 15:23:41 -07:00
Brian Anderson
d1fc2b5995
Convert to new closure syntax
2012-07-01 19:19:32 -07:00
Brian Anderson
a3382b6f26
Eliminate usages of old sugared call syntax
2012-06-30 16:01:49 -07:00
Brian Anderson
8b2491160d
syntax: Pretty-print 'do' correctly
2012-06-30 14:24:24 -07:00
Gareth Daniel Smith
0b653ab953
initial draft of fix for issue #2498 :
...
1. make /// ... and //! ... and /** ... */ and /*! ... */ into sugar for #[doc = ...] attributes.
2. add a script in etc/ to help converting doc-attributes to doc-comments
3. add some functions to core::str to help with (1)
2012-06-30 11:54:54 +01:00
Michael Sullivan
98e161f00e
Switch the compiler over to using ~[] notation instead of []/~. Closes #2759 .
2012-06-29 17:41:45 -07:00
Graydon Hoare
697f1e38d6
Change 'native' and 'crust' to 'extern'.
...
This comes with a terminology change. All linkage-symbols are 'extern'
now, including rust syms in other crates. Some extern ABIs are
merely "foreign". The term "native" is retired, not clear/useful.
What was "crust" is now "extern" applied to a _definition_. This
is a bit of an overloading, but should be unambiguous: it means
that the definition should be made available to some non-rust ABI.
2012-06-26 16:18:37 -07:00
Michael Sullivan
329eca6044
Make vectors uglier ([]/~). Sorry. Should be temporary. Closes #2725 .
2012-06-25 20:00:46 -07:00
Niko Matsakis
50ec6bd2c3
new cap clause syntax
2012-05-04 12:33:08 -07:00
Niko Matsakis
1e42c9a367
Do not consider ty_bot to be a "resolved type".
...
Fixes #2149 . Fixes #2150 . Fixes #2151 .
2012-04-07 17:12:48 -07:00
Graydon Hoare
6e6798c4e1
Bulk-edit mutable -> mut.
2012-03-26 18:35:18 -07:00
Brian Anderson
4e3e13302d
test: Remove pretty/issue-953. Doesn't typecheck
2012-03-19 16:11:46 -07:00
Marijn Haverbeke
67cc89f38d
Rewrite exhaustiveness checker
...
Issue #352
Closes #1720
The old checker would happily accept things like 'alt x { @some(a) { a } }'.
It now properly descends into patterns, checks exhaustiveness of booleans,
and complains when number/string patterns aren't exhaustive.
2012-02-15 15:47:42 +01:00
Brian Anderson
1b3339df63
test: Issue #953 , not #959
2012-02-05 18:29:07 -08:00
Brian Anderson
292f3e0958
test: Add an xfailed test for issue #959
2012-02-05 18:27:15 -08:00
Brian Anderson
cbeeb13dfd
test: Add an xfailed test for issue #929
2012-02-05 18:24:17 -08:00
Graydon Hoare
8fc624bc08
Fix various drift issues in the qq branch.
2012-02-03 20:54:18 -07:00
Paul Woolcock
e1251f7b00
Change all ternary ops to if/then/else
...
All the files below had at least one instance of the ternary operator
present in the source. All have been changed to the equivalent
if/then/else expression.
2012-01-30 18:21:01 +01:00
Paul Woolcock
e1f15a71e3
Alter/remove tests that include/concern ternary
...
3 tests, pretty/block-disambig.rs, run-pass/operator-overloading.rs,
and run-pass/weird-exprs.rs, all included the ternary operator. These
were changed to use the if-then-else construct instead.
2 tests, run-pass/block-arg-in-ternary.rs and run-pass/ternary.rs, were
only there because of the ternary operator, and were removed.
2012-01-30 18:20:05 +01:00
Niko Matsakis
5e13d19cc0
s/block()/fn()/g
2012-01-23 19:06:33 -08:00
Patrick Walton
59ebe6af18
rustc: Make the pretty printer output commas after enum variants. Update all tests accordingly.
2012-01-19 18:41:06 -08:00
Niko Matsakis
882bea5b6d
Rename fn*() to fn() as originally planned.
2012-01-19 07:11:50 -08:00
Brian Anderson
3466c9b4be
rustc: Parse fn inner attributes. Closes #1506
2012-01-15 17:48:58 -08:00
Marijn Haverbeke
d2be5b6c7a
Remove tests for objs, adjust tests that use objs
2012-01-13 11:52:13 +01:00
Patrick Walton
d0fe6723fc
test: Fix test/pretty/tag-blank-lines.rs for the tag -> enum switch
2012-01-10 16:02:49 -08:00
Niko Matsakis
8b911587df
rename sendfn to fn~, lambda to fn@
2012-01-10 13:31:06 -08:00
Graydon Hoare
8387896dda
Remove proto_sugar and 'lambda' as keyword, commit to fn@.
2012-01-09 16:12:48 -08:00
Niko Matsakis
75f84b2563
make test typecheck
2012-01-05 10:44:38 -08:00
Niko Matsakis
e1a0d0f03d
fix pretty printer to correctly insert parens for disamb
2012-01-05 10:44:38 -08:00
Niko Matsakis
810927824c
update test on disambig to reflect that some cases are no longer legal
2012-01-05 10:44:38 -08:00
Niko Matsakis
72a3667eb3
Allow tail expressions even in no_value blocks. Type checker
...
will guarantee they have unit type.
2012-01-03 13:13:52 -08:00
Niko Matsakis
8319b5a252
add cap clause to pretty printer, with a test
2011-12-30 16:25:55 -08:00
Haitao Li
a936f78d98
rustc: Allow trailing comma in record fields
2011-11-22 13:41:17 -08:00
Brian Anderson
906f1fc425
Add regression tests for previously ambiguous syntactic forms
2011-09-15 08:47:23 -07:00
Marijn Haverbeke
3798b6f780
Remove maybe_protect_block kludge from pretty-printer
...
It is no longer needed.
2011-09-15 10:14:52 +02:00
Jesse Ruderman
8e00161819
Make the pretty printer disambiguatae blocks followed by vec expressions.
...
Semicolons are needed here now that postfix [] is used for vec indexing (the syntax change made in rev 518dc52f85
).
2011-09-09 19:47:40 -07:00
Brian Anderson
518dc52f85
Reformat
...
This changes the indexing syntax from .() to [], the vector syntax from ~[] to
[] and the extension syntax from #fmt() to #fmt[]
2011-08-20 11:04:00 -07:00
Brian Anderson
113be53df3
Do better at preserving blank lines during pretty-printing
2011-08-19 10:16:38 -07:00
Brian Anderson
8c3ed8640b
Don't pretty-print extra blank lines after anon object methods
2011-08-19 10:16:38 -07:00
Brian Anderson
b02f1f46e5
Don't pretty-print trailing whitespace for blank lines inside block comments
2011-08-18 19:22:10 -07:00
Brian Anderson
84fb821e40
Try harder to disambig blocks followed by various exprs in pprust. Closes #840
...
As it turns out, it's not just unops we need to worry about. Also tuples and
anything that requires parens.
2011-08-18 18:53:36 -07:00
Graydon Hoare
e8bcca2829
Kill another case of a spurious blank line. Closes #809 .
2011-08-18 17:02:23 -07:00
Brian Anderson
f5ce3bf15d
More misc ivec->vec renaming
2011-08-18 15:01:49 -07:00
Brian Anderson
53eb4a3025
Pretty-print ivecs as []
2011-08-18 13:09:00 -07:00
Brian Anderson
2f61848b24
Add pp test for interleaving comments through vectors. Closes #679
2011-08-16 11:39:04 -07:00
Erick Tryzelaar
491ed7f12c
Port the fuzzer and tests to ivec type [T] syntax.
2011-08-09 15:53:26 -07:00
Erick Tryzelaar
a37e00ed1f
Change the ivec type syntax to [T].
...
This preserves the old syntax for now.
2011-08-09 11:29:36 -07:00
Michael Sullivan
316bf01e26
Fix the pretty print tests to handle terminal newlines. Sorry!
2011-08-03 19:47:54 -07:00
Brian Anderson
843767a841
Disambiguate unop statements in pretty-printer. Closes #674
2011-08-03 10:55:59 -07:00
Brian Anderson
3eef9993af
Don't pp extra lines after block open when preserving whitespace. Closes #759
2011-08-02 17:49:11 -07:00
Brian Anderson
0fbb6782bb
Add dedicated pretty-printer tests with new pp-exact directive
...
Add a new src/test/pretty directory to hold just source files for testing the
pretty-printer.
Add a new pp-exact directive. When this directive is followed by a file name
it specifies a file containing the output that the pretty-printer should
generate. When pp-exact is not followed by a filename it says that the file
should pretty-print as written.
2011-08-02 10:39:13 -07:00