Wed Jul  5 12:09:57 2000  Ludo Koren  <koren@vm.stuba.sk>

	* Version 0.93 released.

	* ys.y: rearrangements of definitions.
	WSTRINGC new token.
	array initialization for WSTRINGC.

	* tests/test65.ci (main): wide strings testing

	* s-conv.c (s_conv): concatenation of strings, wide string
	recognition
	(compare_format_args): CHAR and INTEGER pointer interchangeability

	* ls.l: wide string recognition

	* comp_maint.c (error_message): warning regrouping for format

Sun Jun 25 10:57:15 2000  Ludo Koren  <koren@vm.stuba.sk>

	* comp_maint.c (error_message): 1039 - redesign, 1040 - new.

	* Makefile.in (c-lex.o): 
	(keyword.o): config.h

	* keyword.gperf: config.h

Sat Jun 24 13:35:14 2000  Ludo Koren  <koren@vm.stuba.sk>

	* ls.l: all character constants recognition (ANSI C standard). 

	* ys.y (list_param): alignment for count[proc].

	* pso.c: warning during compilation. Includes rearranged.

	* ys.y (cast_expression): checking for specifier constraints and
	setting of cast type memory size.

	* pso.c: comment.

	* pso.c: set_memory_size definition.

	* pso.h: set_memory_size added.

Mon Apr 24 12:08:53 2000  Ludo Koren  <koren@vm.stuba.sk>

	* comp_maint.c (error_message): error messages and warnings for
	character constants.

	* ls.l: character constants update.

Sun Apr  9 10:45:01 2000  Ludo Koren  <koren@vm.stuba.sk>

	* ys.y: declaration signature enhancement.

	* comp_maint.c:
	compatible type and composite type update in compare2trees.

Sun Jan 10 16:59:49 1999  Ludo Koren  <koren@vm.stuba.sk>

	* s-conv.c (s_conv): alert new.

	* ls.l (stringc): character set completed.
	trigraphs new.

	* run_str.l: -Wtrigraphs option.

	* run_str.y: -Wtrigraphs option.

	* comp_maint.c: warning_trigraphs definition.
	(error_message): 6032 new.

	* flags.h: warning_trigraphs declaration.

	* s-conv.c (s_conv): trigraph sequences added.

Tue Jan  5 21:27:23 1999  Ludo Koren  <koren@vm.stuba.sk>

	* Version 0.92 released.

Sun Jan  3 10:55:42 1999  Ludo Koren  <koren@vm.stuba.sk>

	* doc/clif.1: manual page update.

	* Makefile.in (pso.o): allocx.h added.

	* tables.c (add_spec_to_tag): TYPEDEF option added.
	(allocate_aggregate): TYPEDEF option added.

	* ys.y: the typedef_f flag enables the context of typename. It was
	changed according to the standard.
	(direct_declarator): typedef_copy function.
	(first_dekl): typedef_copy function.
	(list_dekl): typedef_copy function.
	(list_loc_dekl_1): typedef_copy function.

	* pso.h (typedef_copy): new function declaration.

	* pso.c (typedef_copy): new function.

Sun Dec 20 15:21:31 1998  Ludo Koren  <koren@vm.stuba.sk>

	* ys.y (list_stat_0): Code for initialization is executed even if
	the `main' function option was specified.
	(M): storage class specifier - new.
	(type_specifier): TYPEDEF_P - new.
	(type_qualifier): TYPEDEF_P - new.
	(pointer): TYPEDEF_P - new.
	(struct_or_union_specifier): TYPEDEF_P - new.
	(struct_or_union): TYPEDEF_P - new.
	(enum_specifier): TYPEDEF_P - new.
	(enumerator): storage class specifier - new.
	(direct_declarator): TYPEDEF_P - new.
	(initializer): initialization semantic - new.
	(initializer_list_complete): new rule.
	(initializer_list): new semantic.
	(storage_class_specifier): TYPEDEF, EXTERN, EXPORT_T, STATIC,
	AUTO, REGISTER - new semantic.
	(list_type_spec): error checking for type specifiers.
	(first_dekl): semantic for TYPEDEF added.
	(func_first): rules changed. Initialization part is added.
	(func_rest): rules changed. Initialization part is added.
	(list_dekl): rules changed. Initialization part is added.
	(initializer_optional): new rule.
	(R): new rule.
	(initialization): new rule.
	(list_form_param): storage class specifier semantic - new.
	(list_loc_dekl): redesigned. Semantic for initialization added.
	(list_loc_dekl_1): redesigned. Semantic for initialization and
	storage class specifiers added.
	(initializer_optional_loc): new rule.
	(P): new rule.
	(local_initialization): new rule.
	(list_param): call_by_value flag - special case - printf
	functions. 
	(primary_expression): content of constants - corrected.
	(ident): semantic changed to call of the `lookup_tables'
	function. 
	(postfix_expression): var_adr and offset changed to the `variable'
	array.
	(unary_expression): var_adr and offset changed to the `variable'
	array.
	(assignment_expression): var_adr and offset changed to the
	`variable' array.

Sat Dec 19 19:00:43 1998  Ludo Koren  <koren@vm.stuba.sk>

	* comp_maint.c (error_message): 6028 - warning changed, if the
	function is `main'.

	* tables.c (putstruct): semantic for typedef - new.
	(point_loc): new variable - `variable' used.
	(set_value): function redesigned. The variable `variable' in use.
	(allocate_aggregate): If the array is multidimensional, the size
	of each sub-dimension is set in attribute `memory_size'.
	(memory_size): new function.
	(check_init_bracket): new function.
	(get_memory_size): new function.
	(get_field_size): new function.
	(noninitialized_loc): new function.

	* tables.h (noninitialized_loc): new function declaration.

	* pso.c (struct var_s): new structure for variables. It is used
	for extern declaration.
	(lookup_tables): new variable of the type struct var_s. Function
	prototype changed. Usage of var_adr and offset changed to the new
	variable. 

	* parser.h (struct var_s): new structure. It substitutes offset
	and var_adr variables.
	aggregate_memory_size - new variable.
	(SET_ADDRESS): changed for new variable of struct var_s.

	* pso.h (lookup_tables): prototype changed.

	* comp_maint.c (put_array_subscript): during initialization an
	array may be without dimensions.
	(error_message): 1036 - 1037, 2017 - 2018, 6030 - 6031, new.
	(type2string): UNSIGNED_AC new.
	(check_spec_constr): TYPEDEF_P added.

	* type.h (storage_class_specifier): UNSPEC_SC - new enum
	constant.
	(EXTERN_P): new manifest constant.
	(EXPORT_P): new manifest constant.
	(STATIC_P): new manifest constant.
	(AUTO_P): new manifest constant.
	(REGISTER_P): new manifest constant.
	(UNSPEC_P): new manifest constant.
	(UNDEF_P): new manifest constant.

	* tables.h (get_memory_size): new function declaration.
	(get_field_size): new function declaration.

Sun Dec  6 12:16:42 1998  Ludo Koren  <koren@vm.stuba.sk>

	* ls.l: matching of null character ('\0')

	* myintrinsic.c (do_fprintf): printing string pointers - call by
	value. 

Sat Dec  5 12:57:25 1998  Ludo Koren  <koren@vm.stuba.sk>

	* s-conv.c (compare_format_args): warning for integer and pointer
	argument mismatch added.

Sat Nov 28 17:45:26 1998  Ludo Koren  <koren@vm.stuba.sk>

	* myintrinsic.c (do_fprintf): parsing of different kind of
	integers added.
	(transform_to_simple_type): support for different kind of
	integers added.

Thu Oct 29 19:59:17 1998  Ludo Koren  <koren@vm.stuba.sk>

	* comp_maint.c (implicit_cast): #if changed to #ifdef
	LONG_CAN_UINT 

Thu Aug 20 20:26:49 1998  Ludo Koren  <koren@vm.stuba.sk>

	* doc/clif.1: manual page - new.

Sun Aug 16 11:41:56 1998  Ludo Koren  <koren@vm.stuba.sk>

	* Makefile.in ($(srcdir)/utils/yy): get rid of $< rule. Not
	supported correctly by all flavors of make.

Sun Aug  2 13:54:30 1998  Ludo Koren  <koren@vm.stuba.sk>

	* comp_maint.c (gen_cast_needed): type_com[set] is set to the new
	type (after cast). 

	* parser.h: full_bracketing - new variable definition.

Sat Aug  1 13:40:51 1998  Ludo Koren  <koren@vm.stuba.sk>

	* s-conv.c (compare_format_args): FLT cast to DOUBLE if needed.

	* comp_maint.c (gen_cast_needed): new function.

	* comp_maint.h: gen_cast_needed new function declaration.

	* s-conv.c (compare_format_args): DOUBLE - FLT can be used
	interchangeably. 

	* parser.h: initialize_only - new variable.

Sun Jul 26 11:39:18 1998  Ludo Koren  <koren@vm.stuba.sk>

	* parser.h (SET_CODE_GENERATION_BEGINNING): new macro.
	(RESET_CODE_GENERATION_BEGINNING): new macro.

Sat Jul 25 17:26:49 1998  Ludo Koren  <koren@vm.stuba.sk>

	* pso.h: new file.

	* pso.c: new file.

	* Makefile.in (OBJS): pso.o new.
	(c-parser.o): pso.h new.
	(pso.o): new target.

Wed Jul 22 20:52:29 1998  Ludo Koren  <koren@vm.stuba.sk>

	* Version 0.90.3 released.

Tue Jul 21 21:34:18 1998  Ludo Koren  <koren@vm.stuba.sk>

	* ys.y (expression): CLRT removed.

	* tables.c (typedef_p): typedef_f added. pa testing if the lookup
	in global table should be done.

	* ys.y: typedef_f - set and reset added. If the context can be
	TYPENAME, it is set to 1; 0 otherwise.

	* global.c: typedef_f new definition.

	* global.h: typedef_f new declaration.

Mon Jul 20 20:31:22 1998  Ludo Koren  <koren@vm.stuba.sk>

	* comp_maint.c (error_message): 6029 new.

	* ys.y (list_param): expression changed to assignment_expression. 
	argument_expression_list removed.
	(expression): comma operator - new.

Sun Jul 19 20:49:16 1998  Ludo Koren  <koren@vm.stuba.sk>

	* ys.y: TYPENAME - new token.
	(jump_statement): return without value from function returning
	non-void - bug fixed.
	(M): UNUSED_AC - added.
	(type_specifier): TYPENAME token new.
	(typedef_name): deleted.
	(storage_class_specifier): semantic for TYPEDEF fixed.

	* comp_maint.c (fix_ret): error message for 6028 - new.
	(error_message): 1001 - new output. 6028 - new - control reaches
	end of non void function.

	* tables.c (has): declaration_line used.
	(has_loc): declaration_line used.
	(putstruct): TYPEDEF_P new.
	(putstruct_loc): TYPEDEF_P new.
	(typedef_p): TYPEDEF_P new.
	(get_declaration_line): new function.

	* type.h (enum intern_arit_class): enum's values changed to hex
	const. 
	(TYPEDEF_P): new define.
	(UNUSED_P): new define.

	* tables.h (get_declaration_line): new function declaration.

	* struct.h (struct tab): declaration_line new.

	* ls.l: tables.h new. Decision making between typename and
	identifier.

Sat Jul 18 19:17:20 1998  Ludo Koren  <koren@vm.stuba.sk>

	* Makefile.in (c-lex.o): tables.h new.

	* tables.c (typedef_p): new function.

	* tables.h (typedef_p): new function declaration.

Sun Jul 12 16:54:05 1998  Ludo Koren  <koren@vm.stuba.sk>

	* Version 0.90.2 released.

	* tables.c: hastab_tag removed. pi_tag removed. tagtab definition
	changed. 
	(clear_hash_tab): calling sequence of clear_hash_tab_next
	changed. 
	(clear_hash_tab_next): new prototype.
	(clear_tag_tab): new function.
	(has_tag): redesigned. Scope level changes added.
	(putstruct_tag_body): Scope level changes added.
	(add_spec_to_tag): Scope level changes added.
	(add_ident_to_tag): Scope level changes added.
	(allocate_aggregate): bug fix for enum.

	* comp_maint.c (print_file_name): func_def_f used instead of
	count[proc]. 
	(exit_scope): clear_tag_tab added

	* struct.h (struct ident_tab_loc): list_formal_param new field.

	* tables.h: clear_tag_tab new function declaration.

	* ys.y (func_first): exit_scope has to be sooner than the
	proc_name_text[proc--] for proper error messages.

Sat Jul 11 09:38:28 1998  Ludo Koren  <koren@vm.stuba.sk>

	* tables.c (enter_file_scope): bug fix - do not call enter_scope
 	anymore.
	(exit_file_scope): bug fix - do not call exit_scope anymore.

	* ys.y (first_dekl): setting flag for function definition or
	declaration context.
	(func_first): resetting flag for function definition or
	declaration context. Bug fix - clear_hash_tab and exit_scope
	calling (removing where it was not necessary). 

	* comp_maint.c (func_def_s): new function.
	(func_def_r): new function.
	(enter_scope): bug fix.
	(exit_scope): bug fix.

	* comp_maint.h: func_def_s and func_def_r - new function
	declarations. 

Mon Jul  6 18:52:22 1998  Ludo Koren  <koren@vm.stuba.sk>

	* ys.y (list_loc_dekl): warning for empty declaration.

Wed Apr 29 17:32:35 1998  Ludo Koren  <koren@vm.stuba.sk>

	* Version 0.90.1 released.

	* Makefile.in (extraclean): some actions moved from clean.

	* configure.in: fixing bug - old sh cannot set variable.

Fri Apr 24 08:23:13 1998  Ludo Koren  <koren@vm.stuba.sk>

	* ys.y (statement): checking for statements with no effect.
	(for): checking for statements with no effect.
	(for_expr2): checking for statements with no effect.
	(postfix_expression): checking for invalid lvalue.
	(assignment_operator): checking for invalid lvalue.

	* comp_maint.c (init): initialization of current_instr.
	(error_message): last_error_line - new variable. 1034 - 1035 -
	new. 3006 - deleted. 6027 - new.

	* parser.h (MOV_P): new entry.
	(POPA_P): new entry.
	(PUSHA_P): new entry.

	* global.h (GENCODE): last_instr and current_instr settings.

	* global.c: last_instr, current_instr new variables.

	* comp_maint.c (clif): fatal error handling.
	(error_message): 4004 - new.

	* configure.in: inter_handl_posix.c, inter_handl_bsd.c,
	inter_handl_lin.c, inter_handl_svr3.c, inter_handl_svr4.c renamed
	to sig-posix.c, sig-bsd.c, sig-lin.c, sig-svr3.c, sig-svr4.c,
	respectively. 

	* inter_handl_posix.c (fatal_handler): 
	(fatal_handler_register): new functions.

	* inter_handl_bsd.c (fatal_handler): 
	(fatal_handler_register): new functions.

	* inter_handl_lin.c (fatal_handler): 
	(fatal_handler_register): new functions.

	* inter_handl_svr3.c (fatal_handler): 
	(fatal_handler_register): new functions.

	* inter_handl_svr4.c (fatal_handler): 
	(fatal_handler_register): new functions.

	* configure.in: complicated checks moved to aclocal.m4; simplified

	* aclocal.m4: new file.

	* ys.y (shift_expression): ERROR_P
	(assignment_operator): ERROR_P

Thu Apr 23 16:39:42 1998  Ludo Koren  <koren@vm.stuba.sk>

	* acconfig.h: MAX_ALIGNMENT - new entry.

	* configure.in: file rearrangement, new cache variables, their
	usage and simplification.

	* ys.y (ident): (postfix_expression): (unary_expression):
	(additive_expression): (logical_AND_expression):
	(logical_OR_expression): (assignment_operator): POINTER is
	LONG_AC. 

	* tables.c (find_member): POINTER is LONG_AC.

	* virtual_machine.c (exe): MOV instructions for pointers
	changed. Casts to long ints.

	* tables.c (allocate_aggregate): sizeof (double) changed to the
	manifest constant MAX_ALIGNMENT.

	* tests/test46.ci (foobar): sizeof cannot be in output. It is
	depending on default MAX_ALIGNMENT.

	* tests/test47.ci: sizeof cannot be in output. It is depending on
 	default MAX_ALIGNMENT.

Wed Apr 22 15:21:36 1998  Ludo Koren  <koren@vm.stuba.sk>

	* Makefile.in (all): all.progs all.config new targets
	(stamp-h): bug fixed
	(distclean): auto-config.h added

Sun Apr 19 16:13:42 1998  Ludo Koren  <koren@vm.stuba.sk>

	* tests/check-them: test[6-9][0-9] - compiler-like behavior.

	* ys.y (list_stat_0): handle_main - moved to clif function. 
	(list_param): call_by_value - semantic added.
	(primary_expression): memory size for constant filled.
	(ident): semantic unified for locals and globals. Semantic added
	for call_by_value.
	(postfix_expression): subscripts are also for pointers
	possible. Last multiplication and addition moved to the subscript
	parsing. Postfix operator's semantic simplified.
	(unary_expression): semantic for arrays simplified. Memory size
	for address operator is properly set.

	* virtual_machine.c (exec): symbolic debugging option added.
	(exe): POPA - new instructions implementation (minors 2 - 771).
	CALLi - new instructions implementation (minors 14 - 26).

	* geninstr.h (GEN_PUSHAIld): bug fixed.
	(GEN_POPAe): minor changed.
	(GEN_POPAst): minor changed.
	(GEN_POPAi): (GEN_POPAui): (GEN_POPAli): (GEN_POPAlui):
	(GEN_POPAsi): (GEN_POPAsui): (GEN_POPAd): (GEN_POPAld):
	(GEN_POPAf): (GEN_POPAc): (GEN_POPAsc): (GEN_POPAuc): (GEN_POPAb):
	new instructions added.
	(GEN_XCALLiv): (GEN_XCALLdv): (GEN_XCALLfv): (GEN_XCALLcv):
	(GEN_XCALLvv): (GEN_XCALLuiv): (GEN_XCALLliv): (GEN_XCALLluiv):
	(GEN_XCALLsiv): (GEN_XCALLsuiv): (GEN_XCALLldv): (GEN_XCALLscv):
	(GEN_XCALLucv): new instructions added.

	* tables.c (putstruct): memory size of return value for functions
	added. 
	(putstruct_loc): redesigned and support for call_by_value and
	call_by_reference flags.
	(find_member): type_ac was not properly set for pointers - fixed.

	* comp_maint.c (error_message): 2000 - error message deleted and
	2001 moved to 2000. 2000 error message edited.

	* configure.in: isspace added

	* Makefile.in (remote_call.o): config.h added

	* myintrinsic.c (isspace): define or lib function.
	(BUFSIZ): define if not defined
	(do_fprintf): implementation of call by value and call by
	reference.
	(do_fscanf): redesign. parsing of format and reading per
	argument. 

	* s-conv.c (compare_format_args): call by value - arguments to
	scanf checking.

Fri Apr 17 08:46:22 1998  Ludo Koren  <koren@vm.stuba.sk>

	* comp_maint.c (pointer_cast): assignment of struct or union to
	pointer added.

	* comp_maint.h: start_main declaration deleted.

	* comp_maint.c (clif): compiler-like behavior added

	* Makefile.in (comp_maint.o): flags.h, virtual_machine.h

	* input.c (terminate_buffer): do not switch to stdin, if the user
	has specified -fhandle-main
	(input_komp): the same as above only for at&t lex

	* ls.l: stuff for debugging added.

	* dbg-out.c: new file.

	* Makefile.in (Makefile): new target
	($(srcdir)/configure): new target
	(config.status): new target
	($(srcdir)/stamp-h.in): new target
	(stamp-h): new target

Thu Apr 16 09:56:09 1998  Ludo Koren  <koren@vm.stuba.sk>

	* Makefile.in (OBJS): dbg-out.o - new file
	(c-lex.o): dbg-out.h new
	(dbg-out.o): new target

	* dbg-out.h: new file

	* flags.h: dbg_symbols variable declaration.

	* run_str.l: -g option added.

	* run_str.y: -g option added.

	* comp_maint.c: dbg_symbols - new variable.

	* allocx.h (freex): new function declaration

	* allocx.c (mallocx): error checking
	(reallocx): error checking
	(freex): new function

Mon Apr 13 09:42:10 1998  Ludo Koren  <koren@vm.stuba.sk>

	* run_str.y: NO_CALL_BY_REFERENCE and NO_CALL_BY_VALUE - new.

	* run_str.l: NO_CALL_BY_REFERENCE and NO_CALL_BY_VALUE - new.

	* configure.in (LEX): new check. Check for float.h deleted.
	warning on automatic resume generation - new.

	* Makefile.in (LEX): new variable
	(rs-lex.o): allocx.h new
	(virtual_machine.o): lex_t.h new
	(store_cont.o): lex_t.h new
	(clif.o): config.h new
	(allocx.o): config.h new
	(input.o): lex_t.h new
	($(srcdir)/c-lex.c): lex_t.h - define for flex scanner - new.

	* comp_maint.c: error_count, warnings_are_errors,
	call_by_reference, call_by_value - new variables.
	pf, spf have type of FILEATTR.
	(clif): call_by_value, call_by_reference skeleton - new.
	(init): spf used
	(error_message): error_count is used. spf is used.
	4003, 7002, 7003 - new
	(print_file_name): spf is used
	(print_source_line): spf is used
	(add_constant_to_list): spf is used
	(add_default_to_fixp): spf is used
	(start_main): semantic fixed.

	* ys.y (YYDEBUG): new macro
	(list_stat_0): semantic for handle_main - fixed.
	(stat_0): syntax checking, if handle_main was specified. 
	(compound_statement): ERROR_P macro used.
	(ident): call_by_reference and call_by_value skeleton - new.
	(dump_yacc): new function.

	* ls.l (yywrap): alternative calls when flex is used.
	(switch_to_stdin): new function
	(switch_to_char_buffer): new function
	(switch_to_buffer): new function
	(store_buffer_state): new function
	(flush_buffer): new function

	* virtual_machine.c: lex_t.h new file
	(exec): alternative calls when flex is used.

Sun Apr 12 11:07:57 1998  Ludo Koren  <koren@vm.stuba.sk>

	* parser.h: main_defined - new variable
	(ERROR_P): new macro.

	* store_cont.c: support for flex added

	* store_cont.h (struct CONTEXT): state in flex stored as well.

	* input.c (terminate_buffer): new function.

	* input.h: support for flex added - switch_to_stdin,
	switch_to_char_buffer, switch_to_buffer, terminate_buffer. 

	* acconfig.h: HAVE_FLOAT_H removed - STDC_HEADERS should cover
	this.

	* flags.h: call_by_reference, call_by_value, warnings_are_errors
	new flags.

	* clif.c: config.h added. It is needed for CONTROL macro
	definition. 

	* tables.c (has): setting of main_defined variable.

	* init_rs.c (switch_to_char_buffer): if str_ptr is null, don't
	switch to buffer.

	* run_str.l: WARNING_ERROR - new

	* run_str.y: WARNING_ERROR - new

Fri Apr 10 12:10:32 1998  Ludo Koren  <koren@vm.stuba.sk>

	* run_str.l: DUMP_YACC - new

	* run_str.y: dump_yacc - new

	* init_rs.c (switch_to_char_buffer): bug fixed for longer run time
	strings. (command line options)

Thu Apr  9 07:32:17 1998  Ludo Koren  <koren@vm.stuba.sk>

	* global.h: argv_rs declaration removed.

	* init_rs.c (switch_to_char_buffer): new function;
	now it is possible to use flex scanner as well.

	* run_str.l: CALL_BY_REFERENCE and CALL_BY_VALUE new options
	added.

	* run_str.y: CALL_BY_REFERENCE and CALL_BY_VALUE new options
	added.

	* config.h: HAVE_FLOAT_H - deleted.

	* allocx.c (mallocx): new function.
	(reallocx): new function.

	* allocx.h: mallocx, reallocx new prototypes.

	* tables.c: parens around isalpha macro.
	(set_value): malloc to mallocx.

	* global.c: line_counter removed.

	* global.h (struct fileattr): new struct.

	* tables.c (point_call): spf instead of argvv
	(point_loc): spf instead of argvv
	(set_value): spf instead of argvv
	(has_goto): spf instead of argvv
	(has_label): spf instead of argvv
	(enter_file_scope): spf instead of argvv
	(exit_file_scope): spf instead of argvv

	* s-conv.c (s_conv): spf - new struct with filename, file pointer
	and line counter per file.

Mon Apr  6 18:43:57 1998  Ludo Koren  <koren@vm.stuba.sk>

	* configure.in: usage of cached values added; auto-config.h
	created. 

	* config.h: auto-config.h added

	* Makefile.in (inter_handl_posix.o): new target;
	config.h added

	* inter_handl_bsd.c: config.h

	* inter_handl_lin.c: config.h

	* inter_handl_svr3.c: config.h

	* inter_handl_svr4.c: config.h

	* inter_handl_posix.c: config.h

	* acconfig.h: new file.

	* comp_maint.h: error_count - new variable

	* ys.y (primary_expression): all integer constant tokens added;
	long double and float constant as well.

	* ls.l: all integer constant tokens added

Tue Mar 31 20:02:27 1998  Ludo Koren  <koren@vm.stuba.sk>

	* Version 0.90 released.

Mon Mar 30 17:26:17 1998  Ludo Koren  <koren@vm.stuba.sk>

	* tables.c (set_value): isalpha call
	(allocate_struct): VOID added

	* configure.in: AC_CHECK_FUNCS - isalpha

	* s-conv.c (s_conv): bug fixed - format of basic types (integer,
	etc.; we are not using += anymore for them).

	* tables.c (set_value): isalpha function call.

	* ys.y (statement): new data types for stack emptying added.
	(for): ditto.
	(for_expr2): ditto.
	(type_specifier): semantic for long, signed, unsigned, short type
	specifiers.
	(list_type_spec): check_spec_constr call.
	(first_dekl): ditto.
	(list_dekl): ditto.
	(list_form_param): ditto.
	(list_loc_dekl_1): ditto.
	(primary_expression): For constants, attribute domain points to
	the constant.

	* comp_maint.c (init): pri array - new initialization.
	(implicit_cast): new data types - semantic added (long, signed,
	unsigned, short).
	(l_value_cast): new data types - semantic added (long, signed,
	unsigned, short).
	(error_message): 2012 - 2016 new. 6025 - 6026 new.
	(type_transform): new data types - added (long, signed, unsigned,
	short).
	(mov2lvalue): new data types - semantic added (long, signed,
	unsigned, short).
	(check_spec_constr): new function.

	* tables.c (putstruct_loc): allocation of new data types added.
	(align_memory): 
	(move_offset_aligned): MAX_CELL_MEMORY_SIZE - new macro used.
	(allocate_var): allocation of new data types added.
	(allocate_struct): allocation of new data types added.

	* geninstr.h: new instructions (minors) for new data types - long,
	signed, unsigned, short.

	* virtual_machine.c (exe): CVT class of instruction added. Now,
	there are cast instruction from each type to every type.

	* comp_maint.h (check_spec_constr): new function prototype.

	* instr.h: types for new PUSHAI instructions.

	* cast.h: casts for all C types added

	* configure.in: limits.h, float.h - new checks
	AC_C_LONG_DOUBLE - new check 

	* myintrinsic.c (do_fprintf): args of type long double can be
	printed. 
	(transform_to_simple_type): new global types added.

	* config.h: new file.

	* type.h: global type extended
	(CONST_P): new macro.

	* s-conv.c (compare_format_args): promotion of char to int
	enabled. 

Sun Mar 29 09:32:57 1998  Ludo Koren  <koren@vm.stuba.sk>

	* Makefile.in (c-parser.o): 
	(virtual_machine.o): 
	(comp_maint.o): 
	(tables.o): config.h new

Wed Mar 25 20:08:27 1998  Ludo Koren  <koren@vm.stuba.sk>

	* ys.y: all switch statements with type_ac[set] moved to
	geninstr.h

	* geninstr.h: all switch statements moved here from ys.y; macros
	for generic instructions.

Tue Mar 24 15:03:38 1998  Ludo Koren  <koren@vm.stuba.sk>

	* ys.y (list_param): compare_format_args interface changed
	type to type_ac, or arit_class dereferencing

	* type.h: VOID_P, CHAR_P, SHORT_P, INTEGER_P, LONG_P, FLOAT_P,
	DOUBLE_P, SIGNED_P, UNSIGNED_P - new macros
	INTEGER_CONS, DOUB_CONS, FLT_CONS, CHR_CONS, VID_CONS - deleted

	* tables.c (putstruct_loc):
	(allocate_var): 
	(find_member): type to type_ac, or arit_class dereferencing
	integer_cons, doub_cons, flt_cons, chr_cons, vid_cons - deleted


	* comp_maint.c (implicit_cast):
	(l_value_cast):
	(put_array_subscript):
	(type2string):
	(compare2trees):
	(add_subs_to_spec_list):
	(move2lvalue):
	(put2table):
	(promote_type): type to type_ac, or arit_class dereferencing

	* s-conv.c (s_conv): long, short, signed, unsigned - new
	(compare_format_args): new calling interface; new type comparison

	* tables.h: type to type_ac

	* struct.h (struct attr): arit_class is not a pointer anymore

	* s-conv.h (compare_format_args): prototype changed

	* parser.h (TYPE_CLEAR): type to type_ac

Mon Mar 23 13:19:53 1998  Ludo Koren  <koren@vm.stuba.sk>

	* ys.y (type_specifier): long, short, signed, unsigned - new
	keywords 

	* keyword.gperf: long, short, signed, unsigned - new keywords

	* type.h: enum intern_arit_class extended to all basic specifier. 

	* comp_maint.c (error_message): warning_inhibit new
	(put_array_subscript): bug - fixed
	pri array - bug on size - fixed

Tue Mar 17 16:42:45 1998  Ludo Koren  <koren@vm.stuba.sk>

	* flags.h: warning_inhibit - new variable.

	* run_str.y: warning inhibit - new

	* run_str.l: rules added for all warning variables and handle
	main.

Mon Mar 16 16:45:45 1998  Ludo Koren  <koren@vm.stuba.sk>

	* tables.c (putstruct): POINTER - bug fix - memory_size was not
	set. 

	* ys.y (postfix_expression): postfix increment and decrement
	operators for pointer arithmetic - new.
	(unary_expression): prefix increment and decrement operators for
	pointer arithmetic - new.
	(assignment_operator): ADD_ASSIGN, SUB_ASSIGN lvalue and rvalue
	have the same type_com.

	* tests/test58.ci: tests for pointer arithmetic.

Sun Mar 15 09:28:01 1998  Ludo Koren  <koren@vm.stuba.sk>

	* run_str.y: warning_aggregate_return new.

	* ys.y: flags.h new
	(list_stat_0): new flag handle_main
	(first_dekl): error_message for returning aggregate.
	(list_param): error_message for passing aggregate.
	move2lvalue calling interface changed. 

	* comp_maint.c: flags.h new
	(pointer_cast): handling of functions and aggregates added.
	(error_message): tests in warnings for new warning variables
	added. 6023 - 6024 new.
	(mov2lvalue): interface changed. Implementation of STRUCT_FC and
	UNION_FC - new.
	(move2lvalue): interface changed.
	(start_main): new function.

	* virtual_machine.c (exe): MOVbv new instruction.

	* geninstr.h (GEN_MOVbv): new instruction.

	* comp_maint.h: start_main declaration.

Sat Mar 14 13:25:22 1998  Ludo Koren  <koren@vm.stuba.sk>

	* run_str.y: rules added for all warning variables and handle
	main.

	* flags.h: new file

	* s-conv.c: flags.h new

	* tables.c: flags.h new

	* Makefile.in (rs-parser.o): 
	(c-parser.o): 
	(tables.o): 
	(s-conv.o): flags.h new

	* s-conv.c (s_conv): warning_comment added.

	* Makefile.in (diff): new target.

Fri Mar 13 09:12:50 1998  Ludo Koren  <koren@vm.stuba.sk>

	* comp_maint.c (type_compare): error_message (1028) commented
	out. 

	* ys.y (primary_expression): arit_class added.
	(postfix_expression): bug for increment and decrement fixed. 
	(unary_expression): walking through type_com for arrays now;
	STRUCT_FC, UNION_FC added
	pointer arithmetic and pointer operand type error checking
	implemented for expressions.

	* comp_maint.c (error_message): 1030 - 1033 new
	6022 new
	(print_file_name): if a function call in function definition was
	parsed, the function name was not printed.
	(type2string): ARRAY_P added.

	* tables.c (set_value): bug fixed in finding of an identifier.

	* comp_maint.c (type_transform): POINTER - new

	* myintrinsic.c (do_fprintf): format 'p', 'n', 'G', 'E', 'i', 'o',
	'u', 'x', 'X' new

	* s-conv.c (compare_format_args): bug for void pointers

	* ys.y (postfix_expression): implementation of postfix increment
	and decrement
	(postfix_expression): bug fix for postfix increment and decrement;
	arrays, structs not tested

	* comp_maint.c (type2string): return of pointer string

	* virtual_machine.c (exe): implementation of MOVvi, MOVvd, MOVvf,
	MOVvc instructions

	* instr.h (XCHG): new instruction

	* geninstr.h (GEN_MOVvi): 
	(GEN_MOVvd): 
	(GEN_MOVvf): 
	(GEN_MOVvc): new instructions; MOV value on the arithmetic stack
	to temporaries.
	(GEN_XCHG): new instruction

Wed Mar 11 14:45:41 1998  Ludo Koren  <koren@vm.stuba.sk>

	* myintrinsic.c (do_fprintf): redesign to use all format strings.

	* ys.y (logical_AND_expression): ansi implementation of &&
	(logical_OR_expression): ansi implementation of ||

	* ansidecl.h: new file

	* s-conv.c (s_conv): args are evaluated only for functions.

	* comp_maint.c (error_message): ellipsis definition.

	* printf_unix.c (fprintfx):
	(printfx): ellipsis definition.

	* parser.h: and_jmp, or_jmp - fix addresses in && and ||
	operators. 

	* global.h: error_message declaration deleted; ansidecl.h new

	* printfx.h: fprintfx, printfx - ellipsis declaration

	* comp_maint.h: deleting error_message declaration.

	* ys.y: s-conv.h new
	(iteration_statement): call of promote_type
	(for_expr1): call of promote_type
	(list_param): args checking and format args error checking.
	(primary_expression): STRINGC bug fixed (type was not set).
	(postfix_expression): args checking in funtion call
	(unary_expression): bug fix for code generation for arrays.
	Semantic for arrays dereferencing.

Tue Mar 10 12:38:19 1998  Ludo Koren  <koren@vm.stuba.sk>

	* s-conv.h: new file

	* s-conv.c: allocx.h, type.h, struct.h, comp_maint.h, s-conv.h new
	num_args, args
	(s_conv): parsing and error checking of format strings for scanf
	and printf class functions.
	(store_arg_type): new function
	(compare_format_args): new function

	* comp_maint.c: s-conv.h new
	(error_message): new prototype; goto's to the va_end macro;
	(error_message): 6014 - 6021 new
	(get_num_args): new function
	(promote_type): new function

	* comp_maint.h: new prototype for error_message
	get_num_args new prototype
	promote_type new prototype
	
	* Makefile.in (c-parser.o): s-conv.h new
	(comp_maint.o): s-conv.h new
	(s-conv.o): s-conv.h new

	* global.h: new prototype for error_message

	* Makefile.in (s-conv.o): new header files
	(dist): distribution target changed.

	* input.c: error_message function declaration deleted

	* myintrinsic.c (cfflush): new function

	* intrinsic.h: fflush - new

	* io.ci: fflush added

Sun Mar  8 18:27:09 1998  Ludo Koren  <koren@vm.stuba.sk>

	* io.ci: printf, fprintf, scanf, fscanf, enum for stdin, stdout,
	stderr

	* intrinsic.h: cprintf to printf; fprintf new; cscanf to scanf;
	fscanf new

	* myintrinsic.c (cprintf): printf like new function
	(cfprintf): fprintf like new function
	(do_fprintf): internal fprintf with basic format parsing. 
	(do_fscanf): internal fscanf
	(cfscanf): fscanf like new function
	(cscanf): scanf like new function

	* all tests changed from cprintf to printf and cscanf to scanf.

Sat Mar  7 16:28:21 1998  Ludo Koren  <koren@vm.stuba.sk>

	* tests/test03.ci: variable cprintf format

	* tests/test04.ci: variable cprintf format

	* tests/test05.ci: variable cprintf format

	* tests/test06.ci: variable cprintf format

	* ys.y (struct_or_union_specifier): struct_union_enum_name used.
	(struct_declaration): suen_count used.
	(enum_specifier): error checking and type setting for anonymous
	enum.
	(storage_class_specifier): TYPEDEF, EXTERN, EXPORT_T, STATIC,
	AUTO, REGISTER - semantic added.
	All calls to has replaced with put2table call.
	kodp = kodp1 changed to kodp1 = kodp.
	proc_name_text and proc_name are properly cleared now.
	Usage of the param_flag variable for enhanced error checking.
	(list_loc_dekl_1): added semantic for static variables.
	(ident): added semantic for static variables.

	* tables.c: hash_code_loc, hash_code_goto deleted
	(putstruct): kodp1 changed to kodp. necessary for static variables
	in functions.
	(hash_code): return value changed. size of the table is a
	parameter.
	(putstruct_loc): STATIC_SC now recognized
	(putstruct_loc): ENUM_FC, UNION_FC new.
	(allocate_var): address - new parameter.
	(allocate_var): kodp1 changed to kodp.
	(putstruct_static): new function.
	(enter_file_scope): new function.
	(exit_file_scope): new function.

	* tables.h (enter_file_scope): new function declaration.
	(exit_file_scope): new function declaration.

	* type.h: enum storage_class_specifier - new.
	(POINTER_P, STRUCT_P, UNION_P, ENUM_P, ARRAY_P, SIMPLE_P, LOCAL_P,
	REMOTE_P, STATIC_P): parenthesized

	* struct.h (struct attr): storage_class_specifier is enum now.
	(struct ident_tab_header): file_scope - new member.
	(struct ident_tab_loc): body, adr - new members

	* input.c (input_komp): exit_file_scope call - new. Static
	variables of file scope have to be changed to non valid.

	* global.h: struct_union_field, suen_count new variables.

	* global.c: struct_union_field, suen_count new variables.

	* comp_maint.h (put2table): new function declaration

	* comp_maint.c (ERROR_FULL_INFO): changing sequence of output to
 	gcc-like
	(error_message): 1003 - changed to report line number
	(error_message): 1004 - function recognition moved to
 	print_file_name function
	(error_message): 6003, 6006 - function recognition moved to
 	print_file_name function
	(error_message): 6007, 6008 - ERROR_FULL_INFO added
	(error_message): 6009 output improved
	(print_file_name): recognition of function added
	(print_error_number): formatting of output changed
	(print_line_number): formatting of output changed
	(put2table): new function

	* tests/test_em_struct (bar): new part for testing of not properly
	defined types in param lists

Tue Mar  3 13:34:06 1998  Ludo Koren  <koren@vm.stuba.sk>

	* Version 0.9 released.

	* Makefile.in (mostlyclean): flc - new

	* doc/guide_programmers.tex: update

Mon Mar  2 12:04:48 1998  Ludo Koren  <koren@vm.stuba.sk>

	* s-conv.c (s_conv): new function.

	* Makefile.in (s-conv.o): new file.

	* ls.l: stringc - s_conv function is new module.

	* comp_maint.c (type_compare): check for pointers to SIMPLE
	variables added.
	(type_compare): warning for non compatible pointer to SIMPLE
	types.

	* tests/test48.ci: pointer to SIMPLE

Sun Mar  1 11:08:45 1998  Ludo Koren  <koren@vm.stuba.sk>

	* ys.y (statement): expression; bug for void fixed
	(declarator):  semantic added
	(first_dekl): pointers added
	(list_dekl): pointers added
	(list_form_param): pointers added
	(list_loc_dekl_1): pointers added
	(list_param): semantic simplified. Generic PUSHA and MOV used
	instead. 
	(primary_expression): semantic simplified. Generic PUSHA and MOV
	used instead.
	(ident): semantic changed. PUSHA is emitted immidiatelly when the
	variable is found in the hash table.
	(postfix_expression): pointers added. Get rid of kodp4.
	(unary_expression): semantic simplified. Generic PUSHA and MOV
	used at the other places instead. Semantic added for address
	operator (constant and variable). Semantic for pointer
	dereferencing. 
	(assignment_expression): Semantic simplified. Get rid of kodp4.
	(ae_empty): semantic changed.

	* comp_maint.c (l_value_cast): pointer cast - new.
	(pointer_cast): new function.
	(error_message): 1028, 1029 - new
	(error_message): 6012, 6013 - new
	(type2string): new function
	(add_to_spec_list): ARRAY_P macro used.
	(copy_type): type is copied only in one level (not recursive as it
	was up to now).
	(clear_internal_type): semantic for cyclic definition and
	declaration added.
	(mov2lvalue): simplified for usage of new MOV instructions.
	(type_compare): new function.
	(cyclic_def): new function.

	* tables.c (putstruct): ARRAY definition unified. The
	allocate_aggregate function is always called.
	(putstruct): POINTER - new.
	(putstruct_loc): memory_size member is assigned for locals.
	(putstruct_loc): memory_size field assigned (for structures) if it
	was not yet. 
	(putstruct_loc): POINTER - new.
	(allocate_struct): POINTER - new.
	(allocate_aggregate): for ARRAY, size evaluation - bug fixed.

	* virtual_machine.c(exe): redesign of MOV and PUSHA
 	instruction. All instructions with offsets removed. Address'
 	offsets are evaluated in arithmetical stack and placed on the top
 	of it. 
	In NEG instruction, a bug is fixed.

	* geninstr.h (GEN_PUSHA):
	(GEN_PUSHAr):
	(GEN_PUSHArr): redesign of PUSHA class of instructions. Get rid of
 	all relative and offset PUSHA instruction. Strategy of variables
 	access on the stack is changed. It is much more simple now.
	(GEN_MOVi): the same as above. Get rid of all relative MOV with
	address. 
	(GEN_MOVap): new instruction. [AST] <- [[AST]]
	(GEN_MOVpa): new instruction. [AST] <- [AST]
	(GEN_MOVar): new instruction. [AST] <- [(AST - 1) + [AST]]

Sat Feb 28 11:55:01 1998  Ludo Koren  <koren@vm.stuba.sk>

	* tests/check-them (target): bug in *.core

Tue Feb 24 21:17:38 1998  Ludo Koren  <koren@vm.stuba.sk>

	* tests/check-them (target): *.core file - new

Fri Feb 20 18:54:53 1998  Ludo Koren  <koren@vm.stuba.sk>

	* ys.y (ae_empty): new; semantic for structures, arrays, unions in
	assignment_operator
	(assignment_operator): semantic shortened and move2lvalue used.
	Now the same semantic as specifies the standard is
	implemented. lvalue is evaluated only once.
	(unary_expression): prefix increment and decrement operators -
	semantic fixed to the standard. move2lvalue used.

Thu Feb 19 19:05:43 1998  Ludo Koren  <koren@vm.stuba.sk>

	* ys.y (func_rest): error - new

	* comp_maint.c (error_message): 1004 update - gcc type syntax
	error. 

Wed Feb 18 15:25:22 1998  Ludo Koren  <koren@vm.stuba.sk>

	* ys.y (unary_expression): SIZEOF ( type_name ) - new

	* comp_maint.c (error_message): 1027 - new

	* ys.y (first_dekl): semantic for declaration of tags

	* comp_maint.c (error_message): 6010 and 6011 - new

	* ys.y (direct_declarator): UNION_P - new
	(list_param): UNION_P - new
	(primary_expression): ENUM_FC - new
	(postfix_expression): UNION_P - new; struct_union_field and
	subscript_flag with GEN_ADDi bug fixed

	* tables.c (putstruct): ENUM_FC - new
	UNION_FC - new
	(allocate_var): ENUM_FC - new
	(allocate_aggregate): UNION_FC - new

	* comp_maint.c (mov2lvalue): last two arguments changed from int
	to enum. (enum intern_func_class typec; enum intern_arit_class type;)
	ENUM_FC - new

Tue Feb 17 15:59:22 1998  Ludo Koren  <koren@vm.stuba.sk>

	* ys.y: functions for type changed to tag
	ENUM tag semantic new

	* tables.c: tables for type changed to tag
	(has_tag): redefinition of tag handled

	* tables.h: tables for type changed to tag

	* type.h (ENUM_P): new
	(UNION_P): new

	* comp_maint.c (error_message): 1026

	* tables.c: ENUMT to ENUM_FC; STRUC to STRUCT_FC; UNIONT to
	UNION_FC; STRUC_P to STRUCT_P 

	* comp_maint.c: ENUMT to ENUM_FC; STRUC to STRUCT_FC; UNIONT to
	UNION_FC; STRUC_P to STRUCT_P

	* type.h (STRUCT_P): from STRUC_P ENUMT to ENUM_FC; STRUC to
 	STRUCT_FC; UNIONT to UNION_FC

	* ys.y (direct_declarator): check for recursive structure changed 
	ENUMT to ENUM_FC; STRUC to STRUCT_FC; UNIONT to UNION_FC; STRUC_P
	to STRUCT_P

Mon Feb  2 17:58:22 1998  Ludo Koren  <koren@vm.stuba.sk>

	* tables.c (putstruct_type_body): COMPILE_P added

	* comp_maint.h (COMPILE_P): new

	* comp_maint.c (error_message): 1025 - new

	* ys.y (struct_or_union_specifier): set of the name of structure in
	struct_or_union IDENT
	(direct_declarator): check if a structure is recursive defined and
	appropriate action
	(struct_declaration): reset of the name of structure
	
Fri Jan 30 18:57:22 1998  Ludo Koren  <koren@vm.stuba.sk>

	* ys.y (unary_expression): ENUMT added

	* comp_maint.c (error_message): bad output for fatal errors
	(type_transform): ENUMT new

	* tables.c (allocate_struct): ENUMT - new

Thu Jan 29 17:45:46 1998  Ludo Koren  <koren@vm.stuba.sk>

	* tables.c 

	* struct.h (struct attr): type_qualifier definition changed to
	enum type_qual.

	* type.h: enum type_qual - new

	* ys.y (enumerator): type_spec_count decrement
	(M): UNDEF_TQ
	CONST to CONST_TQ; VOLATILE to VOLATILE_TQ

	* tables.c (putstruct): ENUM to ENUMT; CONST to CONST_TQ; VOLATILE
	to VOLATILE_TQ
	(add_spec_to_type): ENUM to ENUMT
	(add_ident_to_type): ENUM to ENUMT
	(allocate_var):	handling for CONST_TQ type_qualifier - new
	
Fri Jan 23 15:41:17 1998  Ludo Koren  <koren@vm.stuba.sk>

	* Makefile.in (mostlyclean): *core changed
	(distclean): *dumb.* added
	
	* configure.in (sigv): true POSIXized system option;
	dumb files, when we cannot find proper signal handling.

Thu Jan 22 17:44:20 1998  Ludo Koren  <koren@vm.stuba.sk>

	* Makefile.in (check): check-them with current directory
	specification. Get rid of $@ variable.

	* inter_handl_posix.c (interrupt_register): posix
	functions. (APUE)

	* sigig_posix.c (mysigignore): posix functions.

	* input.c: get rid of signal.h and termio.h; not needed anymore.

Wed Aug 27 16:56:28 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* Version 0.8.2 released.

	* Makefile.in: utils/yy

	* configure.in (PROGS): utils/yy

Sun Aug 24 17:06:26 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* inter_handl_*: function prototypes; new files
	inter_handl_posix.c and sigig_posix.c

	* configure.in: AC_DEFINE(HAVE_TIOCSTI) for linux

	* inter_handl_lin.c (interrupt_service): HAVE_TIOCSTI added

Tue Jul  1 14:44:23 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* global.h: interrupt_service function declaration deleted

	* clif.c (main): interrupt_handler changed to interrupt_register

Fri Jun 27 09:55:53 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* global.c: buf_pointer deleted

	* global.h: prototypes changed to extern; buf_pointer deleted

	* channel_maint.c: function prototypes; some definition moved from
	channel_maint.h

	* wind.c (wind): function prototypes; drawing to the pixmap only
	if needed

	* xwin.c: function prototypes; drawing to the pixmap only if
	needed

	* channel_maint.h (struct CHANNEL): pixmap defined only if needed;
	extern to declarations

	* wind_w.c (wind_w): function prototypes; drawing to the pixmap
	only if needed

	* input.c: definition of input pointer; buf_pointer is static

	* input.h: extern specifier for input

	* rw.c: function prototypes

	* graph.c: function prototypes

	* getc_unix.c: function prototypes

	* init_ch.c (input_channel): function prototypes

	* myintrinsic.c: function prototypes

	* struct.h (struct remote_tab): structure field adr changed

	* load.c (load): strict function cast

	* intrinsic.h: strict prototypes for intrinsic functions

	* Makefile.in (remote_call.o): remote_call.h added

	* remote_call.c (has_remote): INTRINSIC_FUNCTION - strict function
	cast and several function prototypes added

	* intrinsic.h: typedef and function protoypes added

	* clif.c: function prototypes added

Thu Jun 26 09:35:44 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* run_str.l: VERBOSE and VERSION added

	* run_str.y: VERBOSE and VERSION added

	* comp_maint.h: verbose added

	* comp_maint.c (clif): verbose added

	* help.c (help): case 4 and 5 added

	* tables.c (set_value): bug fixed; *end in the loop is tested on
	'\0' as well.

	* input.h: function declarations changed to extern.

	* input.c: function declarations of this file deleted.

	* global.h: function prototypes changed to extern; input
	declaration deleted; interrupt declaration changed to RETSIGTYPE.

Wed Jun 25 10:48:51 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* tables.c (allocate_aggregate): default added

	* ys.y: default for several switch statements added

	* type.h: end of enumeration types added

	* myintrinsic.c (transform_to_simple_type): default added

Mon Jun 23 17:40:46 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* Makefile.in (distdir-start): adding check if README and
	guide_programmers.tex is up to date.
	(doc/guide_programmers.dvi): 
	(doc/guide_users.dvi): commands corrected for dvi files
	(distclean): files for deleting added 
	(clean): distribution directories added

Sat Jun 14 19:57:03 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* parser.h (SET_ADDRESS): 
	(OFFSET_LAST_ADD): renamed offset1 var_adr1 to offset and var_adr,
	respectively.

	* ys.y: renamed offset1 and var_adr1 to offset and var_adr,
	respectively.

	* tables.c (point_loc): renamed offset1 to offset

Tue Jun 10 15:27:28 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* ys.y: in unary expression, OFFSET_LAST_ADD_ARRAY,
	OFFSET_LAST_ADD used

	* parser.h (OFFSET_LAST_ADD_ARRAY): new macro
	(OFFSET_LAST_ADD): new macro

Mon Jun  9 17:49:49 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* parser.h: subscript_flag and struct_union_field defined as
	arrays. 
	(TYPE_CLEAR): subscript_flag and struct_union_field added to the
	macro. 

Sun Jun  8 19:33:28 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* type.h (POINTER_P): moved from parser.h
	(STRUC_P): moved from parser.h
	(ARRAY_P): 
	(SIMPLE_P): new macro

	* comp_maint.c (add_to_spec_list): bug in condition for array.

	* parser.h (DELETE_SUBSCRIPT): new macro

Sat Jun  7 21:21:21 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* comp_maint.h: l_type_spec, ident_list added

Fri Jun  6 10:32:15 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* comp_maint.c (error_message): redesigned

	* configure.in: AC_HEADER_STDC added

	* printfx.h: code added for conditional compilation
	(STDC_HEADERS).

	* printf_unix.c (printfx): 
	(fprintfx): code added for conditional compilation.

Thu Jun  5 10:49:14 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* tables.c (allocate_aggregate): new function.

	* comp_maint.c (l_value_cast):
	(implicit_cast): changed to support SET_ADDRESS macro; set-- is
 	not done in this function anymore
 	(error_message): several error messages added
	
	* parser.h (SET_ADDRESS): new macro

	* ys.y: SET_ADDRESS 

Wed Jun  4 16:12:29 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* parser.h (STRUC_P): macro - if pointer has a structure type.

	* ys.y: list_param added generation of PUSHA for STRUC

	* comp_maint.c (add_to_spec_list): copy_type function call
	added. Subscripts for array must be created twice as well.
	(copy_type): new function.

Tue Jun  3 14:25:36 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* Makefile.in (SH_OBJS): changed. Now, it is set by configure. 

	* configure.in: AC_SUBST(SH_OBJS) added

Mon Jun  2 10:50:42 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* tables.c (allocate_struct): new function.

	* tables.h: declaration changed according to new parameters.

	* tables.c (has_goto): parameter label_name added
	(has): parameter var_name added
	(has_type): parameter type_name added
	(has_label): parameter label_name added
	(has_loc): parameter var_name added
	(point): parameter var_name added
	(point_loc): parameter var_name added

	* ls.l: IDENT has type mystring now.

Sun Jun  1 16:40:39 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* Makefile.in: different targets - header files added.

	* configure.in: AC_FUNC_VPRINTF, AC_TYPE_SIGNAL added. Redesigning
	of checking signals.

	* allocx.h: prototypes added

	* load.c:  prototypes added

	* tables.h: prototype of align_memory added

	* channel.y: prototypes added

	* store_cont.c: allocx.h added

	* allocx.c: prototypes added

	* symbols.c: prototypes added

	* run_str.y: prototypes added

	* help.c: prototypes added

	* init_rs.c: declaration of functions defined in module added.

Sat May 31 17:12:03 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* parser.h: struct_union_field - new flag. Represents indirection
	of identifier.
	(POINTER_P): macro - if the type is pointer.

	* struct.h (struct attr): function_class and arit_class are enums
	now.

Fri May 30 15:41:05 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* type.h: defines changed to enums (intern_arit_class,
	intern_func_class, global_type)

	* parser.h: is_address new variable - check if the address
	operator was not used twice in one expression

Thu May 29 10:47:11 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* Makefile.in (TAGS): fixing bug

	* remote_call.h: new file

	* virtual_machine.h: new file

	* load.h: new file

	* memmove.h: new file

	* ys.h: only appropriate functions left (defined in ys.y)

	* ls.h: new file

	* run_str.h: new file

	* global.c: some variables moved to appropriate places

	* global.h: some variables moved to appropriate places

	* Makefile.in (c-parser.o): 
	(comp_maint.o): new header files added

	* myintrinsic.c (transform_to_simple_type): parameter changed from
	int to enum global_type

	* comp_maint.h: now it contains only declarations of comp_maint.c

	* tables.h: new file

	* input.h: functions defined in input.c added

	* store_cont.c: include store_cont.h added

	* store_cont.h (struct CONTEXT): new file; CONTEXT moved from
	struct.h

Tue May 27 15:04:19 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* type.h (POINTER): new define

	* ys.y: cast_expression changed according to the ANSI standard

Mon May 26 15:44:08 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* ls.l: PTR token added

	* ys.y: sizeof implemented

	* comp_maint.c (move2lvalue): new function (part of ys.y assign
	semantics moved here).

Tue May 20 09:14:41 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* virtual_machine.c (exe): instructions PUSHA and MOV relatively
	with offset changed. Now without a sizeof object (like a real
	instruction). 

	* Makefile.in (CFLAGS): instead of -g the @CFLAGS@ variable
 	specified. (It is because of problems on SGIs with as and gas;
 	without optimization we cannot compile.)

	* comp_maint.c (error_message): error 2008 added

Mon May 19 13:08:00 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* tables.c (offset_aggregate_ident): new function

	* struct.h (struct aggregate_identifier): New structure for
 	compound identifier.
	(struct internal_type): field_name added
	
Wed May 14 16:33:59 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* ys.y: function call rule added to the postfix_expression
	(according to the ANSI grammar).

Tue May 13 14:50:45 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* comp_maint.c (error_message): error 3006 added

Mon May 12 17:12:41 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* struct.h (struct CONTEXT): kodp4 added

	* store_cont.c (restore_context): 
	(store_context): kodp4 added

	* global.c: kodp4 added

	* global.h: kodp4 added

	* ys.y: l_value not used anymore. Grammar is like ANSI in this
	case. The array rules moved to the postfix_expression. Now should
	be easier to have different types of identifiers (arrays,
	pointers, structures and mixed).

Fri May  9 17:06:56 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* ys.y (postfix_expression): call moved from primary_expression

Thu May  8 12:42:29 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* tests/check-them (target): rm -f core test.diff pokusny_subor
 	added; now all of them are deleted in each iteration

	* configure.in (PROGS): AC_PATH_XTRA added

Tue May  6 09:28:07 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* tables.c (putstruct): first_align added; the structure must be
	aligned to be used in array

Tue Apr 29 14:17:11 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* run_str.l: adding long options for copying and warranty

	* ls.l: for matching '{stringc}', bad copying of yytext - fixed 

Mon Apr 28 08:05:20 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* comp_maint.c (add_to_spec_list): bug fixed for tmp_l

	* input.c (input_buf): 
	(input_std): 
	(input_komp): if the char is \n set the line number; reset the
	char_counter; reinitialize line_buf

	* ls.l: bug fixed for counting lines

	* tables.c (allocate_var): new function

	* global.c: pi variable deleted

	* global.h: pi variable deleted

Fri Apr 25 16:36:41 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* tables.c (has_type): new function
	(has_type): new function
	(putstruct_type): new function
	(putstruct_type_body): new function

Thu Apr 24 12:44:26 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* keyword.gperf: sizeof keyword added

	* ys.h: has_loc - parameter added

	* tables.c (has_loc): parameter added
	(putstruct_loc): parameter added

	* ys.y: typet variable deleted

	* global.c: typet variable deleted

	* global.h: typet variable deleted

	* comp_maint.c (add_to_spec_list): typet variable not used anymore

	* tables.c (putstruct): redesigned; now the typet variable is not
	used anymore.

Tue Apr 22 12:40:49 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* Makefile.in (dvi): target for making documentation

Sat Apr 19 16:56:16 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* tables.c (scope_offset_set): bad alignment fixed

Thu Apr 17 09:45:30 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* comp_maint.c (error_message): new warning for too many params

	* tables.c (putstruct_loc): warning added for more parameters than
	31 (ANSI)

	* ys.h: scope_offset_get scope_offset_set declaration

	* tables.c (scope_offset_get): new function
	(scope_offset_set): new function

	* comp_maint.c: func_def_f new variable - if the scope is about
	function definition.
	(enter_scope): 
	(exit_scope): both functions are using func_def_f

Wed Apr 16 09:11:05 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* comp_maint.h: declaration for clear_hash_tab added

	* tables.c (allocate_hastab_loc): new function
	(allocate_loc_tables): new function
	(set_value): 
	(point_loc): the lookup_loc function call walk through all local
	tables
	(lookup_loc): second parameter added, which enables to walk
	through local tables list

	* struct.h (struct ident_tab_header): hastab_loc - new member

	* tables.c: hastab_loc as a global variable deleted

	* Makefile.in (check): bug if the $(srcdir) is not ./ fixed

Tue Apr 15 09:13:25 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* global.h: pi_loc deleted

	* global.c: pi_loc deleted

	* tables.c: identtab_loc changed, it contains a header

	* struct.h (struct ident_tab_header): new structure for nested
	scope levels

Mon Apr 14 17:40:17 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* comp_maint.c (exit_scope): new function

	* ys.y (func_first):
	(statement):  exit_scope function call

	* ys.h: external definition of scope_level variable
	exit_scope declaration

	* ys.y (list_loc_dekl): rules added for parsing of function
	declaration

Sat Apr 12 16:38:43 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* Makefile.in (tables.o): new object

	* comp_maint.c: deleted functions which moved to tables.c

	* comp_maint.h: deleted functions which moved to tables.c

	* tables.c: new file; functions moved from comp_maint.c

	* ys.h: enter_level declaration added

	* comp_maint.c (enter_level): new function

	* ys.y: func nonterminal replaced by compound_statement
	nonterminal.
	N - new nonterminal - enter new level

Thu Apr 10 12:28:24 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* configure.in (PROGS): check for assert.h

	* allocx.c (allocate): assert - conditional compilation

	* comp_maint.c (align_memory): assert - conditional compilation

	* virtual_machine.c (move_stack_aligned): assert - conditional
	compilation

	* tests/check-them: added test for file output

	* load.c (load_new): fixing off by one for loop

Wed Apr  9 09:51:30 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* tests/check-them: new file; automatic check

	* clif.c (main): return value added

	* ys.y (M): allocate changed from BLOCK to PERM

	* channel_maint.c: calling of allocate changed
	(fill_write): temporary string; automatic free

	* configure.in (sigv): changed DEFS to AC_DEFINE
	backslash added in front of $(srcdir). (Problems on Linux)

	* Makefile.in (ALL_CFLAGS): fixing typo

Tue Apr  8 11:59:45 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* ls.l: fixed bug for line_counter in string matching
	(unput): customized unput

Mon Apr  7 11:56:32 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* Makefile.in: tests directory added in distdir-start target

Sun Mar 23 17:43:57 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* configure.in: new file

	* Makefile.in: new file

Thu Mar 20 16:42:34 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* rcs-beginning symbol defined (changed from SCCS to RCS)
	
Mon Mar  3 10:08:55 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* load.c (load): changing allocation strategy; calls of the new
 	function.
	(load_new): calling string function. We get the same copy of a
 	string. It can be used then in lookup functions.

	* comp_maint.c (lookup_loc): strcmp replaced by pointer comparison
	(lookup_goto_table): strcmp replaced by pointer comparison
	(lookup): strcmp replaced by pointer comparison

	* symbols.c (string): new module. It makes only one copy of each
	string found in the source file.

	* allocx.h: header file for new allocation inteface

	* allocx.c (allocate): new function
	(deallocate): new function
	(init_zero): new function

	* ls.l: changing allocation strategy; calls of the new
	function.

	* ys.y: changing allocation strategy; calls of the new
	function.

	* remote_call.c: point_remote function deleted;
	(has_remote): changing allocation strategy; calls of the new
 	function.
	(lookup_remote): string comparison changed to pointer
	comparison.

	* channel.y: deleting old allocation call

	* virtual_machine.c (exe): new PUSHAI instructions (Immediate
	value properly aligned).
	(move_stack_aligned): new function

	* channel.y: changing allocation strategy; calls of the new
	function.

	* channel.l: changing allocation strategy; calls of the new
	function.

	* channel_maint.c: changing allocation strategy; calls of the new
	function.

Fri Feb 28 12:08:10 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* ys.y: init_zero added (initialization of structures

	* init_rs.c (input_rs_): return added if there is nothing in the
	buffer.

Thu Feb 27 12:01:07 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* comp_maint.c (put_array_subscript): bug solved (if an array
	subscript is NOT_DEFINED, it didn't work)

	* ls.l: permanent constants BACKSLASH, SP, NL, BS, FF, CR, HT, VT
	bug in \x escape sequence solved

Wed Feb 26 16:18:22 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* virtual_machine.c (exe): execution of PUSHAI instructions
	changed

	* geninstr.h (GEN_PUSHAIc): 
	(GEN_PUSHAIf): 
	(GEN_PUSHAId): generation of instruction changed. Immediate value
	is properly aligned.

	* instr.h: deleting unused variables

Tue Feb 25 09:54:22 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* run_str.l: allocation strategy changed. new function calling

Fri Feb 14 16:42:04 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* clif.c (main): define CONTROL

	* intrinsic.h: define CONTROL

	* inter_handl_svr4.c (interrupt_service): warnings

Thu Feb 13 14:35:35 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* allocx.c: renaming from callocx

	* Makefile (allocx.o): renaming from callocx

Tue Feb 11 10:04:05 1997  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* keyword.gperf: added to SCCS repository

	* run_str.y: renaming from run_str_y

	* channel.y: renaming from channel_y

	* ls.l: renaming from ls

	* ys.y: renaming from ys

	* Makefile: renaming ls, ys, run_str_y, channel_y

Thu Dec 12 17:26:43 1996  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* Makefile (IRIX): changed to the shared library creation
	(Linux): changed to the shared library creation

	* virtual_machine.c (exe): default actions changed to abort and
	line number output

Sat Nov 30 15:33:01 1996  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* run_str.l: added unix like options

Fri Nov 29 16:24:38 1996  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* Makefile (SunOS): -L/usr/openwin/lib added
	OBJS added, rules simplified to shared and nonshared

	* keyword.gperf: for keywords the perfect hash function used
	Command-line: gperf -t -p -k 2,3 keyword.gperf

	* ls: find_ident function redesigned

Wed Sep 18 16:28:02 1996  Ludovit Koren  <koren@isr.uni-stuttgart.de>

	* Makefile (sun-stamp): -L$(HOME)/lib -lclif_x -R$(HOME)/lib added
	(libclif_x.so): -KPIC added

Thu Aug 15 10:40:40 1996 Ludo Koren <koren@vm.stuba.sk>

	* input.h (input): added prototype

