tools: remove the method import_supers_modules

It is simplier to call tc.get_module and tc.add_module by hand.

Signed-off-by: Jean Privat <jean@pryen.org>
compile: cnames for classes and modules

Allow the compilation of programs with class name conflicts and submodule name conflicts.

note: fix valgrind script to inlude new name mangling

Signed-off-by: Jean Privat <jean@pryen.org>
parser: add qualified module names

modules names are usable in module declaration and importations.
Syntax is the following: '::'? (id '::')* id

Signed-off-by: Jean Privat <jean@pryen.org>
src & doc: change all remaining occurences of "special" by "super" keyword

Signed-off-by: Alexandre Terrasa <alexandre@moz-concept.com>
src: Minor fixes in error messages

- Replace "constrctor" by "constructor" in error messages
- Change tests to fit replacement

Signed-off-by: Alexandre Terrasa <alexandre@moz-concept.com>
src: Add arity check on INative constructor


Signed-off-by: Alexandre Terrasa <alexandre@moz-concept.com>
src & doc: change all remaining occurences of "special" by "super" keyword

Signed-off-by: Alexandre Terrasa <alexandre@moz-concept.com>
Signed-off-by: Jean Privat <jean@pryen.org>
src: fix "constrctor" typo in error messages

* Replace "constrctor" by "constructor" in error messages
* Change tests to fit replacement

Signed-off-by: Alexandre Terrasa <alexandre@moz-concept.com>
Signed-off-by: Jean Privat <jean@pryen.org>
Merge branch 'alexamdre/various-fixes' into next
lib : Add class name support

- module kernel : Add output_class_name method to Object that display the object class name in console (debug only)
- module String : Add native_class_name method to Object (refinement) that return the class name in NativeString format
- module String : Add class_name method to Object (refinement) that return the class name in String format using native_class_name

Signed-off-by: Alexandre Terrasa <alexandre@moz-concept.com>
parser: new class SourceFile

This class is used to feed the lexer and to give a more precise information
to the Location.

Signed-off-by: Jean Privat <jean@pryen.org>
parser: display colored lines with error messages

Lines are located during the lexical analysis then printed on error.
A --no-color option is added to remove the line display.

Signed-off-by: Jean Privat <jean@pryen.org>
syntax: better message for signature errors

Locate the error on the erroneous parameter or return type.

Signed-off-by: Jean Privat <jean@pryen.org>
parser: locate errors with locations in ANode

Locate declarations of modules, classes and properties on their identifier.

Signed-off-by: Jean Privat <jean@pryen.org>
parser: fix and add tests to test_parser.nit

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

Factorize the _goto attribute and constructors of subclasses of
ReduceAction.

Signed-off-by: Jean Privat <jean@pryen.org>
gc: remove unused local variable

Signed-off-by: Jean Privat <jean@pryen.org>
Merge branch 'better-locate' into wip

Signed-off-by: Jean Privat <jean@pryen.org>
tool: remove some gcc warnings in gccx

These two warnings seem to appear in gcc 4.6

-Wno-array-bounds: because, in generated code, local variables are stored in
a 1-length tail array.

-Wno-unused-but-set-variable: because unused parameters in Nit lead to
unused but initialized registers

Signed-off-by: Jean Privat <jean@pryen.org>
misc: removes package from keywords in gtk syntax highlighting.

Signed-off-by: Alexis Laferrière <alexis.laf@xymus.net>