nit.git
15 years agoUpdate SCM ignore rules.
Jean Privat [Sun, 28 Dec 2008 00:06:56 +0000 (19:06 -0500)]
Update SCM ignore rules.

15 years agoUpdate c_src with new default constructor rules.
Jean Privat [Sun, 28 Dec 2008 00:00:32 +0000 (19:00 -0500)]
Update c_src with new default constructor rules.

15 years agoMore picky 'super' in constructors.
Jean Privat [Sat, 27 Dec 2008 18:54:55 +0000 (13:54 -0500)]
More picky 'super' in constructors.
Now super do not chose any constructor without parameter, but only those named 'init'

15 years agoAutomatic constructors.
Jean Privat [Sat, 27 Dec 2008 18:43:26 +0000 (13:43 -0500)]
Automatic constructors.
Automatic constructors are implicit anonymous init that collects unassigned
attributes in their signatures.

15 years agoMethods without PNodes.
Jean Privat [Sat, 27 Dec 2008 14:56:33 +0000 (09:56 -0500)]
Methods without PNodes.
Unlike explicit methods, implicit methods are not associated with a PNode.
These changes bring up the infrastructure for such inplicit methods.

15 years agoNew tests for inherited constructors.
Jean Privat [Sat, 27 Dec 2008 20:15:40 +0000 (15:15 -0500)]
New tests for inherited constructors.

15 years agoInheritance of constructors.
Jean Privat [Sat, 27 Dec 2008 16:23:39 +0000 (11:23 -0500)]
Inheritance of constructors.
A class without constructors can inherit those of its superclasses.
These classes are called "Mixin" since their subclasses do not have to care about their initialisation.

The inherited constructors are all that belong to the most specific non-mixin superclass.

15 years agoCustomize constructor call.
Jean Privat [Sat, 27 Dec 2008 05:28:50 +0000 (00:28 -0500)]
Customize constructor call.
Now that properties are not adapted during inheritance:
 * compile_constructor_call takes the static type of the instantiated class
 * constructors are customized according to the instantiated class

15 years agoDo not crash if a constructor is not found.
Jean Privat [Sat, 27 Dec 2008 14:05:05 +0000 (09:05 -0500)]
Do not crash if a constructor is not found.

15 years agoConform constructors to the strict 'redef' rule.
Jean Privat [Sat, 27 Dec 2008 19:02:13 +0000 (14:02 -0500)]
Conform constructors to the strict 'redef' rule.
For some old reasons, 'redef' in front of a new constructor was ignored.
Now the standard behavior is the rule for constructors.

15 years agoPrepare Nit code for inherited and automatic constructors.
Jean Privat [Sat, 27 Dec 2008 20:12:19 +0000 (15:12 -0500)]
Prepare Nit code for inherited and automatic constructors.
All components are impacted (stdlib, compiler and tests).
Changes concern:
 * attribute default values
 * constructor namies
 * class kind
 * redef keyword

15 years agoUpdate c_src. Enable one gcc pass bootstrap.
Jean Privat [Fri, 26 Dec 2008 03:29:00 +0000 (22:29 -0500)]
Update c_src. Enable one gcc pass bootstrap.

15 years agoOnly one gcc pass for initial bootstrap
Jean Privat [Fri, 26 Dec 2008 03:27:01 +0000 (22:27 -0500)]
Only one gcc pass for initial bootstrap

15 years agoMake that option -p is appenned to comdir instead of each file.
Jean Privat [Fri, 26 Dec 2008 03:12:20 +0000 (22:12 -0500)]
Make that option -p is appenned to comdir instead of each file.

15 years agoAdd option --compdir to specify the compilation directory.
Jean Privat [Fri, 26 Dec 2008 02:40:03 +0000 (21:40 -0500)]
Add option --compdir to specify the compilation directory.
By the way, rename the badly named 'base_dir' attrbute to 'compdir'.

15 years agoMake gccx consider filepaths independently.
Jean Privat [Thu, 25 Dec 2008 19:33:48 +0000 (14:33 -0500)]
Make gccx consider filepaths independently.

15 years agoMake that generated files are path independent.
Jean Privat [Thu, 25 Dec 2008 16:55:29 +0000 (11:55 -0500)]
Make that generated files are path independent.

15 years agoUpdate c_src
Jean Privat [Thu, 25 Dec 2008 11:34:17 +0000 (06:34 -0500)]
Update c_src

15 years agoUpdate tests
Jean Privat [Thu, 25 Dec 2008 10:39:40 +0000 (05:39 -0500)]
Update tests
Fix count in tests.sh
Update various .nit and .sav

test add rterror_check.sav ####

15 years agoMove test *.sav files to a sav/ subdirectory.
Jean Privat [Wed, 24 Dec 2008 04:05:00 +0000 (23:05 -0500)]
Move test *.sav files to a sav/ subdirectory.

15 years agoDo not abort when comparing signatures, just return false
Jean Privat [Thu, 25 Dec 2008 10:56:42 +0000 (05:56 -0500)]
Do not abort when comparing signatures, just return false

15 years agoFix nitdoc since MMConcreteProperty is removed.
Jean Privat [Thu, 25 Dec 2008 02:27:48 +0000 (21:27 -0500)]
Fix nitdoc since MMConcreteProperty is removed.

15 years agoMove property selectors from types to local classes
Jean Privat [Wed, 24 Dec 2008 00:30:28 +0000 (19:30 -0500)]
Move property selectors from types to local classes

15 years agoRemove the now useless MMConcreteProperty class
Jean Privat [Tue, 23 Dec 2008 22:48:34 +0000 (17:48 -0500)]
Remove the now useless MMConcreteProperty class

15 years agoSimplify local property inheritance.
Jean Privat [Tue, 23 Dec 2008 22:23:52 +0000 (17:23 -0500)]
Simplify local property inheritance.
Without implicit properties, local property inheritance is easier.

15 years agostart removing implicit properties
Jean Privat [Tue, 23 Dec 2008 20:29:06 +0000 (15:29 -0500)]
start removing implicit properties

15 years agoRemove some remaining PRM references
Jean Privat [Wed, 26 Nov 2008 22:46:47 +0000 (17:46 -0500)]
Remove some remaining PRM references

15 years agoFix nitdoc
Jean Privat [Wed, 26 Nov 2008 22:39:18 +0000 (17:39 -0500)]
Fix nitdoc

15 years agoremove putenv, setenv and unsetenv
Jean Privat [Wed, 26 Nov 2008 21:04:52 +0000 (16:04 -0500)]
remove putenv, setenv and unsetenv

15 years agoRemove non portable -C option in makefiles
Jean Privat [Wed, 26 Nov 2008 21:04:01 +0000 (16:04 -0500)]
Remove non portable -C option in makefiles

15 years agoFix 64 bits: use long int in class tables
Jean Privat [Wed, 26 Nov 2008 15:25:44 +0000 (10:25 -0500)]
Fix 64 bits: use long int in class tables

15 years agoAutomatically enable Bohem's GC if available.
Jean Privat [Wed, 10 Sep 2008 22:10:16 +0000 (18:10 -0400)]
Automatically enable Bohem's GC if available.
On Debian based system, just run
# aptitude install libgc-dev

Remark: it is only a trade off until we have our own GC.

15 years agoUnset variable control flow
Jean Privat [Tue, 25 Nov 2008 18:59:40 +0000 (13:59 -0500)]
Unset variable control flow

15 years agoPrepare unset variable control flow
Jean Privat [Tue, 25 Nov 2008 18:58:56 +0000 (13:58 -0500)]
Prepare unset variable control flow

15 years agoAs keyword (for casts)
Jean Privat [Thu, 20 Nov 2008 22:51:57 +0000 (17:51 -0500)]
As keyword (for casts)

15 years agoFix bug: select incompatible default constructor
Jean Privat [Fri, 14 Nov 2008 21:51:02 +0000 (16:51 -0500)]
Fix bug: select incompatible default constructor

15 years agoPrepare infrastructure for default constructor
Jean Privat [Fri, 14 Nov 2008 10:10:41 +0000 (05:10 -0500)]
Prepare infrastructure for default constructor

15 years agoRemove class MMSrcLocalProperty. Use MMConcreteProperty instead
Jean Privat [Fri, 14 Nov 2008 10:04:41 +0000 (05:04 -0500)]
Remove class MMSrcLocalProperty. Use MMConcreteProperty instead

15 years agoDot not consider Sys::init as an entry point
Jean Privat [Fri, 14 Nov 2008 09:56:30 +0000 (04:56 -0500)]
Dot not consider Sys::init as an entry point

15 years agoPrepare default constructors
Jean Privat [Fri, 14 Nov 2008 09:39:52 +0000 (04:39 -0500)]
Prepare default constructors

15 years agonew devel tool: mkcsrc
Jean Privat [Thu, 13 Nov 2008 22:40:57 +0000 (17:40 -0500)]
new devel tool: mkcsrc
mkcsrc is used to generate a new c_src/ directory from a nitc executable
generated in src/

15 years agoNew c_src (with reduced string pool and simplified building)
Jean Privat [Thu, 13 Nov 2008 22:40:14 +0000 (17:40 -0500)]
New c_src (with reduced string pool and simplified building)

15 years agoFactorize common strings in generated C.
Jean Privat [Thu, 13 Nov 2008 21:29:17 +0000 (16:29 -0500)]
Factorize common strings in generated C.
It reduces the constant pool size in the executable.

15 years agoAdd a first comment line for files generated by nitc.
Jean Privat [Wed, 10 Sep 2008 21:24:40 +0000 (17:24 -0400)]
Add a first comment line for files generated by nitc.

15 years agoAdded tag v0.1 for changeset 6979f59d3d1c
Jean Privat [Wed, 9 Jul 2008 19:55:53 +0000 (15:55 -0400)]
Added tag v0.1 for changeset 6979f59d3d1c

15 years agoFirst NIT release and new clean mercurial repository v0.1
Jean Privat [Wed, 9 Jul 2008 19:55:44 +0000 (15:55 -0400)]
First NIT release and new clean mercurial repository