Commit Graph

727 Commits

Author SHA1 Message Date
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