nit.git
14 years agomisc: update Changelog and NOTICE; remove BUGS and TODO
Jean Privat [Tue, 25 Aug 2009 15:18:06 +0000 (11:18 -0400)]
misc: update Changelog and NOTICE; remove BUGS and TODO

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

14 years agotools: add ncall.sh script to execute nc* in order
Jean Privat [Tue, 25 Aug 2009 14:41:16 +0000 (10:41 -0400)]
tools: add ncall.sh script to execute nc* in order

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

14 years agomisc: new syntax file for GNU source-highlight
Jean Privat [Tue, 25 Aug 2009 14:40:08 +0000 (10:40 -0400)]
misc: new syntax file for GNU source-highlight

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

14 years agosyntax: break closures are implicitly ended with 'break'
Jean Privat [Mon, 24 Aug 2009 03:08:45 +0000 (23:08 -0400)]
syntax: break closures are implicitly ended with 'break'

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

14 years agosyntax: fix 'break' with value in default closures
Jean Privat [Mon, 24 Aug 2009 03:00:32 +0000 (23:00 -0400)]
syntax: fix 'break' with value in default closures

Break return type and return value is associated with the method return
type and return value.

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

14 years agosyntax: allow untyped variable declaration
Jean Privat [Thu, 20 Aug 2009 02:29:55 +0000 (22:29 -0400)]
syntax: allow untyped variable declaration

It means there is now a distinction between variables with a null static
type because of a previous error and untyped variables that also have null
static type. So introduce Variable::is_typed.

Enhance check_is_set with untyped variable verification.

Compile untyped variable as 'nullable Object' registers.

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

14 years agosyntax: assign variable even if there is no base type
Jean Privat [Thu, 20 Aug 2009 02:13:10 +0000 (22:13 -0400)]
syntax: assign variable even if there is no base type

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

14 years agolib: remove exec::kill and exec::term
Jean Privat [Wed, 19 Aug 2009 19:46:22 +0000 (15:46 -0400)]
lib: remove exec::kill and exec::term

Nobody use them now and they cause GCC warning.

Also modify c_src/exec._sep.c since a macro disapeared in lib/standard/exec_nit.h.

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

14 years agoparser: set LANG=C for sed in Makefile (the sed that rename P* -> A*)
Jean Privat [Wed, 19 Aug 2009 19:27:34 +0000 (15:27 -0400)]
parser: set LANG=C for sed in Makefile (the sed that rename P* -> A*)

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

14 years agotests: fix test_extern.nit for 64bits
Jean Privat [Wed, 19 Aug 2009 19:19:14 +0000 (15:19 -0400)]
tests: fix test_extern.nit for 64bits

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

14 years agogc: fix gc.c for 64bits
Jean Privat [Wed, 19 Aug 2009 19:13:56 +0000 (15:13 -0400)]
gc: fix gc.c for 64bits

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

14 years agolib: fix file_nit.c for 64bits
Jean Privat [Wed, 19 Aug 2009 19:08:15 +0000 (15:08 -0400)]
lib: fix file_nit.c for 64bits

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

14 years agosyntax: new 'assert else' statement
Jean Privat [Wed, 19 Aug 2009 20:52:08 +0000 (16:52 -0400)]
syntax: new 'assert else' statement

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

14 years agotools: add entrypoint information to the program
Jean-Sebastien Gelinas [Tue, 11 Aug 2009 18:45:33 +0000 (14:45 -0400)]
tools: add entrypoint information to the program

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

14 years agocompile: generate classes init iroutines sooner to insert global analysis
Jean-Sebastien Gelinas [Mon, 10 Aug 2009 16:25:11 +0000 (12:25 -0400)]
compile: generate classes init iroutines sooner to insert global analysis

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

14 years agocompile: store class related IRoutines in MMLocalClass
Jean-Sebastien Gelinas [Sat, 8 Aug 2009 17:13:52 +0000 (13:13 -0400)]
compile: store class related IRoutines in MMLocalClass

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

14 years agocompile: extract table computation from compiling_global to table_computation
Jean-Sebastien Gelinas [Wed, 5 Aug 2009 13:34:08 +0000 (09:34 -0400)]
compile: extract table computation from compiling_global to table_computation

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

14 years agocompile: remove GlobalAnalysis
Jean-Sebastien Gelinas [Tue, 4 Aug 2009 22:28:47 +0000 (18:28 -0400)]
compile: remove GlobalAnalysis

- Move 'CompiledClasses' to 'Program'
 - Rename 'GlobalAnalysis' to 'TableInformation'
 - Keep 'max_class_table_length' in 'TableInformation'

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

14 years agocompile: add 'Program' class to represent a nit program
Jean-Sebastien Gelinas [Mon, 3 Aug 2009 21:13:21 +0000 (17:13 -0400)]
compile: add 'Program' class to represent a nit program

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

14 years agoicode: if inlining is impossible, at least use a static call
Jean Privat [Wed, 19 Aug 2009 15:46:29 +0000 (11:46 -0400)]
icode: if inlining is impossible, at least use a static call

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

14 years agoicode: add IAllocateInstance, ICheckInstance and IInitAttributes
Jean-Sebastien Gelinas [Mon, 17 Aug 2009 21:11:11 +0000 (17:11 -0400)]
icode: add IAllocateInstance, ICheckInstance and IInitAttributes

Trivially-hacked-by: Jean Privat <jean@pryen.org>

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

14 years agoicode: add IStaticCall
Jean-Sebastien Gelinas [Mon, 17 Aug 2009 19:30:31 +0000 (15:30 -0400)]
icode: add IStaticCall

Trivially-hacked-by: Jean Privat <jean@pryen.org>

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

14 years agoicode: icode INew specializes IAbsCall (not ICall)
Jean Privat [Tue, 18 Aug 2009 23:29:51 +0000 (19:29 -0400)]
icode: icode INew specializes IAbsCall (not ICall)

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

14 years agocompile: one closure context by function, and it is the stack frame
Jean Privat [Tue, 18 Aug 2009 18:45:52 +0000 (14:45 -0400)]
compile: one closure context by function, and it is the stack frame

Closure definition directly use the stack frame of the caller to access the
closure environment (local variables, closure parameters, escape marker).
Closure function pointers are passed as separate additional arguments.

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

14 years agoclib: move REG to the stack frames
Jean Privat [Tue, 18 Aug 2009 17:05:23 +0000 (12:05 -0500)]
clib: move REG to the stack frames

It means that functions have different frame sizes.
To achieve this, each function frame ('me') is stored in a big_frame ('fra')
that contains enough space to store all the REGs.

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

14 years agoclib: rename trace_t to stack_frame_t
Jean Privat [Tue, 18 Aug 2009 17:15:39 +0000 (13:15 -0400)]
clib: rename trace_t to stack_frame_t

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

14 years agogc: superficial cleaning
Jean Privat [Tue, 18 Aug 2009 13:50:55 +0000 (09:50 -0400)]
gc: superficial cleaning

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

14 years agogc: add Nit GC
Julien Chevalier [Fri, 14 Aug 2009 18:11:04 +0000 (14:11 -0400)]
gc: add Nit GC

Signed-off-by: Julien Chevalier <chevjulien@gmail.com>
Signed-off-by: Jean Privat <jean@pryen.org>

14 years agogc: disable Boehm general malloc and calloc overtaking
Julien Chevalier [Mon, 17 Aug 2009 19:57:06 +0000 (15:57 -0400)]
gc: disable Boehm general malloc and calloc overtaking

Trivially-hacked-by: Jean Privat <jean@pryen.org>

Signed-off-by: Julien Chevalier <chevjulien@gmail.com>
Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoclib: new raw_alloc and register_static_object services
Jean Privat [Mon, 17 Aug 2009 19:55:21 +0000 (15:55 -0400)]
clib: new raw_alloc and register_static_object services

Currently, these services are very simples or noop.
However, alternatives GC can provide more complex ones.

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

14 years agocompile: traces know REG variables
Julien Chevalier [Fri, 14 Aug 2009 17:16:22 +0000 (13:16 -0400)]
compile: traces know REG variables

Also: ask gccx to not warn about missing initializers.

Signed-off-by: Julien Chevalier <chevjulien@gmail.com>
Signed-off-by: Jean Privat <jean@pryen.org>

14 years agocompile: initialize local REGS to NIT_NULL
Jean Privat [Fri, 14 Aug 2009 16:58:05 +0000 (12:58 -0400)]
compile: initialize local REGS to NIT_NULL

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

14 years agocompile: store instance size in class table
Julien Chevalier [Fri, 14 Aug 2009 16:49:04 +0000 (12:49 -0400)]
compile: store instance size in class table

This new information can be used by GC to visit the attributes of an object.

Signed-off-by: Julien Chevalier <chevjulien@gmail.com>
Signed-off-by: Jean Privat <jean@pryen.org>

14 years agogc: runtime option to handle different GC
Julien Chevalier [Mon, 17 Aug 2009 19:30:11 +0000 (15:30 -0400)]
gc: runtime option to handle different GC

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

Signed-off-by: Julien Chevalier <chevjulien@gmail.com>
Signed-off-by: Jean Privat <jean@pryen.org>

14 years agocompile: give NativeArray its own C structure
Julien Chevalier [Fri, 14 Aug 2009 16:02:09 +0000 (12:02 -0400)]
compile: give NativeArray its own C structure

Signed-off-by: Julien Chevalier <chevjulien@gmail.com>
Signed-off-by: Jean Privat <jean@pryen.org>

14 years agocompile: object_id is no more the object pointer
Julien Chevalier [Mon, 17 Aug 2009 19:13:06 +0000 (15:13 -0400)]
compile: object_id is no more the object pointer

Warning: now, two objects of the same class can have the same object_id.
It is unlikely, but possible.

Trivially-hacked-by: Jean Privat <jean@pryen.org>

Signed-off-by: Julien Chevalier <chevjulien@gmail.com>
Signed-off-by: Jean Privat <jean@pryen.org>

14 years agoclib: move files to the clib directory
Jean Privat [Mon, 17 Aug 2009 16:09:57 +0000 (12:09 -0400)]
clib: move files to the clib directory

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

14 years agoc_src: gives c_src its own clibdir
Jean Privat [Mon, 17 Aug 2009 15:53:56 +0000 (11:53 -0400)]
c_src: gives c_src its own clibdir

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

14 years agoclib: add copyright notice to nit_{common,main}
Jean Privat [Mon, 17 Aug 2009 15:52:32 +0000 (11:52 -0400)]
clib: add copyright notice to nit_{common,main}

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

14 years agoclib: clean spaces in nit_common.h
Jean Privat [Mon, 17 Aug 2009 15:39:28 +0000 (11:39 -0400)]
clib: clean spaces in nit_common.h

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

14 years agoc_src: copy only .o and .cksum on bootstrap
Jean Privat [Mon, 17 Aug 2009 15:22:35 +0000 (11:22 -0400)]
c_src: copy only .o and .cksum on bootstrap

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

14 years agosyntax: fatal error on unavailable primitive method
Jean Privat [Fri, 14 Aug 2009 19:33:34 +0000 (15:33 -0400)]
syntax: fatal error on unavailable primitive method

Warning: signature of primitive methods is not checked.

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

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>