Chris Lattner
94110869e0
add support for parsing attribute lists, and add the first attribute, infix=42. It is now parsed and slammed into the AST, but not used.
...
Swift SVN r79
2010-07-24 20:44:56 +00:00
Chris Lattner
2bafb0e8fb
Introduce new NamedDecl and FuncDecl classes. The difference between the two is syntactic sugar, so most clients want NamedDecl. This doesn't implement FuncDecl yet, which isn't a high prio for me in the short term.
...
Swift SVN r77
2010-07-24 19:09:09 +00:00
Chris Lattner
9a0d6c735a
change the handling of nullable so that hte parser actually checks for the error and only invokes sema if the inputs are valid, tidying up some code.
...
Swift SVN r76
2010-07-24 18:52:46 +00:00
Chris Lattner
315107d5c6
Use the new NullablePtr<> class to allow better error recovery when parsing invalid expressions.
...
Swift SVN r74
2010-07-24 18:48:37 +00:00
Chris Lattner
1103ff5227
Implement basic parser support for brace expressions.
...
Swift SVN r69
2010-07-23 18:33:49 +00:00
Chris Lattner
58185415a1
now that we have name lookup, we can implement references to
...
other values. crazzay.
Swift SVN r67
2010-07-23 05:48:20 +00:00
Chris Lattner
f248ffb53a
Introduce a scope abstraction, the next step to implementing
...
name lookup.
Swift SVN r65
2010-07-23 04:37:16 +00:00
Chris Lattner
7ff4cc6e21
split the decl processing stuff in Sema out into a new
...
SemaDecl class where it belongs. Tidy up headers a bit.
Swift SVN r64
2010-07-23 04:13:53 +00:00
Chris Lattner
d8c6da6a3c
tweak comments. void is no longer in the AST, but it shouldn't even
...
be a keyword
Swift SVN r61
2010-07-22 06:51:03 +00:00
Chris Lattner
0380f7a073
fix inverted logic
...
Swift SVN r59
2010-07-22 06:34:08 +00:00
Chris Lattner
ac1200cda5
rename Token::getLocation() to Token::getLoc()
...
Swift SVN r54
2010-07-22 05:55:04 +00:00
Chris Lattner
49b3c52843
implement parser support for function types.
...
Swift SVN r50
2010-07-22 02:11:49 +00:00
Chris Lattner
b1d25371e3
type things as VarDecl instead of as Decl, return things by value from
...
void parse methods.
Swift SVN r48
2010-07-22 00:47:53 +00:00
Chris Lattner
aa126e87f9
add a new SemaType module, add parser support for tuples.
...
Add lexer support for ->. Expand the testcase.
Swift SVN r47
2010-07-21 07:17:43 +00:00
Chris Lattner
f7c8e53359
implement isa/dyncast and dumping support for exprs.
...
We can now parse and print this:
var x3 = 4+5*4+12/97;
into:
(vardecl 'x3'
(binary_expr
(binary_expr
(integer_literal 4)
(binary_expr
(integer_literal 5)
(integer_literal 4)))
(binary_expr
(integer_literal 12)
(integer_literal 97))))
Swift SVN r46
2010-07-19 06:52:08 +00:00
Chris Lattner
a3795e1540
actually invoke the ast consumer.
...
Swift SVN r42
2010-07-19 05:53:48 +00:00
Chris Lattner
669c129ab0
introduce new ASTConsumer interface, have parser invoke methods
...
on it.
Swift SVN r41
2010-07-19 05:50:41 +00:00
Chris Lattner
2264640f12
fix a fixme by sinking some sema into sema.
...
Swift SVN r40
2010-07-19 05:15:29 +00:00
Chris Lattner
2eeee5faca
give ASTContext a SourceMgr reference, add diagnostic hooks to SemaBase.
...
Swift SVN r39
2010-07-19 05:13:55 +00:00
Chris Lattner
c5e54442b4
make the parser actually create VarDecl AST nodes.
...
Swift SVN r38
2010-07-19 05:08:21 +00:00
Chris Lattner
a3164a1a1a
add void type.
...
Swift SVN r35
2010-07-19 04:40:47 +00:00
Chris Lattner
9e8489a042
make the parser build type asts.
...
Swift SVN r34
2010-07-19 04:37:51 +00:00
Chris Lattner
a63671f116
add binary expression ast node.
...
Swift SVN r31
2010-07-19 00:57:54 +00:00
Chris Lattner
a39a7ec6a2
make the sema methods be prefixed with ActOn
...
Swift SVN r29
2010-07-19 00:46:09 +00:00
Chris Lattner
d6edeb7a8b
thread Expr* results through the parser and SemaExpr.
...
Swift SVN r27
2010-07-19 00:15:02 +00:00
Chris Lattner
910f84b6ae
thread astcontext from the driver, down through Sema.
...
Swift SVN r26
2010-07-19 00:07:47 +00:00
Chris Lattner
b45fe8abf5
set up semaexpr and sema base. Give SemaExpr a couple trivial methods.
...
Swift SVN r24
2010-07-18 23:54:47 +00:00
Chris Lattner
c02e462b58
wire sema up to the Parser.
...
Swift SVN r22
2010-07-18 23:00:47 +00:00
Chris Lattner
66fe17ffdb
parse some trivial binary expression, like:
...
var x3 = 4+5*4+12/97;
Swift SVN r20
2010-07-18 22:55:11 +00:00
Chris Lattner
3e53d83874
implement support for parenthesized expressions.
...
Swift SVN r19
2010-07-18 22:36:34 +00:00
Chris Lattner
9460c31203
implement enough parser support to parse:
...
var x : int;
var x2 = 4;
Swift SVN r16
2010-07-18 21:31:34 +00:00
Chris Lattner
5450892284
Set up trivial parser support stuff and sketch out a few
...
productions. We can now get this far:
simple.swift:4:5: error: expected a top level declaration
var x : int;
^
simple.swift:5:5: error: expected a top level declaration
var x2 = 4;
^
Yay for amazing error recovery!
Swift SVN r14
2010-07-18 21:00:30 +00:00
Chris Lattner
05f5028b7a
stub out a parser hook.
...
Swift SVN r13
2010-07-18 20:17:04 +00:00
Chris Lattner
afc81c1855
initial checkin, nothing much to see here.
...
Swift SVN r4
2010-07-18 00:04:11 +00:00