소스 검색

Fixed a bug with line-directives, added copyright notice

ceriel 37 년 전
부모
커밋
988f6e496b
60개의 변경된 파일269개의 추가작업 그리고 23개의 파일을 삭제
  1. 13 2
      lang/cem/cemcom/LLlex.c
  2. 5 0
      lang/cem/cemcom/LLlex.h
  3. 4 0
      lang/cem/cemcom/LLmessage.c
  4. 5 0
      lang/cem/cemcom/Version.c
  5. 4 0
      lang/cem/cemcom/align.h
  6. 4 0
      lang/cem/cemcom/arith.c
  7. 4 0
      lang/cem/cemcom/arith.h
  8. 4 0
      lang/cem/cemcom/asm.c
  9. 4 0
      lang/cem/cemcom/assert.h
  10. 4 0
      lang/cem/cemcom/atw.h
  11. 4 0
      lang/cem/cemcom/blocks.c
  12. 4 0
      lang/cem/cemcom/cem.c
  13. 4 0
      lang/cem/cemcom/ch7.c
  14. 4 0
      lang/cem/cemcom/ch7bin.c
  15. 4 0
      lang/cem/cemcom/ch7mon.c
  16. 4 0
      lang/cem/cemcom/class.h
  17. 4 0
      lang/cem/cemcom/code.c
  18. 4 0
      lang/cem/cemcom/conversion.c
  19. 4 0
      lang/cem/cemcom/cstoper.c
  20. 4 0
      lang/cem/cemcom/dataflow.c
  21. 4 0
      lang/cem/cemcom/declar.g
  22. 4 0
      lang/cem/cemcom/declarator.c
  23. 4 0
      lang/cem/cemcom/decspecs.c
  24. 18 20
      lang/cem/cemcom/domacro.c
  25. 4 0
      lang/cem/cemcom/dumpidf.c
  26. 4 0
      lang/cem/cemcom/error.c
  27. 4 0
      lang/cem/cemcom/eval.c
  28. 4 0
      lang/cem/cemcom/expr.c
  29. 4 0
      lang/cem/cemcom/expression.g
  30. 4 0
      lang/cem/cemcom/faulty.h
  31. 4 0
      lang/cem/cemcom/field.c
  32. 4 0
      lang/cem/cemcom/file_info.h
  33. 4 0
      lang/cem/cemcom/idf.c
  34. 4 0
      lang/cem/cemcom/init.c
  35. 4 0
      lang/cem/cemcom/input.c
  36. 4 0
      lang/cem/cemcom/input.h
  37. 5 0
      lang/cem/cemcom/interface.h
  38. 4 0
      lang/cem/cemcom/ival.c
  39. 4 0
      lang/cem/cemcom/label.c
  40. 4 0
      lang/cem/cemcom/label.h
  41. 4 0
      lang/cem/cemcom/level.h
  42. 5 0
      lang/cem/cemcom/main.c
  43. 5 0
      lang/cem/cemcom/mcomm.c
  44. 4 0
      lang/cem/cemcom/mes.h
  45. 4 0
      lang/cem/cemcom/options.c
  46. 4 0
      lang/cem/cemcom/program.g
  47. 4 0
      lang/cem/cemcom/replace.c
  48. 4 0
      lang/cem/cemcom/scan.c
  49. 4 0
      lang/cem/cemcom/sizes.h
  50. 4 0
      lang/cem/cemcom/skip.c
  51. 4 0
      lang/cem/cemcom/specials.h
  52. 4 0
      lang/cem/cemcom/stack.c
  53. 4 0
      lang/cem/cemcom/statement.g
  54. 4 0
      lang/cem/cemcom/stb.c
  55. 4 0
      lang/cem/cemcom/struct.c
  56. 4 0
      lang/cem/cemcom/switch.c
  57. 4 0
      lang/cem/cemcom/tab.c
  58. 4 0
      lang/cem/cemcom/tokenname.c
  59. 4 0
      lang/cem/cemcom/tokenname.h
  60. 5 1
      lang/cem/cemcom/type.c

+ 13 - 2
lang/cem/cemcom/LLlex.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*		    L E X I C A L   A N A L Y Z E R			*/
 
@@ -29,6 +33,7 @@ int AccDefined = 0;		/* accept "defined(...)"		*/
 int UnknownIdIsZero = 0;	/* interpret unknown id as integer 0	*/
 int SkipEscNewline = 0;		/* how to interpret backslash-newline	*/
 int Unstacked = 0;		/* an unstack is done 			*/
+int File_Inserted = 0;		/* a file has just been inserted	*/
 
 #define MAX_LL_DEPTH	2
 
@@ -100,7 +105,10 @@ GetToken(ptok)
 	char buf[(IDFSIZE > NUMSIZE ? IDFSIZE : NUMSIZE) + 1];
 	register int ch, nch;
 
-	if (! LineNumber) goto firstline;
+	if (File_Inserted) {
+		File_Inserted = 0;
+		goto firstline;
+	}
 again:	/* rescan the input after an error or replacement	*/
 #ifndef NOPP
 	if (Unstacked) EnableMacros();
@@ -120,7 +128,10 @@ firstline:
 			return ptok->tk_symb = EOI;
 		while (LoadChar(ch), ch == '#') { /* a control line follows */
 			domacro();
-			if (!LineNumber) goto firstline;
+			if (File_Inserted) {
+				File_Inserted = 0;
+				goto firstline;
+			}
 		}
 			/*	We have to loop here, because in
 				`domacro' the nl, vt or ff is read. The

+ 5 - 0
lang/cem/cemcom/LLlex.h

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /* D E F I N I T I O N S   F O R   T H E   L E X I C A L   A N A L Y Z E R */
 
@@ -52,6 +56,7 @@ extern int AccDefined;		/* "LLlex.c"	*/
 extern int UnknownIdIsZero;	/* "LLlex.c"	*/
 extern int SkipEscNewline;	/* "LLlex.c"	*/
 extern int Unstacked;		/* "LLlex.c"	*/
+extern int File_Inserted;	/* "LLlex.c"	*/
 
 extern int NoUnstack;		/* buffer.c	*/
 

+ 4 - 0
lang/cem/cemcom/LLmessage.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*		PARSER ERROR ADMINISTRATION		*/
 

+ 5 - 0
lang/cem/cemcom/Version.c

@@ -1 +1,6 @@
+/* $Header$ */
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 static char Version[] = "ACK CEM compiler Version 3.1";

+ 4 - 0
lang/cem/cemcom/align.h

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*	 A L I G N M E N T   D E F I N I T I O N S	*/
 

+ 4 - 0
lang/cem/cemcom/arith.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*	A R I T H M E T I C   C O N V E R S I O N S	 */
 

+ 4 - 0
lang/cem/cemcom/arith.h

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /* COMPILER ARITHMETIC */
 

+ 4 - 0
lang/cem/cemcom/asm.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*		A S M			*/
 

+ 4 - 0
lang/cem/cemcom/assert.h

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*	 A S S E R T I O N    M A C R O   D E F I N I T I O N		*/
 

+ 4 - 0
lang/cem/cemcom/atw.h

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /* Align To Word boundary Definition	*/
 

+ 4 - 0
lang/cem/cemcom/blocks.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*	B L O C K   S T O R I N G   A N D   L O A D I N G	*/
 

+ 4 - 0
lang/cem/cemcom/cem.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /*	$Header$	*/
 /*
 	Driver for the CEMCOM compiler: works like /bin/cc and accepts

+ 4 - 0
lang/cem/cemcom/ch7.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*	S E M A N T I C   A N A L Y S I S -- C H A P T E R  7 RM	*/
 

+ 4 - 0
lang/cem/cemcom/ch7bin.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /* SEMANTIC ANALYSIS (CHAPTER 7RM)  --  BINARY OPERATORS */
 

+ 4 - 0
lang/cem/cemcom/ch7mon.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /* SEMANTIC ANALYSIS (CHAPTER 7RM) -- MONADIC OPERATORS */
 

+ 4 - 0
lang/cem/cemcom/class.h

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*		U S E   O F   C H A R A C T E R   C L A S S E S		*/
 

+ 4 - 0
lang/cem/cemcom/code.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*	C O D E - G E N E R A T I N G   R O U T I N E S		*/
 

+ 4 - 0
lang/cem/cemcom/conversion.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*	C O N V E R S I O N - C O D E  G E N E R A T O R	*/
 

+ 4 - 0
lang/cem/cemcom/cstoper.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*	C O N S T A N T   E X P R E S S I O N   H A N D L I N G		*/
 

+ 4 - 0
lang/cem/cemcom/dataflow.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*	DATAFLOW ANALYSIS ON C PROGRAMS	*/
 

+ 4 - 0
lang/cem/cemcom/declar.g

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*	DECLARATION SYNTAX PARSER	*/
 

+ 4 - 0
lang/cem/cemcom/declarator.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*	D E C L A R A T O R   M A N I P U L A T I O N		*/
 

+ 4 - 0
lang/cem/cemcom/decspecs.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*	D E C L A R A T I O N   S P E C I F I E R   C H E C K I N G	*/
 

+ 18 - 20
lang/cem/cemcom/domacro.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /* PREPROCESSOR: CONTROLLINE INTERPRETER */
 
@@ -243,6 +247,7 @@ do_include()
 		}
 		else {
 			WorkingDir = getwdir(result);
+			File_Inserted = 1;
 			FileName = result;
 			LineNumber = 0;
 		}
@@ -387,18 +392,6 @@ do_undef()
 	SkipRestOfLine();
 }
 
-PRIVATE
-do_line(l)
-	unsigned int l;
-{
-	struct token tk;
-
-	LineNumber = l - 1;	/* the number of the next input line */
-	if (GetToken(&tk) == STRING)	/* is there a filespecifier? */
-		FileName = tk.tk_bts;
-	SkipRestOfLine();
-}
-
 PRIVATE int
 getparams(buf, parbuf)
 	char *buf[];
@@ -663,14 +656,7 @@ domacro()
 		SkipRestOfLine();
 		return;
 	}
-	LineNumber = tk.tk_ival - 1; /* number of the next line */
-	if ((tok = GetToken(&tk)) == STRING)
-		FileName = tk.tk_bts;
-	else
-	if (tok != EOI) {
-		error("illegal # line");
-		SkipRestOfLine();
-	}
+	do_line(tk.tk_ival);
 	EoiForNewline = 0;
 	SkipEscNewline = 0;
 }
@@ -685,3 +671,15 @@ SkipRestOfLine()
 	PushBack();
 	skipline();
 }
+
+PRIVATE
+do_line(l)
+	unsigned int l;
+{
+	struct token tk;
+
+	LineNumber = l - 1;	/* the number of the next input line */
+	if (GetToken(&tk) == STRING)	/* is there a filespecifier? */
+		FileName = tk.tk_bts;
+	SkipRestOfLine();
+}

+ 4 - 0
lang/cem/cemcom/dumpidf.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*	DUMP ROUTINES	*/
 

+ 4 - 0
lang/cem/cemcom/error.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*	E R R O R   A N D  D I A G N O S T I C   R O U T I N E S	*/
 

+ 4 - 0
lang/cem/cemcom/eval.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /* EXPRESSION-CODE GENERATOR */
 

+ 4 - 0
lang/cem/cemcom/expr.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /* EXPRESSION TREE HANDLING */
 

+ 4 - 0
lang/cem/cemcom/expression.g

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*	EXPRESSION SYNTAX PARSER	*/
 

+ 4 - 0
lang/cem/cemcom/faulty.h

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /* FAULTY DEFINITIONS */
 

+ 4 - 0
lang/cem/cemcom/field.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*	BITFIELD EXPRESSION EVALUATOR	*/
 

+ 4 - 0
lang/cem/cemcom/file_info.h

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /* F I L E   I N F O R M A T I O N   S T R U C T U R E */
 

+ 4 - 0
lang/cem/cemcom/idf.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*	IDENTIFIER  FIDDLING & SYMBOL TABLE HANDLING	*/
 

+ 4 - 0
lang/cem/cemcom/init.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /* PREPROCESSOR: INITIALIZATION ROUTINES */
 

+ 4 - 0
lang/cem/cemcom/input.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 
 #include "inputtype.h"

+ 4 - 0
lang/cem/cemcom/input.h

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 
 #include <inp_pkg.spec>

+ 5 - 0
lang/cem/cemcom/interface.h

@@ -1,3 +1,8 @@
+/* $Header$ */
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 #define PRIVATE	
 #define IMPORT extern
 #define EXPORT

+ 4 - 0
lang/cem/cemcom/ival.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /* CODE FOR THE INITIALISATION OF GLOBAL VARIABLES */
 

+ 4 - 0
lang/cem/cemcom/label.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*		L A B E L   H A N D L I N G		*/
 

+ 4 - 0
lang/cem/cemcom/label.h

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*		L A B E L   D E F I N I T I O N				*/
 

+ 4 - 0
lang/cem/cemcom/level.h

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*  LEVEL DEFINITIONS */
 

+ 5 - 0
lang/cem/cemcom/main.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /* MAIN PROGRAM */
 
@@ -169,6 +173,7 @@ compile(argc, argv)
 	if (!InsertFile(source, (char **) 0, &result)) /* read the source file	*/
 		fatal("%s: no source file %s\n", prog_name, 
 			source ? source : "stdin");
+	File_Inserted = 1;
 	init();
 	FileName = source;
 	LineNumber = 0;

+ 5 - 0
lang/cem/cemcom/mcomm.c

@@ -1,3 +1,8 @@
+/* $Header$ */
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /*	mcomm.c -- change ".lcomm name" into ".comm name" where "name"
 	is specified in a list.
 */

+ 4 - 0
lang/cem/cemcom/mes.h

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /* MESSAGE ADMINISTRATION */
 

+ 4 - 0
lang/cem/cemcom/options.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*	U S E R   O P T I O N - H A N D L I N G		*/
 

+ 4 - 0
lang/cem/cemcom/program.g

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /* PROGRAM PARSER */
 

+ 4 - 0
lang/cem/cemcom/replace.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /* PREPROCESSOR: MACRO-TEXT REPLACEMENT ROUTINES */
 

+ 4 - 0
lang/cem/cemcom/scan.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /* PREPROCESSOR: SCANNER FOR THE ACTUAL PARAMETERS OF MACROS	*/
 

+ 4 - 0
lang/cem/cemcom/sizes.h

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /* VARIOUS TARGET MACHINE SIZE DESCRIPTORS */
 

+ 4 - 0
lang/cem/cemcom/skip.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /* PREPROCESSOR: INPUT SKIP FUNCTIONS */
 

+ 4 - 0
lang/cem/cemcom/specials.h

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /* OCCURANCES OF SPECIAL IDENTIFIERS */
 

+ 4 - 0
lang/cem/cemcom/stack.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*	S T A C K / U N S T A C K  R O U T I N E S	*/
 

+ 4 - 0
lang/cem/cemcom/statement.g

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*	STATEMENT SYNTAX PARSER	*/
 

+ 4 - 0
lang/cem/cemcom/stb.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /* library routine for copying structs */
 

+ 4 - 0
lang/cem/cemcom/struct.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*	ADMINISTRATION OF STRUCT AND UNION DECLARATIONS	*/
 

+ 4 - 0
lang/cem/cemcom/switch.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*	S W I T C H - S T A T E M E N T  A D M I N I S T R A T I O N	*/
 

+ 4 - 0
lang/cem/cemcom/tab.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*	@cc tab.c -o $INSTALLDIR/tab@
 	tab - table generator 

+ 4 - 0
lang/cem/cemcom/tokenname.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /* TOKEN NAME DEFINITIONS */
 

+ 4 - 0
lang/cem/cemcom/tokenname.h

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /* TOKENNAME DEFINITION */
 

+ 5 - 1
lang/cem/cemcom/type.c

@@ -1,3 +1,7 @@
+/*
+ * (c) copyright 1987 by the Vrije Universiteit, Amsterdam, The Netherlands.
+ * See the copyright notice in the ACK home directory, in the file "Copyright".
+ */
 /* $Header$ */
 /*	T Y P E   D E F I N I T I O N   M E C H A N I S M	 */
 
@@ -83,7 +87,7 @@ construct_type(fund, tp, count)
 		dtp = pointer_to(tp);
 		break;
 	case ARRAY:
-		if (tp->tp_size < 0)	{
+		if (count >= 0 && tp->tp_size < 0)	{
 			error("cannot construct array of unknown type");
 			count = (arith)-1;
 		}