nit.git
14 years agoicode: do no do recursive inline
Jean Privat [Mon, 17 Aug 2009 14:29:05 +0000 (10:29 -0400)]
icode: do no do recursive inline

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoicode: inline methods with closures
Jean Privat [Mon, 10 Aug 2009 19:01:15 +0000 (15:01 -0400)]
icode: inline methods with closures

Warning, break of closure call cannot be inlined.

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agocompile: force inlining with special class Inline__
Jean Privat [Mon, 10 Aug 2009 18:54:41 +0000 (14:54 -0400)]
compile: force inlining with special class Inline__

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoicode: duplicate ICodeN::closure_defs in dup_with
Jean Privat [Mon, 17 Aug 2009 18:50:01 +0000 (14:50 -0400)]
icode: duplicate ICodeN::closure_defs in dup_with

Fix issue with inlining of calls with closures.

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoicode: use the icb to helps the icode duplication
Jean Privat [Fri, 14 Aug 2009 20:48:24 +0000 (16:48 -0400)]
icode: use the icb to helps the icode duplication

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoicode: iroutine knows its local registers
Jean Privat [Mon, 10 Aug 2009 17:14:54 +0000 (13:14 -0400)]
icode: iroutine knows its local registers

iroutine inlining is also adapted to only duplicate local registers.

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoicode: closures are generated within a ICodeBuilder
Jean Privat [Mon, 10 Aug 2009 17:07:26 +0000 (13:07 -0400)]
icode: closures are generated within a ICodeBuilder

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoicode: method inlining moves from IRoutine to ICodeBuilder
Jean Privat [Mon, 10 Aug 2009 16:21:36 +0000 (12:21 -0400)]
icode: method inlining moves from IRoutine to ICodeBuilder

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoicode: fix slot locality for params and return
Jean Privat [Tue, 11 Aug 2009 05:28:11 +0000 (01:28 -0400)]
icode: fix slot locality for params and return

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoicode: 'IRoutine::optimize' need a module
Jean Privat [Mon, 10 Aug 2009 16:01:40 +0000 (12:01 -0400)]
icode: 'IRoutine::optimize' need a module

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoicode: remove method info from ICodeBuilder
Jean Privat [Mon, 10 Aug 2009 14:25:58 +0000 (10:25 -0400)]
icode: remove method info from ICodeBuilder

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoicode: remove method information in IAbort
Jean Privat [Mon, 10 Aug 2009 14:25:17 +0000 (10:25 -0400)]
icode: remove method information in IAbort

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agosyntax: 'do' blocks only accept labelled breaks
Jean Privat [Thu, 6 Aug 2009 19:10:22 +0000 (15:10 -0400)]
syntax: 'do' blocks only accept labelled breaks

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agosyntax: error on local variable masking
Jean Privat [Thu, 6 Aug 2009 14:54:49 +0000 (10:54 -0400)]
syntax: error on local variable masking

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agosyntax: better location for local variable declarations
Jean Privat [Thu, 6 Aug 2009 14:52:29 +0000 (10:52 -0400)]
syntax: better location for local variable declarations

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agosyntax: remove local variable masking
Jean Privat [Tue, 4 Aug 2009 14:02:43 +0000 (10:02 -0400)]
syntax: remove local variable masking

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agosyntax: add 'loop' construction
Jean Privat [Mon, 3 Aug 2009 21:07:41 +0000 (17:07 -0400)]
syntax: add 'loop' construction

Also:
* add test
* update vim

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agolib: rename IndexedCollection to Sequence
Jean Privat [Mon, 3 Aug 2009 20:30:41 +0000 (16:30 -0400)]
lib: rename IndexedCollection to Sequence

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agolib: split hash into hash_collection
Jean Privat [Mon, 3 Aug 2009 18:44:12 +0000 (14:44 -0400)]
lib: split hash into hash_collection

Also update dependency:
* hash depends only on kernel (not string)
* hash_collection depends on array and hash
* string depends on hash

Move String::hash from hash to string

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agolib: new /lib/standard/collection directory
Jean Privat [Mon, 3 Aug 2009 18:09:34 +0000 (14:09 -0400)]
lib: new /lib/standard/collection directory

* Update tests.sh to add the new -I for some base_* tests

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotests: remove broken shootout_pidigits
Jean Privat [Thu, 6 Aug 2009 15:27:43 +0000 (11:27 -0400)]
tests: remove broken shootout_pidigits

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agomisc: vim: better indentation of closures
Jean Privat [Mon, 3 Aug 2009 16:02:05 +0000 (12:02 -0400)]
misc: vim: better indentation of closures

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotests: do not execute while in a sub-processus
Jean Privat [Mon, 3 Aug 2009 14:14:48 +0000 (10:14 -0400)]
tests: do not execute while in a sub-processus

In a sub-processus, shell variable assignment are lost.

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotests: use [ ] instead of [[ ]] in Makefile
Jean Privat [Mon, 3 Aug 2009 14:07:04 +0000 (10:07 -0400)]
tests: use [ ] instead of [[ ]] in Makefile

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotests: update nitdoc sav
Jean Privat [Mon, 3 Aug 2009 14:06:20 +0000 (10:06 -0400)]
tests: update nitdoc sav

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agosyntax: closure are designed by their names, not their ranks
Jean Privat [Sat, 1 Aug 2009 02:44:33 +0000 (22:44 -0400)]
syntax: closure are designed by their names, not their ranks

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agosyntax: [] method can have closure definition
Jean Privat [Sat, 1 Aug 2009 01:55:38 +0000 (21:55 -0400)]
syntax: [] method can have closure definition

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoparser: oneline assignment for 'return' and 'continue'
Jean Privat [Sat, 1 Aug 2009 01:49:49 +0000 (21:49 -0400)]
parser: oneline assignment for 'return' and 'continue'

Example
  fun foo: Int = 5
is equivalent to
  fun foo: Int do return 5
and
  foo !bar = 5
is equivalent to
  foo !bar do continue 5

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoparser: closure syntax use '!' instead of 'with'
Jean Privat [Fri, 31 Jul 2009 20:53:46 +0000 (16:53 -0400)]
parser: closure syntax use '!' instead of 'with'

However, old semantic remains: names are useless, only the order maters.
(cf. new alternatives)

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotests: add base_closure_forms
Jean Privat [Fri, 31 Jul 2009 19:34:39 +0000 (15:34 -0400)]
tests: add base_closure_forms

Is used to illustrate the 3 standard uses of closures.

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotools: return value of nitc for nc
Jean-Sebastien Gelinas [Thu, 30 Jul 2009 19:54:10 +0000 (15:54 -0400)]
tools: return value of nitc for nc

Signed-off-by: Jean-Sebastien Gelinas <calestar@gmail.com>
Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotests: add test for nitdoc
Jean-Sebastien Gelinas [Thu, 30 Jul 2009 15:10:22 +0000 (11:10 -0400)]
tests: add test for nitdoc

Signed-off-by: Jean-Sebastien Gelinas <calestar@gmail.com>
Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotests: reorganize imports for nitc call
Jean-Sebastien Gelinas [Wed, 29 Jul 2009 20:51:30 +0000 (16:51 -0400)]
tests: reorganize imports for nitc call

Signed-off-by: Jean-Sebastien Gelinas <calestar@gmail.com>
Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotests: allow '.write' to be directories
Jean-Sebastien Gelinas [Wed, 29 Jul 2009 19:43:26 +0000 (15:43 -0400)]
tests: allow '.write' to be directories

Signed-off-by: Jean-Sebastien Gelinas <calestar@gmail.com>
Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotests: validate file existence of file to test before tests
Jean-Sebastien Gelinas [Tue, 28 Jul 2009 17:16:56 +0000 (13:16 -0400)]
tests: validate file existence of file to test before tests

Signed-off-by: Jean-Sebastien Gelinas <calestar@gmail.com>
Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoparser: perl code of prescc looks at all parameters in a line
Jean Privat [Thu, 30 Jul 2009 14:08:33 +0000 (10:08 -0400)]
parser: perl code of prescc looks at all parameters in a line

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoparser: correct error messages for syntax errors
Jean Privat [Thu, 30 Jul 2009 13:39:51 +0000 (09:39 -0400)]
parser: correct error messages for syntax errors

And get rid of the useless error_messages table.

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agosyntax: arity missmatch error messages show prototypes
Jean Privat [Wed, 29 Jul 2009 18:16:19 +0000 (14:16 -0400)]
syntax: arity missmatch error messages show prototypes

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoparser: remove attr and meth alternatives
Jean Privat [Thu, 30 Jul 2009 01:48:39 +0000 (21:48 -0400)]
parser: remove attr and meth alternatives

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoparser: fix test_parser
Jean Privat [Wed, 29 Jul 2009 13:54:16 +0000 (09:54 -0400)]
parser: fix test_parser

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoparser: import only location, not the whole mmloader
Jean Privat [Wed, 29 Jul 2009 13:53:50 +0000 (09:53 -0400)]
parser: import only location, not the whole mmloader

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoparser: node locations are not nullable
Jean Privat [Wed, 29 Jul 2009 13:50:18 +0000 (09:50 -0400)]
parser: node locations are not nullable

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoparser: compute location for all nodes
Jean Privat [Wed, 29 Jul 2009 13:40:56 +0000 (09:40 -0400)]
parser: compute location for all nodes

Also remove first_token and last_token.

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoparser: also visit EOF token
Jean Privat [Wed, 29 Jul 2009 02:48:26 +0000 (22:48 -0400)]
parser: also visit EOF token

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotools: showerr.sh to colorize nc* outputs
Jean Privat [Wed, 29 Jul 2009 02:46:55 +0000 (22:46 -0400)]
tools: showerr.sh to colorize nc* outputs

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotools: correctly display multiline locations
Jean Privat [Wed, 29 Jul 2009 02:45:15 +0000 (22:45 -0400)]
tools: correctly display multiline locations

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoparser: remove useless printl method
Jean Privat [Mon, 27 Jul 2009 20:43:41 +0000 (16:43 -0400)]
parser: remove useless printl method

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoparser: use xss comments to clean make output
Jean Privat [Mon, 27 Jul 2009 14:40:14 +0000 (10:40 -0400)]
parser: use xss comments to clean make output

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoparser: remove spaces errors in generated files
Jean Privat [Thu, 30 Jul 2009 01:38:37 +0000 (21:38 -0400)]
parser: remove spaces errors in generated files

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agosyntax: vararg arguments are processed by icode
Jean Privat [Tue, 28 Jul 2009 13:26:47 +0000 (09:26 -0400)]
syntax: vararg arguments are processed by icode

syntax/typing.nit does the type verification only.
syntax/icode_generation generate the implicit Array for vararg.

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agosyntax: generalize and publicize raw_arguments concept
Jean Privat [Mon, 27 Jul 2009 19:56:32 +0000 (15:56 -0400)]
syntax: generalize and publicize raw_arguments concept

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotests: use most recent nitc if not supplied
Jean-Sebastien Gelinas [Fri, 24 Jul 2009 16:50:43 +0000 (12:50 -0400)]
tests: use most recent nitc if not supplied

Signed-off-by: Jean-Sebastien Gelinas <calestar@gmail.com>
Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotests: better handling of 'make failed' when no failed tests
Jean-Sebastien Gelinas [Fri, 24 Jul 2009 15:30:59 +0000 (11:30 -0400)]
tests: better handling of 'make failed' when no failed tests

Signed-off-by: Jean-Sebastien Gelinas <calestar@gmail.com>
Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotests: do not overwrite 'errlist' on hard exit
Jean-Sebastien Gelinas [Fri, 24 Jul 2009 05:15:39 +0000 (01:15 -0400)]
tests: do not overwrite 'errlist' on hard exit

Signed-off-by: Jean-Sebastien Gelinas <calestar@gmail.com>
Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotests: allow multiple lines in argument files
Jean-Sebastien Gelinas [Thu, 23 Jul 2009 16:37:03 +0000 (12:37 -0400)]
tests: allow multiple lines in argument files

Signed-off-by: Jean-Sebastien Gelinas <calestar@gmail.com>
Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotools: add test to validate existence of needed classes
Jean-Sebastien Gelinas [Fri, 24 Jul 2009 04:19:59 +0000 (00:19 -0400)]
tools: add test to validate existence of needed classes

Signed-off-by: Jean-Sebastien Gelinas <calestar@gmail.com>
Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotools: add 'get_type_by_name' and 'get_instantiated_type_by_name'
Jean-Sebastien Gelinas [Fri, 24 Jul 2009 04:19:18 +0000 (00:19 -0400)]
tools: add 'get_type_by_name' and 'get_instantiated_type_by_name'

Signed-off-by: Jean-Sebastien Gelinas <calestar@gmail.com>
Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoicode: discard unused pure ICode expressions
Jean Privat [Mon, 27 Jul 2009 06:59:57 +0000 (02:59 -0400)]
icode: discard unused pure ICode expressions

Up to now, only unused IMove expressions where discarded.
So we also distinguish pure ICode from non pure ICode.

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoicode: all tagged primitive types can use the bool slots
Jean Privat [Mon, 27 Jul 2009 07:38:22 +0000 (03:38 -0400)]
icode: all tagged primitive types can use the bool slots

Also rename bool_slots to tag_slots.

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoicode: add lit_{null,true,false}_reg
Jean Privat [Mon, 27 Jul 2009 06:40:44 +0000 (02:40 -0400)]
icode: add lit_{null,true,false}_reg

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agomisc: update vim syntax
Jean Privat [Mon, 27 Jul 2009 07:37:18 +0000 (03:37 -0400)]
misc: update vim syntax

* fix aaaAAAaaa coloration
* error of unmatched { and } in superstrings
* better color for labels
* add once keyword
* better categorisations

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agosyntax: handle labels for 'do'
Jean Privat [Mon, 27 Jul 2009 04:23:24 +0000 (00:23 -0400)]
syntax: handle labels for 'do'

Error message for 'break closures' was changed and reused for 'do'.

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agosyntax: handle labels for for, while and closures
Jean Privat [Mon, 27 Jul 2009 03:41:19 +0000 (23:41 -0400)]
syntax: handle labels for for, while and closures

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoAdd 'label' syntax construction
Jean Privat [Sun, 26 Jul 2009 03:39:41 +0000 (23:39 -0400)]
Add 'label' syntax construction

A label can be used in 'break' and 'continue' statements
A label can be declared in 'for', 'while', 'do' and closure constructions.

Note that in grouped closures, only the last closure is labeled but
it applies to all closures of the group:

 foo with do
   a
 with do
   b
 end label xxx

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoparser: add copyright info to parser_nodes.nit
Jean Privat [Sun, 26 Jul 2009 05:10:47 +0000 (01:10 -0400)]
parser: add copyright info to parser_nodes.nit

Since it is now clearly no more generated.

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoparser: update readme
Jean Privat [Sun, 26 Jul 2009 05:09:30 +0000 (01:09 -0400)]
parser: update readme

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoparser: rename all P* prod classes to A*
Jean Privat [Sun, 26 Jul 2009 04:41:57 +0000 (00:41 -0400)]
parser: rename all P* prod classes to A*

Now, A stands for AST, not alternative :)

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoparser: remove parser_nodes.nit autopatcher
Jean Privat [Sun, 26 Jul 2009 04:14:40 +0000 (00:14 -0400)]
parser: remove parser_nodes.nit autopatcher

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoparser: differentiate all P* and A* production classes
Jean Privat [Wed, 20 May 2009 21:06:00 +0000 (16:06 -0500)]
parser: differentiate all P* and A* production classes

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agosyntax: syntax tree is trashed once no more needed
Jean Privat [Sun, 26 Jul 2009 02:32:05 +0000 (22:32 -0400)]
syntax: syntax tree is trashed once no more needed

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agosyntax: nodes are not directly stored in MMSrc* classes
Jean Privat [Sun, 26 Jul 2009 02:31:20 +0000 (22:31 -0400)]
syntax: nodes are not directly stored in MMSrc* classes

MMSrcModules has to manage the MMSrc->AST associations.

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agosyntax: use chained nodes for MMSrcClasses instead of an array
Jean Privat [Sun, 26 Jul 2009 01:48:25 +0000 (21:48 -0400)]
syntax: use chained nodes for MMSrcClasses instead of an array

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agosyntax: remove attribute _node in MMSrcAncestor
Jean Privat [Sun, 26 Jul 2009 01:13:38 +0000 (21:13 -0400)]
syntax: remove attribute _node in MMSrcAncestor

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agosyntax: remove class MMSrcTypeFormalParameter
Jean Privat [Sun, 26 Jul 2009 01:12:27 +0000 (21:12 -0400)]
syntax: remove class MMSrcTypeFormalParameter

Use a standard MMTypeFormalParameter instead.

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoicode: generate null receiver runtime checks
Jean Privat [Sun, 26 Jul 2009 03:07:58 +0000 (23:07 -0400)]
icode: generate null receiver runtime checks

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoicode: introduce intermediate code representation
Jean Privat [Sun, 26 Jul 2009 00:32:21 +0000 (20:32 -0400)]
icode: introduce intermediate code representation

Missing parts are mainly:
 * identify bests ICode classes
 * keep casted variable static type in icode
 * remove MMSrc* classes dependency on AST

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agocompile: optimize strings in add_instr
Jean Privat [Sun, 26 Jul 2009 00:32:10 +0000 (20:32 -0400)]
compile: optimize strings in add_instr

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotests: base_attr_iset tests construction check errors
Jean Privat [Sat, 25 Jul 2009 17:16:40 +0000 (13:16 -0400)]
tests: base_attr_iset tests construction check errors

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agosyntax: some cleaning to prepare intermediate code
Jean Privat [Fri, 24 Jul 2009 10:15:22 +0000 (06:15 -0400)]
syntax: some cleaning to prepare intermediate code

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agolib: redef Array::add (a faster version)
Jean Privat [Fri, 24 Jul 2009 09:38:17 +0000 (05:38 -0400)]
lib: redef Array::add (a faster version)

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotests: new base_vararg, remove test_star
Jean Privat [Thu, 23 Jul 2009 03:03:18 +0000 (23:03 -0400)]
tests: new base_vararg, remove test_star

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoparser: optimize lexer.nit
Jean Privat [Thu, 23 Jul 2009 22:10:48 +0000 (18:10 -0400)]
parser: optimize lexer.nit

Use local variables instead of attribute accesses.
Direct access some array internal items.

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agosrc: remove nc0 and nc1
Jean Privat [Thu, 23 Jul 2009 22:36:19 +0000 (18:36 -0400)]
src: remove nc0 and nc1

Now nc starts from c_src/nitc instead of bin/nitc.
Rationale is that one wants to check that the compiler can really bootstrap.

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotools: remove 'locate' from nodes and visitor
Jean-Sebastien Gelinas [Thu, 16 Jul 2009 18:45:51 +0000 (14:45 -0400)]
tools: remove 'locate' from nodes and visitor

Signed-off-by: Jean-Sebastien Gelinas <calestar@gmail.com>
Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotools: add 'relative_to' to Locations
Jean-Sebastien Gelinas [Thu, 16 Jul 2009 16:35:46 +0000 (12:35 -0400)]
tools: add 'relative_to' to Locations

Signed-off-by: Jean-Sebastien Gelinas <calestar@gmail.com>
Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotools: add 'fatal_error' to ToolContext and visitor
Jean-Sebastien Gelinas [Fri, 10 Jul 2009 16:09:29 +0000 (12:09 -0400)]
tools: add 'fatal_error' to ToolContext and visitor

Signed-off-by: Jean-Sebastien Gelinas <calestar@gmail.com>
Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotools: order messages by line number/column
Jean-Sebastien Gelinas [Thu, 23 Jul 2009 05:29:08 +0000 (01:29 -0400)]
tools: order messages by line number/column

Trivial hack by Jean Privat <jean@pryen.org>:
Rename _sorter as _message_sorter

Signed-off-by: Jean-Sebastien Gelinas <calestar@gmail.com>
Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotools: group message output
Jean-Sebastien Gelinas [Fri, 10 Jul 2009 16:25:51 +0000 (12:25 -0400)]
tools: group message output

Signed-off-by: Jean-Sebastien Gelinas <calestar@gmail.com>
Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotools: errors and warnings need Location
Jean-Sebastien Gelinas [Mon, 13 Jul 2009 14:05:59 +0000 (10:05 -0400)]
tools: errors and warnings need Location

Signed-off-by: Jean-Sebastien Gelinas <calestar@gmail.com>
Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotools: add useful functions to Location
Jean-Sebastien Gelinas [Thu, 23 Jul 2009 05:15:43 +0000 (01:15 -0400)]
tools: add useful functions to Location

Signed-off-by: Jean-Sebastien Gelinas <calestar@gmail.com>
Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotools: add Location to MMModule
Jean-Sebastien Gelinas [Thu, 23 Jul 2009 05:25:30 +0000 (01:25 -0400)]
tools: add Location to MMModule

Signed-off-by: Jean-Sebastien Gelinas <calestar@gmail.com>
Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotools: move Location in its own file
Jean-Sebastien Gelinas [Thu, 23 Jul 2009 05:24:36 +0000 (01:24 -0400)]
tools: move Location in its own file

Signed-off-by: Jean-Sebastien Gelinas <calestar@gmail.com>
Signed-off-by: Jean Privat <jean@pryen.org>

14 years agometamodel: new MMMethod::is_intern & is_abstract
Jean Privat [Wed, 15 Jul 2009 15:45:12 +0000 (11:45 -0400)]
metamodel: new MMMethod::is_intern & is_abstract

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agosyntax: add PClosureDecl::position
Jean Privat [Wed, 15 Jul 2009 15:32:38 +0000 (11:32 -0400)]
syntax: add PClosureDecl::position

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agocompile: promote add_assignment and out_contexts
Jean Privat [Wed, 15 Jul 2009 15:28:30 +0000 (11:28 -0400)]
compile: promote add_assignment and out_contexts

Move them from compiling_methods to compiling_base.

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agocompile: new package primitive_info
Jean Privat [Wed, 15 Jul 2009 15:16:49 +0000 (11:16 -0400)]
compile: new package primitive_info

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agolib: improve list iterator
Jean Privat [Fri, 10 Jul 2009 19:48:07 +0000 (15:48 -0400)]
lib: improve list iterator

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoparser: add Visitor::current_node and Visitor::enter_visit
Jean Privat [Wed, 15 Jul 2009 15:11:39 +0000 (11:11 -0400)]
parser: add Visitor::current_node and Visitor::enter_visit

Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotools: new ToolContext::check_errors
Jean-Sebastien Gelinas [Mon, 13 Jul 2009 14:10:19 +0000 (10:10 -0400)]
tools: new ToolContext::check_errors

Signed-off-by: Jean-Sebastien Gelinas <calestar@gmail.com>
Signed-off-by: Jean Privat <jean@pryen.org>

14 years agotools: cleanup after insertion of 'Location' class
Jean-Sebastien Gelinas [Sat, 11 Jul 2009 04:59:10 +0000 (00:59 -0400)]
tools: cleanup after insertion of 'Location' class

Signed-off-by: Jean-Sebastien Gelinas <calestar@gmail.com>
Signed-off-by: Jean Privat <jean@pryen.org>