Do-first:
+if ( echo $* | grep keep\-chill > /dev/null ) ; then
+ keep_these_too="ch-exp.y"
+fi
+
# All files listed between the "Things-to-keep:" line and the
# "Files-to-sed:" line will be kept. All other files will be removed.
# Directories listed in this section will have their own Sanitize
buildsym.h
c-exp.y
call-cmds.h
-ch-exp.y
coffread.c
command.c
command.h
Do-last:
+echo Thawing away the \"chill\"...
+
+# Don't try to clean directories here, as the 'mv' command will fail.
+# Also, grep fails on NFS mounted directories.
+if ( echo $* | grep keep\-chill > /dev/null ) ; then
+ for i in * ; do
+ if test ! -d $i && (grep sanitize-chill $i > /dev/null) ; then
+ echo Keeping chill stuff in $i
+ fi
+ done
+else
+ for i in * ; do
+ if test ! -d $i && (grep sanitize-chill $i > /dev/null) ; then
+ echo Thawing the \"chill\" out of $i...
+ cp $i new
+ sed '/start\-sanitize\-chill/,/end-\sanitize\-chill/d' < $i > new
+ if [ -n "${safe}" -a ! -f .Recover/$i ] ; then
+ echo Caching $i in .Recover...
+ mv $i .Recover
+ fi
+ mv new $i
+ fi
+ done
+ echo Thawing the \"chill\" out of Makefile.in...
+ cp Makefile.in new
+ sed -e 's/\$\{srcdir\}/ch-exp.y//g' \
+ -e 's/ch-exp.y//g' \
+ -e 's/ch-exp.tab.c//g' \
+ -e 's/ch-exp.tab.o//g' \
+ ' < Makefile.in > new
+ if [ -n "${safe}" -a ! -f .Recover/Makefile.in ] ; then
+ echo Caching Makefile.in in .Recover...
+ mv Makefile.in .Recover
+ fi
+ mv new Makefile.in
+fi
+
# End of file.
* Makefile.in (VERSION): Bump to 4.7.2
* symtab.c (find_pc_symtab): Fix return of random value
to caller.
- * Makefile.in (SFILES_MAINDIR): Add ch-exp.y.
- * Makefile.in (YYFILES): Add ch-exp.tab.c.
- * Makefile.in (YYOBJ): Add ch-exp.tab.o.
- * Makefile.in (saber_gdb): Add unload of ch-exp.y and load
- of ch-exp.tab.c.
- * Makefile.in (distclean): Add target ch-exp.tab.c.
- * Makefile.in (realclean): Add rm of ch-exp.tab.c.
* Makefile.in (c-exp.tab.c, m2-exp.tab.c): Add dependency on
Makefile since it contains sed patterns used in generation.
Add sed pattern to also delete #include of any malloc.h.
- * Makefile.in (ch-exp.tab.o, ch-exp.tab.c): New targets.
- * ch-exp.y: New expression parser, for GNU-Chill.
* c-exp.y, expr.c, expression.h, language.c, m2-exp.y,
parser-defs.h, valarith.c, valops.c, value.h: Remap macros and
function names to conform to K&R terminology with respect to
value_lognot() => value_complement()
* c-exp.y (c_op_print_tab): Add explicit empty terminator.
* m2-exp.y (m2_op_print_tab): Add explicit empty terminator.
+ * i387-tdep.c (sys/dir.h): Remove, appears to be unnecessary
+ and is nonexistant in some SVR4 based systems.
+ * language.c (DEFAULT_ALLOCSIZE): Change from 3 => 4.
+ * m2-exp.y (number_sign, modblock): Make static, #ifdef out
+ unused modblock.
+ * m2-exp.y (ANDAND): Rename to LOGICAL_AND.
+ * source.c (source_info): Fix minor nits, print "1 line" rather
+ than "1 lines", and "language is <lang>".
+ * valarith.c (value_binop): Handle TYPE_CODE_BOOL as well
+ as TYPE_CODE_INT and TYPE_CODE_FLOAT.
+ * valprint.c (val_print): Print TYPE_CODE_BOOL type values as
+ "TRUE" or "FALSE".
+ * values.c (value_from_longest): Handle TYPE_CODE_BOOL.
+ **** start-sanitize-chill ****
+ * ch-exp.y: New expression parser, for GNU-Chill.
* defs.h (enum language): Add language_chill.
* dwarfread.c (set_cu_language): Add LANG_CHILL case and make
LANG_MODULA2 a recognized language.
- * eval.c (evaluate_subexp): Add OP_BOOL case.
- * expprint.c (print_subexp): Add OP_BOOL case.
* gdbtypes.h (enum_typecode): Note TYPE_CODE_BOOL used for
Chill as well as Modula-2.
* gdbtypes.y (builtin_type_chill_bool, builtin_type_chill_long,
builtin_type_chill_ulong, builtin_type_chill_real): Add.
- * i387-tdep.c (sys/dir.h): Remove, appears to be unnecessary
- and is nonexistant in some SVR4 based systems.
- * language.c (DEFAULT_ALLOCSIZE): Change from 3 => 4.
* language.c (set_language_command): Add chill.
* language.c (binop_result_type, integral_type, character_type,
boolean_type, structured_type, value_true, binop_type_check):
Add language_chill cases.
* language.h (_LANG_chill): Define.
- * m2-exp.y (number_sign, modblock): Make static, #ifdef out
- unused modblock.
- * m2-exp.y (ANDAND): Rename to LOGICAL_AND.
- * source.c (source_info): Fix minor nits, print "1 line" rather
- than "1 lines", and "language is <lang>".
* symfile.c (deduce_language_from_filename): Recognize the
filename extensions ".chill", ".c186", and ".c286" for Chill.
- * valarith.c (value_binop): Handle TYPE_CODE_BOOL as well
- as TYPE_CODE_INT and TYPE_CODE_FLOAT.
- * valprint.c (val_print): Print TYPE_CODE_BOOL type values as
- "TRUE" or "FALSE".
* valprint.c (typedef_print): Add case for language_chill.
- * values.c (value_from_longest): Handle TYPE_CODE_BOOL.
+ * Makefile.in (SFILES_MAINDIR): Add ch-exp.y.
+ * Makefile.in (YYFILES): Add ch-exp.tab.c.
+ * Makefile.in (YYOBJ): Add ch-exp.tab.o.
+ * Makefile.in (saber_gdb): Add unload of ch-exp.y and load
+ of ch-exp.tab.c.
+ * Makefile.in (distclean): Add target ch-exp.tab.c.
+ * Makefile.in (realclean): Add rm of ch-exp.tab.c.
+ * Makefile.in (ch-exp.tab.o, ch-exp.tab.c): New targets.
+ * eval.c (evaluate_subexp): Add OP_BOOL case.
+ * expprint.c (print_subexp): Add OP_BOOL case.
+ **** end-sanitize-chill ****
Fri Nov 13 20:24:10 1992 Stu Grossman (grossman at cygnus.com)
< y.tab.c > c-exp.tab.c
-rm y.tab.c
+# start-sanitize-chill
# ch-exp.tab.c is generated in target dir from ch-exp.y if it doesn't exist
# in srcdir, then compiled in target dir to ch-exp.tab.o.
# Remove bogus decls for malloc/realloc/free which conflict with everything
# else.
ch-exp.tab.o: ch-exp.tab.c
ch-exp.tab.c: $(srcdir)/ch-exp.y Makefile
- @echo 'Expect 4 shift/reduce conflicts.'
+ @echo 'Expect rules never reduced, and lots of reduce/reduce conflicts.'
${YACC} $(srcdir)/ch-exp.y
-sed -e '/extern.*malloc/d' \
-e '/extern.*realloc/d' \
-e 's/realloc/xrealloc/g' \
< y.tab.c > ch-exp.tab.c
-rm y.tab.c
+# end-sanitize-chill
# m2-exp.tab.c is generated in target dir from m2-exp.y if it doesn't exist
# in srcdir, then compiled in target dir to m2-exp.tab.o.
case LANG_C_PLUS_PLUS:
cu_language = language_cplus;
break;
+ /* start-sanitize-chill */
case LANG_CHILL:
cu_language = language_chill;
break;
+ /* end-sanitize-chill */
case LANG_MODULA2:
cu_language = language_m2;
break;
/* Modula-2 */
TYPE_CODE_CHAR, /* *real* character type */
- TYPE_CODE_BOOL /* Builtin Modula-2/Chill BOOLEAN */
+ TYPE_CODE_BOOL /* Builtin BOOLEAN type */
};
/* For now allow source to use TYPE_CODE_CLASS for C++ classes, as an
extern struct type *builtin_type_m2_real;
extern struct type *builtin_type_m2_bool;
+/* start-sanitize-chill
/* Chill types */
extern struct type *builtin_type_chill_bool;
extern struct type *builtin_type_chill_long;
extern struct type *builtin_type_chill_ulong;
extern struct type *builtin_type_chill_real;
+/* end-sanitize-chill
/* LONG_LONG is defined if the host has "long long". */
/* FIXME -- do this from the list, with HELP. */
if (!language || !language[0]) {
- printf("The currently understood settings are:\n\n\
-local or auto Automatic setting based on source file\n\
-c Use the C language\n\
-c++ Use the C++ language\n\
-chill Use the Chill language\n\
-modula-2 Use the Modula-2 language\n");
+ printf("The currently understood settings are:\n\n");
+ printf ("local or auto Automatic setting based on source file\n");
+ printf ("c Use the C language\n");
+ printf ("c++ Use the C++ language\n");
+ /* start-sanitize-chill */
+ printf ("chill Use the Chill language\n");
+ /* end-sanitize-chill */
+ printf ("modula-2 Use the Modula-2 language\n");
/* Restore the silly string. */
set_language(current_language->la_language);
return;
not needed. */
return l1 > l2 ? VALUE_TYPE(v1) : VALUE_TYPE(v2);
break;
+ /* start-sanitize-chill */
case language_chill:
error ("Missing Chill support in function binop_result_check.");/*FIXME*/
+ /* end-sanitize-chill */
}
abort();
return (struct type *)0; /* For lint */
(TYPE_CODE(type) != TYPE_CODE_ENUM) ? 0 : 1;
case language_m2:
return TYPE_CODE(type) != TYPE_CODE_INT ? 0 : 1;
+ /* start-sanitize-chill */
case language_chill:
error ("Missing Chill support in function integral_type."); /*FIXME*/
+ /* end-sanitize-chill */
default:
error ("Language not supported.");
}
return (TYPE_CODE(type) == TYPE_CODE_INT) &&
TYPE_LENGTH(type) == sizeof(char)
? 1 : 0;
+ /* start-sanitize-chill */
case language_chill:
error ("Missing Chill support in function character_type."); /*FIXME*/
+ /* end-sanitize-chill */
default:
return (0);
}
{
switch(current_language->la_language)
{
+ /* start-sanitize-chill */
case language_chill:
+ /* end-sanitize-chill */
case language_m2:
return TYPE_CODE(type) != TYPE_CODE_BOOL ? 0 : 1;
return (TYPE_CODE(type) == TYPE_CODE_STRUCT) ||
(TYPE_CODE(type) == TYPE_CODE_SET) ||
(TYPE_CODE(type) == TYPE_CODE_ARRAY);
+ /* start-sanitize-chill */
case language_chill:
error ("Missing Chill support in function structured_type."); /*FIXME*/
+ /* end-sanitize-chill */
default:
return (0);
}
return 0; /* BOOLEAN with value FALSE */
break;
+ /* start-sanitize-chill */
case language_chill:
error ("Missing Chill support in function value_type."); /*FIXME*/
+ /* end-sanitize-chill */
default:
error ("Language not supported.");
}
#endif
+/* start-sanitize-chill */
#ifdef _LANG_chill
case language_chill:
error ("Missing Chill support in function binop_type_check.");/*FIXME*/
#endif
+/* end-sanitize-chill */
}
}
/* #include "lang_def.h" */
#define _LANG_c
#define _LANG_m2
+/* start-sanitize-chill */
#define _LANG_chill
+/* end-sanitize-chill */
/* range_mode ==
range_mode_auto: range_check set automatically to default of language.