John Clements
7e4cd09e2e
added MTWT functions
2013-04-16 10:06:06 -07:00
John Clements
313a5ab946
move interner_key macro
2013-04-16 10:06:05 -07:00
John Clements
48e7bda826
path -> Path
2013-04-10 09:15:04 -07:00
Daniel Micay
cc148b58ff
rename Linear{Map,Set} => Hash{Map,Set}
2013-04-03 10:30:36 -04:00
Daniel Micay
44029a5bbc
hashmap: rm linear namespace
2013-04-03 10:30:18 -04:00
Alex Crichton
e4c3d805a4
syntax: Removing uses of HashMap
2013-03-26 19:20:02 -04:00
Patrick Walton
85c9fc6f8f
librustc: Remove the const
declaration form everywhere
2013-03-22 22:24:35 -07:00
Patrick Walton
eba3367404
libsyntax: Introduce the new assert!
macro; make assert
no longer a keyword
2013-03-22 22:24:34 -07:00
Patrick Walton
e7c60c141b
librustc: Remove pure
from libsyntax and librustc.
2013-03-22 12:57:27 -07:00
Andrew Paseltiner
e2abecd3ab
syntax: replace uses of old deriving attribute with new one
2013-03-22 06:30:59 -04:00
Brian Anderson
9c7e16e48d
Remove the log keyword (by renaming it to __log)
...
We can't quite remove logging from the language, but this hides the
keyword.
2013-03-11 23:19:42 -07:00
John Clements
a040b8005f
add deriving_eq for tokens
2013-03-07 14:46:46 -08:00
Erick Tryzelaar
4a73426aa2
libsyntax: add &self to parser methods
2013-03-03 15:25:08 -08:00
Erick Tryzelaar
7d0ec86c4a
Merge remote-tracking branch 'remotes/origin/incoming' into incoming
2013-02-27 11:03:21 -08:00
Erick Tryzelaar
4ae91e2961
libsyntax: add explicit copies
2013-02-26 20:48:11 -08:00
John Clements
08b6057538
Macros now leave scope
...
Macro scope is now delimited by function, block, and module boundaries,
except for modules that are marked with #[macro_escape], which allows
macros to escape.
2013-02-26 10:36:55 -08:00
Erick Tryzelaar
375c298297
libsyntax: change binop_to_str to be pure
2013-02-26 03:22:14 -08:00
Erick Tryzelaar
ff36986fa4
libsyntax: change token fns to take &Token
2013-02-26 01:51:41 -08:00
Erick Tryzelaar
d346b51997
libsyntax: change token::to_str to take &Token
2013-02-26 01:29:27 -08:00
Erick Tryzelaar
f3965829ff
libsyntax: change flip_delimiter to take a &token::Token
2013-02-25 22:08:09 -08:00
Erick Tryzelaar
9da641bd8c
libsyntax: convert interner into a modern struct
2013-02-19 10:02:50 -08:00
Luqman Aden
3a19eef496
libsyntax: Remove move as a keyword.
2013-02-15 02:49:55 -08:00
Patrick Walton
9143688197
librustc: Replace impl Type : Trait
with impl Trait for Type
. rs=implflipping
2013-02-14 14:44:12 -08:00
bors
6efa3543a8
auto merge of #4922 : jbclements/rust/add-deriving-eq-to-asts, r=catamorphism
...
r?
Apply deriving_eq to the data structures in ast.rs, and get rid of the custom definitions of eq that were everywhere. resulting ast.rs is about 400 lines shorter.
Also: add a few test cases and a bunch of comments.
Also: change ast_ty_to_ty_cache to use node ids rather than ast::ty's. I believe this was a suggestion related to my changes, and it appears to pass all tests.
Also: tiny doc fix, remove references to crate keywords.
2013-02-13 18:49:29 -08:00
Nick Desaulniers
4445b38df2
Remove die!, raplace invocations with fail! Issue #4524 pt 3
2013-02-13 17:01:32 -08:00
John Clements
ded95d2c28
deriving_eq for tokens and binops
...
Note that the replaced definition of equality on tokens
contains a *huge* shortcut on INTERPOLATED tokens (those
that contain ASTs), whereby any two INTERPOLATED tokens
are considered equal. This seems like a really broken
notion of equality, but it appears that the existing
test cases and the compiler don't depend on it. Niko
noticed this, BTW.
Replace long definition of Eq on tokens and binops
w
2013-02-13 15:08:27 -08:00
John Clements
25c4676dfa
Commenting, test cases, cleanup
2013-02-13 15:08:27 -08:00
bors
d6442e97a5
auto merge of #4854 : thestinger/rust/oldmap, r=catamorphism
2013-02-09 15:02:51 -08:00
Daniel Micay
a32c5c73ee
oldmap: get rid of legacy _ref suffixes
2013-02-08 19:12:51 -05:00
Niko Matsakis
14930fbffe
Add and lex LIFETIME tokens
...
cc #4846
2013-02-08 06:02:35 -08:00
Daniel Micay
2e496818a5
oldmap: get rid of the legacy each_key method
2013-02-03 15:55:10 -05:00
Daniel Micay
319eeb1c79
rename map -> oldmap and mark it as deprecated
...
LinearMap is quite a bit faster, and is fully owned/sendable without
requiring copies. The older std::map also doesn't use explicit self and
relies on mutable fields.
2013-02-03 15:55:10 -05:00
Nick Desaulniers
7868b6bf55
Remove fail keyword from lexer & parser and clean up remaining calls to
...
fail
Fix merge conflicts - Issue 4524
2013-02-01 00:15:42 -08:00
Nick Desaulniers
aee7929469
Replace most invocations of fail keyword with die! macro
2013-01-31 20:12:49 -08:00
Patrick Walton
49472ec4c9
librustc: Remove legacy exports from the language. r=brson
2013-01-30 18:11:43 -08:00
Patrick Walton
95b892c8a7
libsyntax: De-export a lot of libsyntax. rs=deëxporting
2013-01-29 13:55:30 -08:00
Youngsoo Son
4b2aa286d8
Make super
a keyword
2013-01-24 16:07:04 +09:00
Patrick Walton
154488df19
libsyntax: Implement assert
as a macro (called fail_unless!
on a transitionary basis to avoid conflicting with the keyword right now). r=brson
2013-01-23 14:46:24 -08:00
Patrick Walton
982830c836
librustc: Allow the type parameter version of Self
to be spelled with a capital S
2013-01-10 10:37:22 -08:00
Patrick Walton
2db3abddcd
librustc: Make unqualified identifier searches terminate at the nearest module scope. r=tjc
2013-01-08 22:02:35 -08:00
Patrick Walton
44ab00ee37
Revert "librustc: Make unqualified identifier searches terminate at the nearest module scope. r=tjc"
...
This reverts commit a8d37af247
.
2013-01-08 19:29:16 -08:00
Patrick Walton
a8d37af247
librustc: Make unqualified identifier searches terminate at the nearest module scope. r=tjc
2013-01-08 19:27:57 -08:00
Patrick Walton
57c599914a
librustc: Terminate name searches at the nearest module scope for paths that contain at least two components. r=graydon
2012-12-27 10:02:54 -08:00
Erick Tryzelaar
8650c6f683
Switch from serialization to std::serialize. (snapshot)
2012-12-17 20:00:36 -08:00
Graydon Hoare
e24ae85025
syntax: remove most code handling old-style syntax extensions.
2012-12-12 15:02:47 -08:00
Patrick Walton
56ece46f7d
librustc: Remove all legacy pattern bindings from libsyntax and librustc. rs=refactoring
2012-12-04 14:19:19 -08:00
Graydon Hoare
00c856c0b1
Update license, add license boilerplate to most files. Remainder will follow.
2012-12-03 17:12:14 -08:00
Graydon Hoare
ce24d37759
syntax: slight improvement in fidelity of printing tokens. Still not great.
2012-11-29 12:09:11 -08:00
Paul Stansifer
15e03e1e5e
Forbid attrs on macros, since we don't handle them properly yet.
2012-11-29 12:09:11 -08:00
Brian Anderson
fc06114ddf
Merge remote-tracking branch 'brson/companion' into incoming
...
Conflicts:
src/compiletest/compiletest.rs
src/libcargo/cargo.rs
src/libcore/core.rs
src/librustc/rustc.rs
src/librustdoc/rustdoc.rc
2012-11-28 13:17:33 -08:00
Brian Anderson
8179e268ef
Register snapshots
2012-11-28 12:33:00 -08:00
Patrick Walton
61cfec3c52
librustc: Parse extern "C" { ... }
. r=brson
2012-11-28 11:28:16 -08:00
Patrick Walton
318e534895
rustc: Implement explicit self for Eq and Ord. r=graydon
2012-11-19 15:33:11 -08:00
Patrick Walton
fe02814a63
rustc: Implement floating point literal inference. r=nmatsakis
2012-11-12 10:39:08 -08:00
Patrick Walton
be93b29d30
rustc: Implement parsing and typechecking for "once fn"
2012-11-05 13:17:02 -08:00
Patrick Walton
599b4208fb
rustc: Translate tuple struct constructors
2012-10-25 11:49:26 -07:00
Patrick Walton
91ae5412d8
rustc: Merge module and type namespaces. r=brson
2012-10-15 15:35:36 -07:00
Tim Chevalier
15d8457104
Merge pull request #3700 from erickt/cargo-interner
...
allow interner cache to be shared across parsers (#3699 )
2012-10-09 14:50:01 -07:00
Tim Chevalier
22efa39382
Revert "Revert "Remove old auto_serialize2 code (needs snapshot)""
...
This reverts commit a33535e441
.
2012-10-08 17:43:45 -07:00
Tim Chevalier
a33535e441
Revert "Remove old auto_serialize2 code (needs snapshot)"
...
This reverts commit 0bd6da8a8c
.
2012-10-08 11:58:54 -07:00
Erick Tryzelaar
1ac75d2269
allow interner cache to be shared across parsers ( #3699 )
2012-10-08 10:42:13 -07:00
Erick Tryzelaar
0bd6da8a8c
Remove old auto_serialize2 code (needs snapshot)
2012-10-07 17:20:19 -07:00
Erick Tryzelaar
eb626e7119
Remove the old serializers (needs snapshot)
2012-10-07 17:20:19 -07:00
Erick Tryzelaar
e1c517ca48
migrate libsyntax/rustc to auto_serialize2
2012-10-07 10:32:25 -07:00
Tim Chevalier
45345bda6a
Remove uses of mutable ref mode.
...
It's still in the compiler right now, but warned about
2012-10-05 16:57:37 -07:00
Tim Chevalier
f8bc0d2545
Revert "wip"
...
This reverts commit ca49fd402a
.
2012-10-05 16:10:08 -07:00
Tim Chevalier
ca49fd402a
wip
2012-10-05 15:39:12 -07:00
Erick Tryzelaar
b96af73159
turn ast::ident into a struct
...
This will help with the auto_serialize2 migration. We have to change
ident from a type alias to uint into a unique type. We need to use
a struct instead of a "enum ident = token::str_num" because structs
support constants, but newtypes do not.
2012-09-26 16:20:24 -07:00
Brian Anderson
afd91f8a56
Register snapshots. Remove redundant Eq impls, Makefile hacks
2012-09-23 23:01:49 -07:00
Niko Matsakis
0a26edca75
Fix trans for region patterns (&P)
2012-09-23 13:30:20 -05:00
Graydon Hoare
dffe188991
Install new pub/priv/export rules as defaults, old rules accessible under #[legacy_exports];
2012-09-21 18:11:43 -07:00
Patrick Walton
9117dcb968
rustc: De-mode all overloaded operators
2012-09-20 09:48:05 -07:00
Brian Anderson
1397dca2dd
core: Move TLS to task::local_data
2012-09-19 19:08:32 -07:00
Niko Matsakis
cfed923600
demode the each() method on vec and other iterables.
2012-09-19 17:03:01 -07:00
Graydon Hoare
1ffd90edbc
Remove redundant hashmap constructor functions.
2012-09-19 15:51:44 -07:00
Brian Anderson
0c82c00dc4
libsyntax: Remove the restricted keyword concept
2012-09-19 11:44:05 -07:00
Brian Anderson
76f8cfb26c
libsyntax: Move 'unsafe' to the strict keywords list
2012-09-19 11:44:05 -07:00
Brian Anderson
2906f2de31
core: Rename 'unsafe' mod to 'cast'
2012-09-18 19:36:25 -07:00
Brian Anderson
d0d8b7fe64
Remove 'unchecked' keyword
2012-09-18 11:31:58 -07:00
Brian Anderson
d71179f410
Promote 'fail' to a strict keyword
2012-09-13 17:10:01 -07:00
Brian Anderson
7568dd4564
Promote 'const', 'copy', 'fn' to strict keywords
2012-09-12 16:00:22 -07:00
Brian Anderson
3057790f4b
Rename 'contextual' keywords to 'temporary'
2012-09-12 15:22:34 -07:00
Brian Anderson
be1fdf983f
Promote 'impl' from restricted keyword to strict
2012-09-11 19:28:44 -07:00
Brian Anderson
3d2a74a160
Reserve 'be' as a keyword
2012-09-11 19:26:48 -07:00
Brian Anderson
fb851242b7
Promote 'pub' and 'priv' from restricted to strict keywords
2012-09-11 18:17:26 -07:00
Brian Anderson
27cc0a36b6
Promote 'struct' from a restricted keyword to a strict keyword
2012-09-11 17:15:33 -07:00
Brian Anderson
298eb8c726
Convert 'import' to 'use'. Remove 'import' keyword.
2012-09-10 19:04:26 -07:00
Brian Anderson
1a8a0a77b1
Camel case std::serialization
2012-09-10 19:02:57 -07:00
Brian Anderson
df79026169
Promote 'return' from a restricted keyword to a strict keyword
2012-09-10 17:27:10 -07:00
Brian Anderson
cb7a5395dd
Convert std::map to camel case
2012-09-10 17:08:36 -07:00
Brian Anderson
ef9aa80438
Promote most restricted keywords to strict keywords
2012-09-10 12:07:19 -07:00
Brian Anderson
901543ff89
Reformat comments
2012-09-09 17:42:00 -07:00
Brian Anderson
e7a01b7383
Introduce 'strict' keywords, that may not be used as idents anywhere
2012-09-09 17:35:56 -07:00
Brian Anderson
528373b79b
Turn most contextual keywords into restricted keywords
2012-09-09 16:53:47 -07:00
Brian Anderson
3bd1f32cd9
Convert all kind bounds to camel case. Remove send, owned keywords.
2012-09-07 18:10:11 -07:00
Brian Anderson
2810ea9a68
Convert 'again' to 'loop'. Remove 'again' keyword
2012-09-07 17:39:03 -07:00
Graydon Hoare
5d823d46ad
Migrate std::map to use core: #️⃣ :Hash trait. Disable many hokey hashes.
2012-09-07 17:24:16 -07:00
Brian Anderson
249668f223
Remove module keyword
2012-09-07 16:53:21 -07:00
Patrick Walton
feb014eb3c
rustc: Add an "ne" method to the Eq trait, and implement it everywhere
2012-09-07 12:24:48 -07:00
Brian Anderson
b4e547d71a
Remove struct ctors
2012-09-06 10:52:26 -07:00
Brian Anderson
200959d7ce
Remove 'with'
2012-09-04 15:47:04 -07:00
Brian Anderson
ab9cf45a7c
syntax: Remove 'of' and 'check' from keyword table
2012-09-04 15:43:46 -07:00
Patrick Walton
8ff18acc82
libsyntax: "import" -> "use"
2012-09-04 11:43:23 -07:00
Brian Anderson
7fb1a4e2d1
Camel case core::intrinsic
2012-09-02 15:19:52 -07:00
Brian Anderson
80c4f74c29
Remove the 'to' keyword
2012-09-01 18:38:18 -07:00
Patrick Walton
96534365c2
rustc: Make <
and =
into traits
2012-08-29 18:25:22 -07:00
Tim Chevalier
cb8ecd7984
Allow extern mods to be anonymous
...
extern mod {
f();
}
is now allowed, and puts f in the enclosing scope. (Requires a
link_name attribute to be really useful...)
2012-08-29 12:22:05 -07:00
Brian Anderson
8337fa1a54
Camel case the option type
2012-08-26 15:56:16 -07:00
Paul Stansifer
aa024acae3
Use a faked-up function as a key, because functions aren't identical cross-crate in Windows.
2012-08-24 12:20:06 -07:00
Paul Stansifer
1153b5dcc8
intern identifiers
2012-08-22 14:59:25 -07:00
Paul Stansifer
7317bf8792
pre-intern some fixed names so they can be used as constants
2012-08-22 14:59:24 -07:00
Paul Stansifer
9a7890d73a
Centralize ident interner generation.
2012-08-22 14:59:24 -07:00
Lindsey Kuper
eb834fdb81
Stop parsing iface
.
2012-08-17 14:32:34 -07:00
Brian Anderson
3ab4b014cf
Remove the class keyword
2012-08-17 10:13:45 -07:00
Brian Anderson
ecaf9e39c9
Convert alt to match. Stop parsing alt
2012-08-06 15:36:30 -07:00
Eric Holk
517ad983f9
Handle interpolated paths in pattern parsing. Fixes #3007 .
...
We might need to use is_ident_or_path in a for other places too.
2012-08-06 13:25:34 -07:00
Brian Anderson
025d86624d
Switch alts to use arrows
2012-08-05 22:08:09 -07:00
Patrick Walton
e02b1b1ec8
rustc: Parse and typecheck repeating vector expressions; e.g. [ 0, ..512 ]
2012-08-03 18:03:19 -07:00
Patrick Walton
dfe1f6260e
rustc: Remove all fixed-length strings from our codebase
2012-08-03 11:22:35 -07:00
Lindsey Kuper
19570ab1f0
Revert "Remove "iface" from keyword table."
...
This reverts commit 51b9674ed7
.
2012-08-02 18:42:09 -07:00
Lindsey Kuper
51b9674ed7
Remove "iface" from keyword table.
2012-08-02 18:10:07 -07:00
Brian Anderson
b355936b4d
Convert ret to return
2012-08-01 19:16:06 -07:00
Patrick Walton
b414db041b
rustc: Parse by-reference pattern bindings with the "ref" keyword
2012-07-31 19:26:25 -07:00
Patrick Walton
c88933d714
rustc: Implement unary move. Closes #917 .
2012-07-31 17:33:20 -07:00
Brian Anderson
7b2026bf21
Introduce 'return', 'match' and 'module' as synonyms
2012-07-31 17:22:30 -07:00
Paul Stansifer
0bd6371155
Now you can use whatever delimiter you want to invoke syntax extensions.
2012-07-31 14:07:59 -07:00
Paul Stansifer
c2f49c46ae
Avoid accidentally printing floating point numbers as 10.f
.
2012-07-31 11:49:20 -07:00
Paul Stansifer
e040ab8423
Impl-ize interner.
2012-07-30 18:04:19 -07:00
Brian Anderson
ef29f7ff36
syntax: Fix semicolon printing. Closes #3036
2012-07-30 16:09:52 -07:00
Graydon Hoare
e11e90f31c
Make macro-system type and constructor names more uniform; more comments.
2012-07-27 19:14:46 -07:00
Patrick Walton
db020ab63c
rustc: Implement and enforce instance coherence
2012-07-17 15:46:43 -07:00
Niko Matsakis
0e42004bab
introduce an owned kind for data that contains no borrowed ptrs
2012-07-16 20:18:18 -07:00
Niko Matsakis
41a21f053c
remove typestate from code, tests, and docs
2012-07-14 17:37:20 -07:00
Michael Sullivan
92743dc2a6
Move the world over to using the new style string literals and types. Closes #2907 .
2012-07-14 01:03:43 -07:00
Michael Sullivan
2ea9c8df0f
Accept prefix notation for writing the types of str/~ and friends.
2012-07-12 16:52:26 -07:00
Paul Stansifer
773e3df310
Fix some lookahead problems with ACTUALLY tokens.
2012-07-10 14:26:38 -07:00
Paul Stansifer
caa83b41bb
Add support for matchers nonterminals.
2012-07-09 17:44:46 -07:00
Graydon Hoare
638036fe55
Remove 'cont' from parser/lexer.
2012-07-09 14:47:45 -07:00
Graydon Hoare
ceac155211
For #2229 , recognize 'again' in place of 'cont', final change pending snapshot.
2012-07-06 15:46:39 -07:00
Eric Holk
fa4134611d
Fixing an infinite type, updating code to match new Early parser, remembering to add protocol parser.
2012-07-06 10:42:40 -07:00
Eric Holk
d09bcc0131
Adding token tree nonterminals to earley parser.
2012-07-06 10:42:40 -07:00
Paul Stansifer
7f9b1fbe35
Add new syntax for interpolation and repetition, and allow the transcription of separators.
2012-07-05 18:09:31 -07:00
Paul Stansifer
62db5706e6
Start letting the parser catch interpolated ASTs.
2012-07-05 18:09:31 -07:00
Paul Stansifer
0c6fe6470e
Macro By Example transcription of token trees with interpolations and dotdotdots.
2012-07-05 18:09:31 -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
Graydon Hoare
3f59a4bc64
More work on #2082 , remove parser/lexer support for 'crust' and 'native'.
2012-07-03 16:49:46 -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
3155d170ad
syntax: Fix lambda parsing following 'ret'
2012-06-30 21:20:36 -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
d3c6119a7a
More keyword paring and migration in runtime, docs, code modes.
2012-06-27 13:30:49 -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
Paul Stansifer
4f104954a6
parsing for the macro system
2012-06-25 18:01:37 -07:00
Tim Chevalier
da470ff5b8
Merge
2012-06-25 13:29:41 -07:00
Tim Chevalier
487cbf8e90
Remove resources
...
Also fixed shapes for classes with dtors, as well as handling
offsets for classes with dtors correctly in take glue.
Closes #2485
2012-06-24 15:09:57 -07:00
Graydon Hoare
f60cdf27e7
Remove 'implements' keyword in favour of :, part of #2301 .
2012-06-22 18:57:20 -07:00
Brian Anderson
4dcf84e4f4
Remove bind. Issue #2189
2012-06-20 17:27:28 -07:00
Brian Anderson
1ec5a5c635
Add 'do' expressions
2012-06-18 17:42:30 -07:00
Paul Stansifer
d6522ab2d3
Beginning of support for interpolation into token trees.
2012-06-15 12:41:41 -07:00
Paul Stansifer
473b1ec0a0
Make token trees parseable.
2012-06-15 12:41:41 -07:00
Lindsey Kuper
77e6573929
Further work on integer literal suffix inference ( #1425 )
...
In this commit:
* Change the lit_int_unsuffixed AST node to not carry a type, since
it doesn't need one
* Don't print "(unsuffixed)" when pretty-printing unsuffixed integer
literals
* Just print "I" instead of "(integral)" for integral type variables
* Set up trans to use the information that will be gathered during
typeck to construct the appropriate constants for unsuffixed int
literals
* Add logic for handling int_ty_sets in typeck::infer
* Clean up unnecessary code in typeck::infer
* Add missing mk_ functions to middle::ty
* Add ty_var_integral to a few of the type utility functions it was
missing from in middle::ty
2012-06-14 20:24:36 -07:00
Lindsey Kuper
b75199634a
syntax: minor cleanups; making things more idiomatic
2012-06-11 16:49:35 -07:00
Lindsey Kuper
8467279fac
Add a new AST node for unsuffixed integer types.
2012-06-11 16:34:56 -07:00
Brian Anderson
21087bf1a5
syntax: Intern @strs instead of strs
2012-06-09 00:53:34 -07:00
Niko Matsakis
bede54b14a
misc. copies in core/syntax to please borrowck
2012-06-06 18:36:15 -07:00
Patrick Walton
ae6d8d1b4d
rustc: Implement optional fat-arrow syntax for alt (transitional change)
2012-06-04 18:35:14 -07:00
Graydon Hoare
57f399bd63
Implement 2 kinds of char / str escaping. Use in rustc. Close #2306 .
2012-05-31 15:32:29 -07:00
Kevin Cantu
7dcbaedd32
Rename librustsyntax to libsyntax
...
Per issue #2418 .
2012-05-31 11:15:00 -07:00