2004-09-02  Saber Souli  <souli@localhost.localdomain>

	* optimizations/cache02/Makefile (SHELL): Change compilations flags to undo style cheking.  

	* optimizations/cache02/harness-skel.adb:  Make constant local variable of Invoke global. 

2004-08-30  Saber Souli  <souli@loozy.rezel.enst.fr>

	* backend-be_ada-nutils.ads: Add pragma inline entity in Pragma_Id.  

	* backend-be_ada-stubs.adb: Use direct function to initialize the result_ü variable in stubs code. 

2004-08-27  Saber Souli  <souli@loozy.rezel.enst.fr>

	* testsuite/all_types/all_types.idl: Add struct tests. 

2004-08-27  Saber Souli  <souli@loozy.rezel.enst.fr>

	* backend-be_ada-idl_to_ada.adb: Link Component_Declaration with its FE_Node. 

	* backend-be_ada-helpers.adb: Generate structure type helper (From Any). Fix structure type To_Any convert function.    

2004-08-27  Saber Souli  <souli@loozy.rezel.enst.fr>

	* testsuite/all_types/all_types.idl: Add Attribute test. 

2004-08-27  Saber Souli  <souli@loozy.rezel.enst.fr>

	* backend-be_ada-skels.adb: Fixed a bug (consider Scoped_Name in return_type of subprograms).  

2004-08-27  Saber Souli  <souli@loozy.rezel.enst.fr>

	* backend-be_ada-stubs.adb: Add underscore to operation name in the operation initialization.  

	* backend-be_ada-helpers.adb: Generate From_Any body to Arrays types, and enumeration type. Add initialization of the arrays helpers in Deferred_Initialization body. 

	* backend-be_ada-generator.adb: Do not generate operators in expression when the operator is Op_None. 

	* backend-be_ada-skels.adb: Correct  minor bug in operations invokation (use To_Any convesion in place of From_Any).  use the appropriate helper when the returned type is not a base type.  

	* backend-be_ada-nutils.ads: Add Variables Id (V_Index, V_Position) used in enumeration type helper (From_Any). Add Op_None to Operator_Type.  

	* backend-be_ada-nutils.adb: Modify signature of Make_List_Id in to be able to create a list containing tree element. Modify signature of Make_Expression, to make Op_none the default operator_id. 

2004-08-26  Saber Souli  <souli@loozy.rezel.enst.fr>

	* backend-be_ada-runtime.ads: Add runtimes entities.

	* backend-be_ada-helpers.adb: Generate Complex declarator helper. 

	* backend-be_ada-generator.adb: Correct the generation of case statement. 

	* backend-be_ada-skels.adb: Raise Bad_Operation exception when the client try to invoke an unknown operation.  

	* backend-be_ada-stubs.adb: In the stubs subprograms, constant local variables are declared as global to the subprogram. To save the overhead introduced by the allocation and the initialization of these variables.   

2004-08-20  Saber Souli  <souli@loozy.rezel.enst.fr>

	* testsuite/echo/echo.idl: Test the generated code with polyorb (the script buid correctely the server and the client, but do no tests the binary. the binary work manually). 

	* backend-be_ada-runtime.ads: Add runtimes entities. 

	* backend-be_ada-helpers.adb: Fix enumeration TypeCode generation. 

	* backend-be_ada.ads: Implementations packages are not generated by default.

	* backend-be_ada-skels.adb: Consider Scoped_Name in Types references (fixed bug). 

	* backend-be_ada-idl_to_ada.adb: Add converting rule for the missing basetypes in Base_Type_TC. Do not add implementation package in the IDL_Unit packages list. 

	* backend-be_ada-nutils.adb: Add converting rule for the missing basetypes in Convert.  

2004-08-19  Saber Souli  <souli@loozy.rezel.enst.fr>>

	* backend-be_ada-stubs.adb: Correct a bug. 

	* backend-be_ada-runtime.ads: Add runtimes entities. 

	* backend-be_ada-skels.adb: Generate Deferred_Initilization, and package initialization. 

	* backend-be_ada-idl_to_ada.adb: Modify Map_Accessor : link the generated node with the frontend. 

	* backend-be_ada-nodes.idl: Add Attribute_Designator.  

	* backend-be_ada-nutils.adb: Add Make_Attribute_Designator. Add entities in Opertion_Id, Parameter_Id, Attribute_Id and Subprogram_Id. 
	
2004-08-18  Saber Souli  <souli@loozy.rezel.enst.fr>

	* backend-be_ada.adb: Generate implementattion specification before  skels body, because  entities of implementation specs are used in skels body. 

2004-08-18  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada-runtime.ads: Add runtimes entities. 

	* backend-be_ada-skels.adb: Generate code for Is_A invokation. 

	* backend-be_ada-nutils.adb: Add_With add Helper, Skel, Impl
	packages in the current with list if one of theire entities are
	used. Add K_Octet conversion rule in Convert.  

	* backend-be_ada-skels.adb: Add Helper in with list. 

2004-08-17  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada-stubs.adb: Add operations marshaller bodies. 

	* backend-be_ada-runtime.ads: Correct some runtimes entities
	(Module_Info, Empty). 	

	* backend-be_ada-skels.adb: Invoke Is_A function. 

2004-08-13  Laurent Pautet  <pautet@dorine.enst.fr>

	* mknodes.adb: Add an optimization flag which allows to remove the
	tree output. The optimized files are half the size of the normal
	ones.

2004-08-13    Saber Souli <souli@enst.fr>

	* backend-be_ada-runtime.ads: Correct some runtimes entities
	(Module_Info, Empty). 	

	* backend-be_ada-skels.adb: Invoke Is_A function. 

2004-08-13  Saber Souli <souli@enst.fr>

	* backend-be_ada.ads: Generate Implementation package by
	default. Because skels  body use implementations specs.   

2004-08-12  Saber Souli <souli@enst.fr>

	* backend-be_ada-runtime.adb: Declare CORRBA.Internals as subunit.

	* backend-be_ada-nutils.adb: Modify the suffix of variables used
	in subprograms  variables, from "_U" to "_Ü".  

	* backend-be_ada-helpers.adb: Add "_Ü" as suffix to variables in for statements.

	* backend-be_ada-generator.adb: Delete a useless semicolon in if_statements. 
	

2004-08-11  Saber Souli <souli@enst.fr>

	* backend-be_ada-skels.adb: Remove useless subprogram
	Add_Underscore, use  Add_Suffix_To_Name instead. Use Add_Prefix_To_Name.

	* backend-be_ada-idl_to_ada.adb: Modify Map_IDL_Unit (do not
	generate implementation  package and skels for abstact interface).  

2004-08-10  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada-nutils.ads: Correct selector name from P_Implecit
	to P_Implicit. 

2004-08-10  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada-runtime.ads: Apply gnat style coding. Add runtime entities.

	* backend-be_ada-generator.adb: Generate Qualified_Expression. 

	* backend-be_ada-nutils.adb: Add Make_Qualified_Expression. Add
	parameters entities names. 

	* backend-be_ada-helpers.adb: Add Deferred_Initialization
	body. Add helper package initialization.

	* optimisation.txt : Optimisation des stub. 
	
2004-08-09  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada-impls.adb: Link the Setter spec node to the
	Frontend node. 

	* backend-be_ada-stubs.adb: Use the modified runtime entities
	names. 

	* backend-be_ada-runtime.ads: Add runtime entities used in skels
	bodies. Modify some entities names.    

	* backend-be_ada-generator.adb: Generate block statements and
	elsif statements. 

	* backend-be_ada-idl_to_ada.adb: Add Link_BE_To_FE subprogram to
	 just link a Backend node to Frontend one. (Used when  multiple
	 backend nodes are linked to one Frontend node).  

	* backend-be_ada-nodes.idl: Add Block_Statements. 

	* backend-be_ada-nutils.adb: Add subprograms to generate a block
	statements and elsif_statement.   

	* backend-be_ada-skels.adb: Generate invokation parts in invoke
	body. (Not complete yet. Need to fix a bug).	

2004-08-06  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada-generator.adb: Add '.All' to Designators
	representing an explicit_dereference. 

	* backend-be_ada-runtime.adb: Add casing rules. 

	* backend-be_ada-runtime.ads: Add runtimes entities used in skels
	body. 

	* backend-be_ada.adb: Call the skels bodies generation. 

	* backend-be_ada-nutils.ad[b,s]: Modify signature of
	Make_If_Statement, to add an Elsif_Statements list. 

	* backend-be_ada-nodes.idl: Add Elsif_Statement node. Add Is_All
	to Designator, when Is_All is true it stand's for Designator.All
	(explicit_dereference).  
	
	* backend-be_ada-skels.adb: Generate common part of invoke
	subprogram.
	
2004-08-05  Laurent Pautet  <pautet@dorine.enst.fr>

	* backend-be_ada-runtime.adb, backend-be_ada-nutils.adb: Declare
	package Standard as a subunit (even if it is a subunit) in order
	not to automatically with it.


2004-08-04  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada-nutils.ad[b,s]: Replace Op_Or_Then by Op_Or_Else in
	Operator_Type (mistake).  

	* backend-be_ada-stubs.adb: Complete stubs body. Generate Is_A
	body. 

	* backend-be_ada-runtime.ads: Add new runtime-entities used in
	stub Is_A body.
	

2004-08-04  Laurent Pautet  <pautet@dorine.enst.fr>

	* backend-be_ada-runtime.adb: Add rules for ARG_IN, ARG_INOUT and
	ARG_OUT. Change name rules into casing rules.

	* backend-be_ada-runtime.ads: Alphabetic order.

2004-08-04  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada-helpers.adb: Consider the modification in
	backend-be_ada-runtime.ads. 

	* backend-be_ada-runtime.ads: Add new runtime-entities used in
	stub marshaller body. Modify RE_From_Any
	(CORBA.Object.Helper.From_Any) to RE_From_Any_1, to
	allow adding RE_From_Any_0 (CORBA.From_Any).  

	* backend-be_ada-stubs.adb: Complete the marshaller body.  

2004-08-03  Laurent Pautet  <pautet@dorine.enst.fr>

	* backend-be_ada-nutils.adb, backend-be_ada-nutils.ads:
	Reimplement Add_With_Package. This takes into account whether the
	unit to with is a subunit. In this case, it explores the parent
	list and finds the first non-subunit parent in order to with
	it. Add Fully_Qualified_Name which takes a designator or a
	defining identifier and builds the fully qualified name of this
	entity. Add To_Spec_Name which takes a name and returns another
	name with %s at the end when needed. This name designates the
	specification of a unit. The name info is supposed to contain a
	reference to the corresponding node.

	* backend-be_ada-runtime.adb, backend-be_ada-runtime.ads: Remove
	special name mechanism and find special words into identifiers in
	order to apply special casing. For instance, all identifiers with
	"corba" in it like "to_corba_object" are output with "CORBA" in
	it. Define run-time units not only as designator but as package
	spec as well and set attributes Is_Runtime_Package and
	Is_Subunit_Package to true when required. Entities and units are
	supposed to be in alphabetic order (otherwise, we may have serious
	problems).

	* backend-be_ada-expand.adb, backend-be_ada-expand.ads,
	backend-be_ada-idl_to_ada.adb, backend-be_ada-idl_to_ada.ads,
	backend-be_ada-stubs.adb: Remove parameter Witheded in
	*_Designator. Use new signatures.

	* backend-be_ada-nodes.idl: Remove Is_Generated since it is not
	used (no call to Is_Generated) and add Is_Runtime_Package and
	Is_Subunit_Package attributes.

	* backend-be_ada.adb, backend-be_ada.ads,
	backend-be_ada-generator.adb: Add new options. -ta to print Ada
	tree (Print_Ada_Tree), -ti to print IDL tree (Print_IDL_Tree ???),
	-ds to only generate package spec (Disable_Pkg_Impl_Gen), -db to
	only generate package impl (Disable_Pkg_Spec_Gen), -dt to output
	tree warnings (Output_Tree_Warnings), -dw to output unit withing
	(Output_Unit_Withing). Use these new flags. 
	
2004-08-03  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada-nutils.ads: Minor reformatting. 

2004-08-03  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada-stubs.adb: Add instructions to the marshaller
	body. 

	* backend-be_ada-runtime.ads: Add new runtime entities used in
	stubs body.

	* backend-be_ada-generator.adb: Modify Generate_Expression to
	handle the generation of unary operation.

	* backend-be_ada-nutils.ads: Add Op_Not in Operation_Type. 

	* backend-be_ada-nutils.adb: Add Make_Designator to return a
	designator from a given name id. Right_Expr field in
	Make_Expression is now optional (to handle unary operation).

2004-08-03  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada-impls.adb: Complete generation of the
	implementation body.

2004-08-03  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada-runtime.adb: Moved Convert to
	backend-be_ada-nutils.  

2004-08-03  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada-runtime.ads: Added values to RU_Id and RE_Id to
	handle new runtime entities used in stub's body generation.  

	* backend-be_ada-idl_to_ada.adb: Added Base_Type_TC functions which
	returns the TypeCode of a given base type. Removed pragma assert
	from Map_Designator.  

	* backend-be_ada.adb: Changed -h switch to -s. Removed -b and -h
	usage. 

	* backend-be_ada-nutils.ads: Added values to Parameter_Type, to
	handle parameters needed in stubs body generation. 

	* backend-be_ada-expand.adb: Removed pragma Assert. Generate
	designator to Object_Declaration nodes. 

	* backend-be_ada-nutils.adb: Linked Object_Declaration nodes to its
	parents. 

	* backend-be_ada-stubs.adb: Generate stubs body (not completed yet). 

2004-08-03  Saber Souli  <souli@neraka.enst.fr>

	* testsuite/Makefile.ada (stubs): Renamed souches to stubs. Minor
	reformatting.
	
	* test.cmd : Idlac output is now static, stored in subdirectory
	named idlac.out 
	
2004-08-03  Saber Souli  <souli@siloe.enst.fr>

	* backend-be_ada-idl_to_ada.adb: Applied GNAT coding style. 

	* backend-be_ada-helpers.adb: Applied GNAT coding style. 

	* backend-be_ada-generator.adb: Applied GNAT coding style.

	* backend-be_ada-expand.adb: Applied GNAT coding style.

	* backend-be_ada-debug.adb: Applied GNAT coding style.

	* backend-be_ada.adb: Applied GNAT coding style.  

2004-07-30  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada-idl_to_ada.adb: Modified Map_Designator to
	designate library entities. 

	* Add tests. 

	* backend-be_ada-runtime.adb: Correcte the parent unit of TC_Array
	designator. 

2004-07-30  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada-generator.adb: Generate access type definitions. 

	* backend-be_ada-impls.adb: Finished Implementations specs. 

	* test.sh: Integrate thomas's trick to delete body package that
          don't have a spec.   	


2004-07-30  Saber Souli  <souli@neraka.enst.fr>

	* testsuite/ada000[9,4]/tin.idl: Tests nested entities.

	* backend-be_ada-skels.adb: New file : generate skeletons (now it
	generate only skeletons specs). 

	* backend-be_ada-nodes.idl: Add Pragma_Statement node. 

	* backend-be_ada-generator.adb: Generate Pragma_Statement. 
	

2004-07-29  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada-helpers.adb: Link helpers  nodes to the
	corresponding idl entity. 

	* backend-be_ada-nutils.adb: Add_With_Package do not add ancestors
	packages in the with list.


2004-07-28  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada.adb: Add two flags, '-b' generate only bodies and
	'-h' generate only specs (headers). 

	* backend-be_ada-stubs.adb: Removing useless withs. Add Is_A
	specs. 

	* backend-be_ada-helpers.adb: Removing useless withs. 

	* Adding automatique test script. 

2004-07-27  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada-nodes.idl: Add case_statement node.

	* backend-be_ada-generator.adb: Generate case statements. 

	* backend-be_ada-helpers.adb: Generate To_Any body for
	Enumerate_Type, Structure_Type and Union_Type. 

2004-07-26  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada-generator.adb: Add "in" keyword befor range
	contraint in for statements. 

2004-07-26  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada-helpers.adb: Generate To_Any body for complex
	declarator and simple declarator.  

	* backend-be_ada-generator.adb: Generate for statements. 

2004-07-22  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada-helpers.adb: Completed any convesion body for
	interfaces.

2004-07-22  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada-nodes.idl: Add expression node. 

	* backend-be_ada-generator.adb: Generate Expressions. 

	* backend-be_ada-helpers.adb: Completed narrowing and widening
	reference body.  

2004-07-21 Saber Souli  <souli@neraka.enst.fr>

	* frontend-nodes.idl: Moved BE_CORBA to backend-be_ada-nodes.idl. 

2004-07-20  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada-helpers.adb: Linked Frontend nodes with Helper
	nodes. 

	* backend-be_ada-idl_to_ada.adb: Add Bind_FE_To_Skel,
	Bind_FE_To_Impl and Bind_FE_To_Helper to allow linking
	a frontend node with respective Skeleton, Implementation and
	helper node. 

2004-07-20  Saber Souli  <souli@neraka.enst.fr>

	* frontend-nodes.idl: Add BE_CORBA node, which contain four nodes
	: Stub_Node point to the stub, Helper_Node point to the helper,
	Skel_Node to the Skeleton and finally Impl_node point to the
	implementation node.   

2004-07-19  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada-helpers.adb: Reflecting changes to helper
	TypeCodes generation introduced by the recent modified API in
	PolyORB. 

2004-07-19  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada-helpers.adb: Generate helpers body. (functions
	are now empty).  

2004-07-19  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada-helpers.adb: Completed helper specification, for
	interfaces, and types. 

2004-07-18  Saber Souli  <souli@neraka.enst.fr>
	
	* backend-be_ada.adb: Add -i switch that  dump the idl tree with
	the field BE_Node updated with Ada nodes.  
	
	* backend-be_ada-helpers.adb: Generate the widening reference
	function. 

	* backend-be_ada-expand.adb: Expand_Designator  modified to take
	in consideration the new structure.   

	* backend-be_ada-nodes.idl: Add Parent node to Definition and
	IDL_Unit to Package_Declaration to allow navigations  from child
	nodes to parents.   

2004-07-16  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada-debug.adb: Do not dump the referenced nodes. 

2004-07-16  Saber Souli  <souli@neraka.enst.fr>

	* frontend-debug.adb: View BE_Node information in the
	idl tree dump. 

	* backend-be_ada-stubs.adb: Minor change, relatif to the
	modification in the frontend-nodes.idl. 

	* frontend-nodes.idl: Removed BE_Node from Node_Id to Definition. 

2004-07-15  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada.adb: Reformatting.  
	
	* backend-be_ada-impls.adb: New file, generate implementations Ada
	subtree. 	

	* backend-be_ada-helpers.adb: New file, generate helpers Ada
	subtree. 

	* backend-be_ada-stubs.adb: New file, generate client stubs  
	Ada  subtree.

	* backend-be_ada-stubs.adb, backend-be_ada-helpers.adb,
	backend-be_ada-impls.adb : They contains two sub-packages,
	Package_Spec generate package specification, and Package_Body
	generate the correponding body. 

2004-07-10  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada.adb: Minor reformatting. 

	* backend-be_ada-nutils.adb: Move Make_Designator to Expand
	package and change its prefix "Make_" into "Expand_".

	* backend-be_ada-expand.adb: New file. This package contains
	routines that expand an Ada node into another Ada node.
	
2004-07-10  Saber Souli  <souli@neraka.enst.fr>
	
	* backend-be_ada-nutils.adb, backend-be_ada.adb: all routines that
	transform an IDL entity into an Ada node, are moved to the new
	IDL_To_Ada package. These routines are renamed by replacing prefix
	"Make_" with "Map_".

	* backend-be_ada-idl_to_ada.adb: New file. This package contains
	routines that map an IDL entity into an Ada node according to the
	IDL to Ada mapping.

2004-07-09  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada-nutils.adb: Add Make_Designator and
	Qualified_Designator in order to generate a designator for a given
	Ada entity. Fix Make_Designator in order to generate a fully
	qualified designator (using scope entity of identifiers reference
	instead of using Parent_Entity of Scoped_Identifier).
	
	* backend-be_ada-runtime.adb: Add RU function that returns a
	designator to an unit entity.

	* backend-be_ada.adb: Add functions to generate windening and
	narrowing subprogram that results in the mapped in the mapped
	reference type definined in the interface package
	(Helper_Narrowing_Ref, Helper_Widening_Ref), to generate TypeCode
	constant and type any conversion functions for the mapped
	reference type and for all types defined in the interface package.    

2004-07-06  Laurent Pautet  <pautet@dorine.enst.fr>

	* backend-be_ada-nutils.adb, backend-be_ada-nutils.ads,
	backend-be_ada.adb: Add Ref as a defining identifier. Minor
	reformatting.

2004-07-06  Saber Souli  <souli@neraka.enst.fr>

	* backend-be_ada-runtime.ads: Add To_Any_0, To_Get_Empty_Any_0,
	To_Any_1 and To_Get_Empty_Any_1 to RE_Id to handle new runtime
	entities. 	

	* backend-be_ada.adb: Update FE_Node attribute of Type_Spec
	node. Use type helper functions. 	

2004-07-05  Laurent Pautet  <pautet@dorine.enst.fr>

	* backend-be_ada-nutils.adb, backend-be_ada-nutils.ads,
	backend-be_ada-nodes.idl: Define tables for attributes,
	subprograms and components like those we have for parameters and
	variables. Add component initialization. Add discriminant in full
	type declaration. Add Make_Type_Attribute to initialize
	discriminant.

	* backend-be_ada.adb: Implement union type and minor reformatting.

	* analyzer.adb: Minor reformatting and check duplicated default
	labels.
	
	* backend-be_ada-generator.adb: Generate union types. Fix
	generation of object initialization.

	* backend-be_idl.adb: Minor reformatting.


2004-07-03  Laurent Pautet  <pautet@dorine.enst.fr>

	* backend-be_ada.adb: Produce exception declaration and members
	declarations.
	
	* backend-be_ada-nodes.idl, backend-be_ada-nutils.adb,
	backend-be_ada-nutils.ads: Add Make_Exception_Declaration and
	corresponding node.

	* backend-be_ada-generator.adb: Generate code for exception
	declaration.

	* backend-be_ada-runtime.ads: Add CORBA and Ada exception entities.
	
	* backend-be_idl.adb: Generate value declaration and adopt the
	same organization for IDL backend than the one for Ada
	backend. Generate boxed value types and abstract value types.  Fix
	wrong output of multidimensional arrays. Generate initializer
	declaration as a special case of operation declaration.

	* frontend-nodes.idl: Define initializer declaration as a special
	case of operation declaration.
 
	* frontend-nutils.adb, frontend-nutils.ads: Fix function
	Is_A_Forward_Of for value declaration. Implement value type
	inheritance.

	* scopes.adb: Deal with value forward declaration. Implement
	value type inheritance.

	* analyzer.adb: Analyze partially value declarations. Some parts
	are just cut and pasted from interface analyzis. This will be
	reorganized later on. Implement value type inheritance. Implement
	boxed value type. Analyze initializer declaration as a special
	case of operation declaration.

	* parser.adb: Parse semi-colon at the end of an initializer
	declaration.

2004-07-02  Laurent Pautet  <pautet@dorine.enst.fr>

	* frontend-nodes.idl: Remove Base_Interface since it always
	corresponds to Current_Scope. Add atttribute Is_Local_Interface.

	* parser.adb: Parse local interface. Do not forget to set sequence
	size to its value. Parse correctly state members and value
	declaration.

	* backend-be_idl.adb: Generate fully qualified name for
	enumerators. Fix indentation for elements. Generate abstract
	interfaces.

	* analyzer.adb: Minor reformatting. Analyze consistency of parent
	interfaces in regards to local and abstract properties. Check that
	a local type does not appear as a parameter, attribute, return
	type or exception declaration of an unconstrained interface.

	* values.adb: Fix Image for non printable characters (use \xxx
	representation).

	* backend-be_ada-generator.adb: Generate sequence size in sequence
	type when needed.

2004-07-01  Laurent Pautet  <pautet@dorine.enst.fr>

	* frontend-nodes.idl: Remove Explicitely_Visible and
	Implicitely_Visible attributes and use Visible attribute instead
	(see below). Add a Depth attribute in Scoped_Name in order to
	detect whether in a recursive procedure concerning scoped names we
	analyze the tail of a scoped name (depth = 0) or not.
	
	* parser.adb: Always create an inheritance specification even if
	it appears to be empty. This simplifies the analyzis later
	on. Compute depth attribute of scoped names.

	* scopes.adb, scopes.ads: Redesign the inheritance mechanism since
	inherited entities were made implicitely visible and were not
	introduced in the scope (using Explicitely_Visible and
	Implicitely_Visible attributes). This was plain since it is
	possible to designate an inherited entity by prefixing the entity
	with the derived interface. In this new scheme, inherited entities
	are introduced in the scope and removed as soon as they are
	overriden. An inherited entity E is introduced in the scope of a
	derived interface as an identifier I which corresponding entity is
	E. Note that the corresponding identifier of E is its original
	identifier J and not the newly-created identifier I. In other
	words, J and I refer to E when E only refers J. Remove
	Explicitely_Visible and Implicitely_Visible attributes and use
	only Visible attribute. Fix Remove_From_Homonyms implementation
	since this was buggy because of the two previous attributes.

	* analyzer.adb: Improve the way inheritance is handled as said
	above. Analyze scoped names designating parent interface in the
	scope of the enclosing entity of the derived interface and not in
	the scope of the derived interface. Moreover special rules for
	type names only apply to the tail of the scoped name (and to each
	sub scoped name as done before). Create a scope when entering a
	union type.

	* backend-be_idl.adb: Output scoped names not using the scoped
	name representation but using the representation of the scoped
	name reference. For instance, when type T is in interface I1 and
	when I2 inherits from I1, a scoped name like I2::T in I2 should be
	output I1::T.

2004-06-30  Laurent Pautet  <pautet@dorine.enst.fr>

	* backend-be_ada-generator.adb: Minor reformatting.

2004-06-30  Saber Souli <souli@enst.fr>

	* backend-be_ada.adb : Generate assignment statement, and record
	aggregate.
   
	* backend-be_ada-runtime.adb : Respect the case sensitiveness of
	runtime packages name.
   
	* backend-be_ada-nodes.idl : Add assignment statement node, and
	record aggregate node.
   
	* backend-be_ada-nutils.ad{b,s} : Add Make_List_Id,
	Make_Record_Aggregate, Make_Assignment_Statement and Length.
	
2004-06-30  Laurent Pautet  <pautet@dorine.enst.fr>

	* backend-be_ada-runtime.adb: Remove 6619 as it causes RE_X_Y to
	be output X_Y instead of X.Y as done previously.

2004-06-29  Saber Souli   <souli@enst.fr>

	* backend-be_ada_nutils.adb : In To_Ada, insert "IDL_" string
	when identifier collides with an Ada reserved word.

	* backend-be_ada-generator.adb : Define Token_Type and its
	subprograms.

2004-06-29  Laurent Pautet  <pautet@dorine.enst.fr>

	* scopes.adb: Minor reformating.

	* backend-be_ada-generator.adb: Add a missing space between
	defining_identifier and colon.

	* backend-be_ada-nutils.adb: Add one to Token_Type'Pos in order to
	have a positive value. Fix an incorrect redirection to backend tree.

	* iac.adb: Comments. Minor reformating.

	* lexer.adb: Cleanup on error.

	* analyzer.adb: Analyze expanded constant declaration coming from
	enumerator in order to compute its value. Output an error when we
	cannot resolve a scoped name.

	* backend-be_ada.adb: Read constant value and not constant
	expression value.
	
2004-06-29  Laurent Pautet  <pautet@dorine.enst.fr>

	* backend-be_ada-generator.adb: Remove junk code
	(Generate_Enumeration_Type and Generate_Type_Spec not
	used). Establish some generation rules. The enclosing entity
	decides for the first indentation and the last semi-colon +
	end-of-line sequence. What is generated in between is the business
	of the enclosed entity. Use parameter Offset of new
	Write_Indentation procedure. Allow to fix the longest variable
	name length in order to align all variables and parameters.

	* backend-be_ada-debug.ads, frontend-debug.ads: Reformating.

	* backend-be_ada-generator.ads: Var_Name_Len to set the maximum
	length of a variable name. Zero means that no trailing space is
	added during a variable or parameter output.

	* backend-be_ada.adb: Get Var_Name_Len value. Capitalize variables
	and parameters.

2004-06-28  Laurent Pautet  <pautet@dorine.enst.fr>

	* backend-be_ada.adb: Use the RTE mechanism for parameters and
	variables.

2004-06-28  Saber Souli  <souli@enst.fr>
	
	* iac.adb : Fix bug introduced when the path name of the IDL file
	contain a leading dot.

	* backend-be_ada.adb : Use Backend.BE_Ada.Runtime and remove all
	the variables which are now useless.

	* backend-be_ada-generator.adb : Minor change in the generated
	code to produce exactly the same output as idlac.
	
2004-06-28  Saber Souli   <souli@enst.fr>

	* backend-be_ada.adb: Declare PolyORB and CORBA objects. Generate
	marshaller declaration code. Use Copy_Designator in object
	declaration in order to auto insert packages used in the withed
	list. Generate Marshaller Body (not Completed yet). Generate If
	statements. Add Bind_FE_To_BE a subprogram that cross link FE node
	with the correspanding BE node.    
	
	* backend-be_ada-nutils.adb, backend-be_ada-nutils.ads: generate
	functions call. Generate If statement. 
	
	* backend-be_ada-generator.adb : generate functions call, and
	subprograms body. generate if statements.  

2004-06-28  Laurent Pautet  <pautet@dorine.enst.fr>

	* backend-be_ada-runtime.ads, backend-be_ada-runtime.adb: New
	files to deal with various API.

	* scopes.adb, values.adb, backend-be_ada-generator.adb,
	frontend-nutils.adb, mknodes.adb, lexer.adb : Reordering.

	* backend-be_ada-nutils.adb, backend-be_ada-nutils.ads: Avoid
	duplication of withed packages. Use rtsfind-like mechanism from
	backend-be_ada-runtime.

	* backend-be_ada.adb: Use rtsfind-like mechanism from
	backend-be_ada-runtime. In particular concerning Designator
	creations. Fix implementation of repository_id production since
	their values were plain wrong.
	
	* backend-be_a (all): Removed.

	* MANIFEST: Updated.

	* Makefile: Check that subprograms are still sorted.

2004-06-26  Laurent Pautet  <pautet@dorine.enst.fr>

	* backend-be_ada-generator.adb: Generate object declaration and in
	particular constant declaration. Fix few typos output in subrogram
	body.
	
	* backend-be_ada-nutils.adb, backend-be_ada-nutils.ads: Generate
	object declaration and in particular constant declaration. Fix
	automatic "with" for designator (no replication, less
	bugs). Define a function Copy_Designator which copies a designator
	like CORBA.Object.Ref and also with the parent unit of designator
	like CORBA.Object.
	
	* backend-be_ada.adb: Generate object declaration and in
	particular constant declaration. Generate
	repository_id. Reorganize Getter and Setter subprograms.
	
	* backend-be_ada-nodes.idl: Generate object declaration and in
	particular constant declaration.
	

2004-06-26  Laurent Pautet  <pautet@dorine.enst.fr>
	
	* backend-be_ada-nutils.adb: Add Make_Array_Type_Definition and
	Make_Range_Constraints in order to map complex declarators.

	* backend-be_ada-generator.adb: Replace Write_Token with Write.
	Generate array type definition. Fix several missing end of line.

	* backend-be_ada-nodes.idl: Add Range_Constraints and
	Range_Constraint to handle complex declarators.

	* backend-be_ada-debug.adb, backend-be_ada-debug.ads: Output
	values.

	* scopes.adb: When re-entering a module, re-introduce all
	the scoped identifiers in the new scope, in their homonyms chain
	and make them visible.

	* backend-be_ada.adb: When visiting a scoped name which designates
	a constant, output its value instead of the scoped name. Map
	complex declarators for type definition and structure
	members. Comment Visit_Operation_Declaration.

	* backend-be_idl.adb: Remove space between array sizes and
	declarator in a complex declarator to match omniorb output. Output
	properly empty exception. Output literals and string types.

2004-06-24  Laurent Pautet  <pautet@dorine.enst.fr>

	* backend-be_ada-generator.adb: Do invoke specific Generate, use
	dispatching one instead. Remove Generate_Qualified_Identifier
	since Generate_Defining_Identifier does the job.

	* backend-be_ada-nutils.adb, backend-be_ada.adb: Fix
	Make_Fully_Qualified_Identifier in order not to have specification
	identifier as a prefix.

2004-06-23  Saber Souli   <souli@enst.fr>
	* backend-be_ada.adb : Fixed void operation handling bug.
	Add an empty body for subprograms. Handle nested blocs. 

	* backend-be_ada-generator.adb : Add Token_Type to handle ada
	keyword and graphic characters. add  Generate_Qualified_Name (N :
	Node_Id) to a full qualified name. Add
	Generate_Subprogram_Implementation  : generate a subprogram
	body. Add  Image function : returns the image of a Token_Type. Add
	Write_Token : a procedure that print the image of a given
	Token_Type. 

2004-06-24  Laurent Pautet  <pautet@dorine.enst.fr>

	* lexer.adb, lexer.ads: Add CORBA 3.0 keywords.

	* frontend-nodes.idl, frontend-nutils.ads, frontend-nutils.adb:
	Add function Length.

	* Makefile: Invoke run-test right from the Makefile.

2004-06-23  Laurent Pautet  <pautet@dorine.enst.fr>

	* values.adb: Format float image in such a way that we do not have
	useless zeros.

	* frontend-debug.adb: Use Parameter_Mode.

	* backend-be_ada.adb: Handle inout and out parameters in
	functions.

	* analyzer.adb: Handle forward entities when resolving types.

	* backend-be_ada-nutils.adb, backend-be_ada-nutils.ads,
	backend-be_ada-nodes.idl: Replace subprogram_specification with
	specification to match GNAT tree.

	* scopes.adb: Do not reset scope to No_Node for forward entities
	as they can be visited mater on and need to have a scope anyway.


2004-06-22  Laurent Pautet  <pautet@dorine.enst.fr>

	* frontend-nutils.adb, frontend-nutils.ads, backend-be_idl.adb:
	Define a new converter function for parameters to fix output bug.

	* backend-be_ada*: Merge be_a into be_ada.

	* backend-be_a-generator.adb, backend-be_a-nutils.adb,
	backend-be_a-nutils.adb, backend-be_a-nutils.ads,
	backend-be_a-nodes.idl, backend-be_a.adb: Implement designator,
	structure type, with clause (automatically added but should not be
	replicated), operation declaration,

	* analyzer.adb, scopes.adb, scopes.ads, parser.adb,
	backend-be_ada.adb, backend-be_idl.adb, frontend-nutils.adb,
	frontend-nodes.idl, frontend-nutils.ads, frontend-debug.adb,
	backend-be_ada-nutils.adb, backend-be_ada-nutils.ads, mknodes.adb:
	Clarification between nodes and entities. Clarification of
	Mode_Id.

2004-06-21  Saber Souli <souli@enst.fr>
	* backend-be_ada.adb : Handle complex declarator. Now the backend
	map all the list of declarators. Generate library file (IDL). Add
	append_type_to_package_spec (T:Node_Id ; P : node_id): a function
	that add the type <T> in the specification part of the package P.  
	    
2004-06-21  Laurent Pautet  <pautet@dorine.enst.fr>

	* backend-be_a.adb, backend-be_a-nutils.adb: Clarification between
	nodes and entities. Start implementing type declaration and
	designator and module.

	* backend-be_a-generator.adb: Fix output problem on
	Record_Extension_Part.

	* scopes.adb, parser.adb, backend-be_idl.adb, frontend-nodes.idl:
	Clarification between nodes and entities.

2004-06-15  Saber Souli   <souli@enst.fr>
  	* output.ads, output.adb 
	Add procedure Set_Space_Increment (Value : Natural); to change the
	Space_Increment and so enable dealling with different
	indentations. 
	
2004-06-15  Laurent Pautet  <pautet@dorine.enst.fr>

	* backend-be_ada-nutils.adb, backend-be_ada-generator.adb,
	backend-be_ada-nutils.adb, backend-be_ada-nodes.idl,
	backend-be_ada.adb: Rename nodes and atributes for better
	understanding.

2004-06-13  Laurent Pautet  <pautet@dorine.enst.fr>

	* backend-be_ada.adb, backend-be_ada-nodes.idl,
	frontend-debug.adb, backend-be_ada-debug.adb: Move Ada_Node into
	BE_Node. Define FE_Node in Ada tree.

2004-06-12  Laurent Pautet  <pautet@dorine.enst.fr>

	* nodes.idl, nutils.ads, nutils.adb, debug.adb, debug.ads: Remove
	and replace by child units with Frontend as prefix.
	
	* frontend-nodes.idl, frontend-nutils.ads, frontend-nutils.adb,
	frontend-debug.adb, frontend-debug.ads: See above.

	* scopes.adb, parser.adb, backend-be_idl.adb, values.ads,
	backend-be_ada-debug.ads, Makefile, iac.adb, backend-be_ada.adb,
	analyzer.adb: Replace unit names above.

	* names.ads, names.adb: Move entities to Frontend.Nutils.

	* backend-be_ada-debug.adb, backend-be_ada-debug.ads: Duplicate
	debugs.adb and debugs.ads and then adapt them. Rename wni into wbi
	(write ada backend info).
	
	* backend-be_ada-generator.adb, backend-be_ada-generator.ads,
	backend-be_ada-nodes.idl: Rename
	backend-be_ada-files_generation.adb,
	backend-be_ada-files_generation.ads. Huge clean up.

	* backend-be_ada-nutils.adb, backend-be_ada-nutils.adb: Rename
	Mk_<X> into Make_<X>. Add subprograms to deal with parameter
	mode. Huge clean up.
	
	* debug.adb, debug.ads: Change wni into wfi (write frontend info).

	* lexer.ads, lexer.adb: Move Write for token from BE_IDL.

	* backend-be_idl.adb: Move Write for token to Lexer.

	* backend-be_ada.ads: Remove blank line.

	* analyzer.adb: Minor reformating.

2004-06-11  Laurent Pautet  <pautet@dorine.enst.fr>

	* analyzer.adb: Check oneway operation rules.

2004-06-10  Laurent Pautet  <pautet@dorine.enst.fr>

	* backend-be_idl.adb: Generate idl code for union type. Fix bug in
	sequence type generation (most keywords missing). Add Generate
	procedure for values (used both for constant declaration and case
	label).

	* values.adb, values.ads: Add a comparison function between two
	values. This is used to sort labels in a union type and to detect
	duplications. Add an enumerator as a value for union type as well.
 
	* analyzer.adb: Provide two subprograms Resolve_Type and
	Resolve_Expr. Resolve_Type returns the root type. A case which is
	not well handled concerns array type as this info is in the
	declarator and not in the type spec itself (C
	syntax). Resolve_Expr is a renaming of the previous Resolve
	procedure. Analyze union type that is : analyze all the enclosed
	entities, check labels are in the switch type, check they are not
	duplicated, heck elements are not duplicated.

	* parser.adb: Do not represent enumerator with only their position
	and add their image instead. Handle union type and in particular
	set the Declaration attributes of all the nodes implied in the
	union type definition. Improve error handling for union type.

	* nodes.idl: Add node Case_Label to handle union type. Add also an
	attribute Declaration for Switch_Alternative and Case_Label in
	order to retrieve respectively the Union_Type and the
	Switch_Alternative of these entities.

2004-06-08  Saber Souli <souli@enst.fr>
	
	* backend-be_ada.adb: Add Visit_Enumeration_Type function and
	handle Enumeration_Type declaration. Add
	Visit_Constant_Declaration function. It only ignore constant
	declaration expanded by iac frontend for enumerators.

	* backend-be_ada-nutils.adb: Add Mk_Node_Enumeration_Type function
	in order to create Enumeration_Type node. Add
	Mk_Node_Type_Declaration function in order to create
	Type_Declaration node.

	* backend-be_ada-files_generation.adb: - Add
	Generate_Enumeration_Type procedure : output the source code for
	Enumeration_Type declaration.  - Add Generate_Identifier procedure
	: Output Identifier Name.
	    
2004-06-07  Saber Souli <souli@enst.fr>
	
	* backend-be_ada.adb: Handle interface operations and generate
	the appropriate Ada function or procedure. Handle the Declarators
	list in Attribute_Declaration. Handle simple Type_Declaration
	(function Visite_Type_Declaration).

	* backend-be_ada-nutils.adb: Add function
	Mk_Node_Simple_Derived_Type_Def and create a simple derived type
	declaration.
	
	* backend-be_ada-debug.adb: Add procedure W_Small_Indents in order
	to write a small indentation for making the IAC source code output
	identical to the output of IDLAC.
	
	* backend-be_ada-files_generation.adb: Use W_Small_Indents. 
	
	* nodes.idl: Add Ada_Node to manage scoped name reference in
	Type_Declaration.
	
	* be-adatree-design.txt : Ada tree production design
	document.
	
	* be-design.txt : Ada Backend Architecture"Draft". 
   
2004-06-01  Laurent Pautet  <pautet@dorine.enst.fr>

	* mknodes.adb: Debug is now a sibling from Nodes.

	* usage.adb, backend.adb, backend.ads, backend-config.adb: Adapt
	to new organization that is a usage per backend.

	* backend-be_idl.adb, backend-be_idl.ads: Provide flag -b to set
	base to output integer literal. Provide a usage procedure.

	* backend-be_ada.adb, backend-be_ada.ads: Provide flag -t to dump
	Ada tree. Provide a usage procedure.

	* flags.adb: Scan command line in two phases. First, detect the
	backend language if there is one. Second, use Getopt by setting
	cpparg and backend language as sections (see GNAT.Command_Line).
	In command like 'iac -ds tin.idl -idl -b 8', '-ds' is considered
	as a general flag and '-b 8' is considered as an IDL backend flag.

	* backend-be_idl.adb, backend-be_idl.ads: Add Configure
	procedure. Fix generation of members (readonly missing),
	operations (oneway missing), of values (base to use). Start
	generating union type.
	
	* backend-be_ada.adb, backend-be_ada.ads: Add Configure procedure.

	* backend.adb, backend.ads: Define Configure procedure for
	backends and add it as Register parameter. This configure
	procedure is supposed to read flags specific to backend using
	GNAT.Command_Line.Getopt.

	* backend-config.adb: Initialize configure procedure for backends
	IDL and Ada.

2004-05-31  Saber Souli <souli@enst.fr>
	
	* backend-be_ada.adb : This package Visit IDL tree nodes, and
	generate the appropriate Ada node following the Ada Language
	Specification. Actually I didn't take in consideration specific
	mapping introduced by using PolyORB, I let this in later stage,
	after completing all the OMG mappings specification. 
	Here are the actual mapping implemented : Module, Interface (only
	attribute setter and getter generation is completed),
	typedef (Not completed yet), Base type mapping.  
	
	* backend-be_ada-nutils.ads,backend-be_ada-nutils.adb: Contain
	several routines to simplify the creation of ada tree nodes.
	
	* backend-be_ada-nodes.idl: Add Derived_Type_Spec in order to
	declare derived types. Same for Record_Type_Spec. Add
	Ada_Function_Spec and Ada_Procedure_Spec to manage subprogram
	declarations.
	
	* backend-be_ada-debug.adb: ease debug of the Ada tree.
	
	* backend-be_ada-file_generation: Output ada file source.

2004-05-31  Laurent Pautet  <pautet@dorine.enst.fr>

	* analyzer.adb: Do not try to analyze predefined types. Add
	location to error message when invalid constant type
	detected. Expand enumerators as constants and do not cause new
	errors when enumeration type is incorrect. Re-implement attributes
	and operations inheritance and other inherited entities visibility
	as overloading declarations were not properly detected. Skip
	scoped name analyzis when attribute Reference is already set.
  
	* scopes.adb, scopes.ads: Clarify some routines and add
	comments. Fix bugs in special scoping of type names due to a
	misunderstanding of the document. Re-implement scoping.

	* debug.adb: Filter new attributes.

	* parser.adb: Adapt code to new scoped name and identifier
	constructors signature.

	* nutils.adb, nutils.ads: Add a function to detect a non module
	entity (different from specification or module). Enrich scoped
	name and identifier constructors with new attributes (needed for
	expansion).

	* nodes.idl: Add Potential_Scope to deal with type names. Make
	nodes Simple_Declarator and Complex_Declarator contiguous.

2004-05-30  Laurent Pautet  <pautet@dorine.enst.fr>

	* debug.adb: Filter some more attributes.

	* backend-be_idl.adb: Fix output for raises clause in an operation
	declaration and for no-parameter operation declaration.

2004-05-26  Laurent Pautet  <pautet@dorine.enst.fr>

	* lexer.adb: Scan properly identifier. Do not return a token
	T_Error when identifier is not well-formed. Display error, accept
	identifier and proceed in parsing. In case of invalid character,
	try to rescue lexer and progress up to a possible terminal.

2004-05-24  Laurent Pautet  <pautet@dorine.enst.fr>

	* utils.adb: Protect To_Lower against No_Name.
	
	* nodes.idl: Replace immediately with explicitely and potentially
	with implicitely. Define specification as a definition to follow
	CORBA 2.6 3.15.1.

	* backend-be_idl.adb: Inherited interface specification starts
	with a colon and not colon colon.

	* nodes.idl: Reorder Scoped_Name attributes from debug
	readibility.

	* scopes.ads: Rename functions for readibility. Add comments.
	Replace immediately with explicitely and potentially with
	implicitely.

	* scopes.adb: Same as above. Fix also name resolution bugs.

	* nutils.adb, nutils.ads: Add expansion routines to build scoped
	name, identifier and constant declaration. Used to declare
	enumerator as constant.

	* backend-be_idl.adb: Fix constant declaration output to take
	enumeration types into account. Try to reproduce omniORB IDL
	output for testing purpose.

	* debug.adb, debug.ads: Simplify debug primitives.

	* analyzer.adb: Allow enumeration type in constant
	declaration. Analyze properly enumeration type and create one
	constant declaration per enumerator. Fix Resolve operation to
	compute constant expression in case of enumeration type. Analyze
	union type.

	* parser.adb: Use Make_Identifier.
 
2004-05-22  Laurent Pautet  <pautet@dorine.enst.fr>

	* debug.adb, mknodes.adb: Remove parameter I (for number of
	indentations) in all output procedures.

	* Makefile: Force backend.be_ada.nodes generation when mknodes
	updated.
 
2004-05-21  Laurent Pautet  <pautet@dorine.enst.fr>

	* lexer.adb: Do not adjust base when the integer literal base has
	already been set to 16 (in particular a leading zero is not
	meaningful - for instance 0x01).

	* values.adb: Reorder the normalization steps for fixed point
	values (reduce precision, remove trailing zero, remove leading
	zero, recompute total digits). Set result base to the left operand
	base for shift left and shift right operations. Execute operation
	"not" as an unsigned long operation "not" for types octet, signed
	and unsigned short, signed and unsigned long.

2004-05-17  Laurent Pautet  <pautet@dorine.enst.fr>

	* nodes.idl: Remove left and right values in an expression
	node. Instead define an expression value in order to store
	the evaluation of the expression in the node.

	* parser.adb: Remove an useless conversion.

	* values.adb, values.ads: Use node kind as a discriminant for
	values (and not token kind anymore). Subtyping is different for
	constant declaration and expression and operation precision is
	different for (signed and unsigned) long long and other integer
	types for instance. Same for floating and fixed point values.

	* types.ads, lexer.ads: Define CORBA types and use them.

	* errors.adb, iac.adb: Remove blank after digit in order to
	output notations and formats like "fixed<$,$>".

	* analyzer.adb, backend-be_idl.adb: Handle constant declarations,
	expressions and literals. Handle fixed point types in particular.

	* MANIFEST: Add values.ads and values.adb.
  
2004-05-14  Laurent Pautet  <pautet@dorine.enst.fr>

	* parser.adb: Avoid to output twice an error message in
	P_Type_Spec and in P_Declarator.

	* lexer.adb: Improve error detection and fixed literal
	parsing. Fix few bugs (08D was incorrectly interpreted as
	formatted in octal).

	* errors.adb: Define '|' as a character to escape a
	meta-character. This character is not frequently used.

2004-05-13  Laurent Pautet  <pautet@dorine.enst.fr>

	* iac-cpp: read env. variable CPPEXEC to redirect command either
	to cpp or mico-cpp. Note that cpp (GNU CPP) removes all
	unnecessary blanks and makes iac to incorrectly locate errors.

	* lexer.adb, lexer.ads: Scan string literals but on minor errors
	like having a string which appears to be a wide string, do not
	produce token T_Error. Instead, produce token T_String with
	Token_Name or String_Literal_Value set to Incorrect_String. Same
	for characters.

	* parser.adb: produce a null node when an incorrect string is
	parsed in order not to analyze it later on.

	* values.adb: do not crash when dumping an empty string value.

	* analyze.adb: properly detect type mismatch for floats,
	characters, strings.

