Commit Graph

6 Commits

Author SHA1 Message Date
Minero Aoki d3194fb8bd r4853@macbookpro: aamine | 2009-05-17 16:34:27 +0900
* net/loveruby/cflat/parser/Parser.jj: support constant definition.
 * net/loveruby/cflat/ast/Declarations.java: hold constants.
 * net/loveruby/cflat/ast/AST.java: ditto.
 * net/loveruby/cflat/compiler/LocalResolver.java: resolve constants.
 * net/loveruby/cflat/compiler/TypeResolver.java: resolve constants.
 * net/loveruby/cflat/compiler/IRGenerator.java: transform constants reference into literal value.
 * net/loveruby/cflat/compiler/DereferenceChecker.java: check if toplevel variable initializer consists of a literal.
 * net/loveruby/cflat/compiler/DereferenceChecker.java: check if constant value consists of a literal.
 * net/loveruby/cflat/ast/ExprNode.java: new method #isConstant.
 * net/loveruby/cflat/ast/LiteralNode.java: override.
 * net/loveruby/cflat/entity/Entity.java: support Constant.
 * net/loveruby/cflat/entity/Constant.java: new entity.
 * net/loveruby/cflat/entity/EntityVisitor.java: add Constant.
 


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4217 1b9489fe-b721-0410-924e-b54b9192deb8
2009-05-17 07:39:00 +00:00
Minero Aoki e66d1b59d9 * net/loveruby/cflat/entity: new package.
* net/loveruby/cflat/ast: move Entity and its subclasses under entity/.
* net/loveruby/cflat/ast: move Scope and its subclasses under entity/.


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4162 1b9489fe-b721-0410-924e-b54b9192deb8
2009-04-26 17:55:46 +00:00
Minero Aoki cd37fb1f02 * convert all source codes to Java 5 using generics and foreach stmt.
git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@4067 1b9489fe-b721-0410-924e-b54b9192deb8
2008-09-28 18:46:56 +00:00
Minero Aoki 0229e05728 * net/loveruby/cflat/ast/Declarations.java: reject duplicated symbols to support duplicated import.
* net/loveruby/cflat/compiler/LibraryLoader.java: should return previous loaded symbols for the same import file.
* test: test duplicated import.


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@3978 1b9489fe-b721-0410-924e-b54b9192deb8
2008-08-31 06:18:26 +00:00
Minero Aoki 5c5e0c8781 * net/loveruby/cflat/ast/Declarations.java: refactoring: new method #addDefvars.
* net/loveruby/cflat/parser/Parser.jj: use it.


git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@3849 1b9489fe-b721-0410-924e-b54b9192deb8
2008-01-20 16:19:13 +00:00
Minero Aoki dd209e191b import cbc from stdcompiler repository (rev185)
git-svn-id: file:///Users/aamine/c/gitwork/public/cbc/trunk@3753 1b9489fe-b721-0410-924e-b54b9192deb8
2007-12-24 08:19:51 +00:00