Commit Graph

28382 Commits

Author SHA1 Message Date
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
d7ac94c9da make use of the new nullable expression result by returning null from some sema errors.
Swift SVN r75
2010-07-24 18:49:47 +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
1a74366195 implement semantic analysis support for binops, which amounts to enforcing that the LHS and RHS are both integer operations.
Swift SVN r73
2010-07-24 09:40:46 +00:00
Chris Lattner
05730aaef0 Properly treat tuples types with one element as grouping parens. Teach ActOnParenExpr to do the right type propagation.
Swift SVN r72
2010-07-24 09:34:38 +00:00
Chris Lattner
06faa365a7 Implement sema support for shadowed declarations.
Swift SVN r71
2010-07-24 06:46:48 +00:00
Chris Lattner
64ecbb8a9c Implement AST and trivial Sema support for brace expressions.
Swift SVN r70
2010-07-23 19:39:51 +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
82ea1aefd6 eliminate unneeded complexity.
Swift SVN r66
2010-07-23 04:38:44 +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
ed1be4f17a add printing support for Identifier, switch VarDecl to have an
identifier instead of a stringref.


Swift SVN r63
2010-07-23 03:50:09 +00:00
Chris Lattner
5c28366864 diagnose invalid code like 'var x : void = 4;'
Swift SVN r60
2010-07-22 06:37:39 +00:00
Chris Lattner
842821d541 add FunctionType, have sema create it and have ASTContext
unique it.


Swift SVN r51
2010-07-22 05:44:17 +00:00
Chris Lattner
49b3c52843 implement parser support for function types.
Swift SVN r50
2010-07-22 02:11:49 +00:00
Chris Lattner
c363b58ea1 Introduce TupleType, an AST representation of tuples.
Swift SVN r49
2010-07-22 01:58:01 +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
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
9eb6733531 Exprs have types.
Swift SVN r36
2010-07-19 04:42:58 +00:00
Chris Lattner
a63671f116 add binary expression ast node.
Swift SVN r31
2010-07-19 00:57:54 +00:00
Chris Lattner
17aad28720 set up expression kinds, add ParenExpr ast node.
Swift SVN r30
2010-07-19 00:51:28 +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
66199fa090 implement a new IntegerLiteral ast node, add plumbing for
allocation of exprs from ASTContext.


Swift SVN r28
2010-07-19 00:42:30 +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
8b9b84fe8e forgot to svn add this.
Swift SVN r23
2010-07-18 23:40:44 +00:00
Chris Lattner
68a2d3a33c stub out the Sema object.
Swift SVN r21
2010-07-18 22:59:13 +00:00