Module Name:    src
Committed By:   rillig
Date:           Sun Aug 28 08:41:06 UTC 2022

Modified Files:
        src/tests/usr.bin/xlint/lint1: decl.c queries.c
        src/usr.bin/xlint/lint1: cgram.y decl.c externs1.h lint1.h

Log Message:
lint: rename dcs manipulation functions to be clearer

No functional change.


To generate a diff of this commit:
cvs rdiff -u -r1.18 -r1.19 src/tests/usr.bin/xlint/lint1/decl.c
cvs rdiff -u -r1.3 -r1.4 src/tests/usr.bin/xlint/lint1/queries.c
cvs rdiff -u -r1.421 -r1.422 src/usr.bin/xlint/lint1/cgram.y
cvs rdiff -u -r1.295 -r1.296 src/usr.bin/xlint/lint1/decl.c
cvs rdiff -u -r1.165 -r1.166 src/usr.bin/xlint/lint1/externs1.h
cvs rdiff -u -r1.156 -r1.157 src/usr.bin/xlint/lint1/lint1.h

Please note that diffs are not public domain; they are subject to the
copyright notices on the relevant files.

Modified files:

Index: src/tests/usr.bin/xlint/lint1/decl.c
diff -u src/tests/usr.bin/xlint/lint1/decl.c:1.18 src/tests/usr.bin/xlint/lint1/decl.c:1.19
--- src/tests/usr.bin/xlint/lint1/decl.c:1.18	Wed Jun 22 19:23:18 2022
+++ src/tests/usr.bin/xlint/lint1/decl.c	Sun Aug 28 08:41:06 2022
@@ -1,4 +1,4 @@
-/*	$NetBSD: decl.c,v 1.18 2022/06/22 19:23:18 rillig Exp $	*/
+/*	$NetBSD: decl.c,v 1.19 2022/08/28 08:41:06 rillig Exp $	*/
 # 3 "decl.c"
 
 /*
@@ -144,7 +144,7 @@ struct {
 
 /*
  * Before decl.c 1.201 from 2021-07-15, lint crashed with an internal error
- * in end_type.
+ * in dcs_end_type (named end_type back then).
  */
 unsigned long sizes =
     sizeof(const typeof(bool)) +

Index: src/tests/usr.bin/xlint/lint1/queries.c
diff -u src/tests/usr.bin/xlint/lint1/queries.c:1.3 src/tests/usr.bin/xlint/lint1/queries.c:1.4
--- src/tests/usr.bin/xlint/lint1/queries.c:1.3	Fri Jul  8 21:19:07 2022
+++ src/tests/usr.bin/xlint/lint1/queries.c	Sun Aug 28 08:41:06 2022
@@ -1,4 +1,4 @@
-/*	$NetBSD: queries.c,v 1.3 2022/07/08 21:19:07 rillig Exp $	*/
+/*	$NetBSD: queries.c,v 1.4 2022/08/28 08:41:06 rillig Exp $	*/
 # 3 "queries.c"
 
 /*
@@ -173,7 +173,7 @@ Q7(void)
 	/*
 	 * Neither GCC nor Clang accept typeof(bit-field), as that would add
 	 * unnecessary complexity.  Lint accepts it but silently discards the
-	 * bit-field portion from the type; see add_type.
+	 * bit-field portion from the type; see dcs_add_type.
 	 */
 	/* expect+1: redundant cast from 'unsigned char' to 'unsigned int' before assignment [Q7] */
 	bits.u9 = (typeof(bits.u9))u8;

Index: src/usr.bin/xlint/lint1/cgram.y
diff -u src/usr.bin/xlint/lint1/cgram.y:1.421 src/usr.bin/xlint/lint1/cgram.y:1.422
--- src/usr.bin/xlint/lint1/cgram.y:1.421	Thu Aug 25 19:03:47 2022
+++ src/usr.bin/xlint/lint1/cgram.y	Sun Aug 28 08:41:06 2022
@@ -1,5 +1,5 @@
 %{
-/* $NetBSD: cgram.y,v 1.421 2022/08/25 19:03:47 rillig Exp $ */
+/* $NetBSD: cgram.y,v 1.422 2022/08/28 08:41:06 rillig Exp $ */
 
 /*
  * Copyright (c) 1996 Christopher G. Demetriou.  All Rights Reserved.
@@ -35,7 +35,7 @@
 
 #include <sys/cdefs.h>
 #if defined(__RCSID)
-__RCSID("$NetBSD: cgram.y,v 1.421 2022/08/25 19:03:47 rillig Exp $");
+__RCSID("$NetBSD: cgram.y,v 1.422 2022/08/28 08:41:06 rillig Exp $");
 #endif
 
 #include <limits.h>
@@ -730,24 +730,24 @@ declaration:			/* C99 6.7 */
 
 begin_type_declaration_specifiers:	/* see C99 6.7 */
 	  begin_type_typespec {
-		add_type($1);
+		dcs_add_type($1);
 	  }
 	| begin_type_declmods type_specifier {
-		add_type($2);
+		dcs_add_type($2);
 	  }
 	| type_attribute begin_type_declaration_specifiers
 	| begin_type_declaration_specifiers declmod
 	| begin_type_declaration_specifiers notype_type_specifier {
-		add_type($2);
+		dcs_add_type($2);
 	  }
 	;
 
 begin_type_declmods:		/* see C99 6.7 */
 	  begin_type T_QUAL {
-		add_qualifier($2);
+		dcs_add_qualifier($2);
 	  }
 	| begin_type T_SCLASS {
-		add_storage_class($2);
+		dcs_add_storage_class($2);
 	  }
 	| begin_type_declmods declmod
 	;
@@ -759,16 +759,16 @@ begin_type_specifier_qualifier_list:	/* 
 
 begin_type_specifier_qualifier_list_postfix:
 	  begin_type_typespec {
-		add_type($1);
+		dcs_add_type($1);
 	  }
 	| begin_type_qualifier_list type_specifier {
-		add_type($2);
+		dcs_add_type($2);
 	  }
 	| begin_type_specifier_qualifier_list_postfix T_QUAL {
-		add_qualifier($2);
+		dcs_add_qualifier($2);
 	  }
 	| begin_type_specifier_qualifier_list_postfix notype_type_specifier {
-		add_type($2);
+		dcs_add_type($2);
 	  }
 	| begin_type_specifier_qualifier_list_postfix type_attribute
 	;
@@ -784,19 +784,19 @@ begin_type_typespec:
 
 begin_type_qualifier_list:
 	  begin_type T_QUAL {
-		add_qualifier($2);
+		dcs_add_qualifier($2);
 	  }
 	| begin_type_qualifier_list T_QUAL {
-		add_qualifier($2);
+		dcs_add_qualifier($2);
 	  }
 	;
 
 declmod:
 	  T_QUAL {
-		add_qualifier($1);
+		dcs_add_qualifier($1);
 	  }
 	| T_SCLASS {
-		add_storage_class($1);
+		dcs_add_storage_class($1);
 	  }
 	| type_attribute_list
 	;
@@ -821,20 +821,20 @@ type_attribute:			/* See C11 6.7 declara
 	| T_ALIGNAS T_LPAREN type_specifier T_RPAREN	/* C11 6.7.5 */
 	| T_ALIGNAS T_LPAREN constant_expr T_RPAREN	/* C11 6.7.5 */
 	| T_PACKED {
-		addpacked();
+		dcs_add_packed();
 	  }
 	| T_NORETURN
 	;
 
 begin_type:
 	  /* empty */ {
-		begin_type();
+		dcs_begin_type();
 	  }
 	;
 
 end_type:
 	  /* empty */ {
-		end_type();
+		dcs_end_type();
 	  }
 	;
 
@@ -1852,10 +1852,10 @@ goto:				/* see C99 6.8.6 */
 
 asm_statement:			/* GCC extension */
 	  T_ASM T_LPAREN read_until_rparen T_SEMI {
-		setasm();
+		dcs_set_asm();
 	  }
 	| T_ASM T_QUAL T_LPAREN read_until_rparen T_SEMI {
-		setasm();
+		dcs_set_asm();
 	  }
 	| T_ASM error
 	;
@@ -2045,10 +2045,10 @@ gcc_attribute:
 	| T_NAME {
 		const char *name = $1->sb_name;
 		if (is_either(name, "packed", "__packed__"))
-			addpacked();
+			dcs_add_packed();
 		else if (is_either(name, "used", "__used__") ||
 		    is_either(name, "unused", "__unused__"))
-			add_attr_used();
+			dcs_set_used();
 		else if (is_either(name, "fallthrough",
 		    "__fallthrough__"))
 			fallthru(1);

Index: src/usr.bin/xlint/lint1/decl.c
diff -u src/usr.bin/xlint/lint1/decl.c:1.295 src/usr.bin/xlint/lint1/decl.c:1.296
--- src/usr.bin/xlint/lint1/decl.c:1.295	Fri Aug 26 19:44:19 2022
+++ src/usr.bin/xlint/lint1/decl.c	Sun Aug 28 08:41:06 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: decl.c,v 1.295 2022/08/26 19:44:19 rillig Exp $ */
+/* $NetBSD: decl.c,v 1.296 2022/08/28 08:41:06 rillig Exp $ */
 
 /*
  * Copyright (c) 1996 Christopher G. Demetriou.  All Rights Reserved.
@@ -38,7 +38,7 @@
 
 #include <sys/cdefs.h>
 #if defined(__RCSID)
-__RCSID("$NetBSD: decl.c,v 1.295 2022/08/26 19:44:19 rillig Exp $");
+__RCSID("$NetBSD: decl.c,v 1.296 2022/08/28 08:41:06 rillig Exp $");
 #endif
 
 #include <sys/param.h>
@@ -64,7 +64,7 @@ dinfo_t	*dcs;
 
 static	type_t	*tdeferr(type_t *, tspec_t);
 static	void	settdsym(type_t *, sym_t *);
-static	void	align(unsigned int, unsigned int);
+static	void	dcs_align(unsigned int, unsigned int);
 static	sym_t	*newtag(sym_t *, scl_t, bool, bool);
 static	bool	eqargs(const type_t *, const type_t *, bool *);
 static	bool	mnoarg(const type_t *, bool *);
@@ -224,7 +224,7 @@ is_incomplete(const type_t *tp)
  * storage classes.
  */
 void
-add_storage_class(scl_t sc)
+dcs_add_storage_class(scl_t sc)
 {
 
 	if (sc == INLINE) {
@@ -249,7 +249,7 @@ add_storage_class(scl_t sc)
 /*
  * Remember the type, modifier or typedef name returned by the parser
  * in *dcs (top element of decl stack). This information is used in
- * end_type() to build the type used for all declarators in this
+ * dcs_end_type to build the type used for all declarators in this
  * declaration.
  *
  * If tp->t_typedef is 1, the type comes from a previously defined typename.
@@ -257,7 +257,7 @@ add_storage_class(scl_t sc)
  * struct/union/enum tag.
  */
 void
-add_type(type_t *tp)
+dcs_add_type(type_t *tp)
 {
 	tspec_t	t;
 
@@ -519,7 +519,7 @@ setpackedsize(type_t *tp)
 }
 
 void
-addpacked(void)
+dcs_add_packed(void)
 {
 	if (dcs->d_type == NULL)
 		dcs->d_packed = true;
@@ -528,21 +528,21 @@ addpacked(void)
 }
 
 void
-add_attr_used(void)
+dcs_set_used(void)
 {
 	dcs->d_used = true;
 }
 
 /*
  * Remember a qualifier which is part of the declaration specifiers
- * (and not the declarator) in the top element of the declaration stack.
+ * (and not the declarator).
  * Also detect multiple qualifiers of the same kind.
 
- * The remembered qualifier is used by end_type() to construct the type
+ * The remembered qualifier is used by dcs_end_type to construct the type
  * for all declarators.
  */
 void
-add_qualifier(tqual_t q)
+dcs_add_qualifier(tqual_t q)
 {
 
 	if (q == CONST) {
@@ -661,13 +661,13 @@ end_declaration_level(void)
  * There is no need to clear d_asm in dinfo structs with context AUTO,
  * because these structs are freed at the end of the compound statement.
  * But it must be cleared in the outermost dinfo struct, which has
- * context EXTERN. This could be done in begin_type() and would work for C90,
- * but not for C99 or C++ (due to mixed statements and declarations). Thus
- * we clear it in global_clean_up_decl(), which is used to do some cleanup
- * after global declarations/definitions.
+ * context EXTERN. This could be done in dcs_begin_type and would work for
+ * C90, but not for C99 or C++ (due to mixed statements and declarations).
+ * Thus we clear it in global_clean_up_decl(), which is used to do some
+ * cleanup after global declarations/definitions.
  */
 void
-setasm(void)
+dcs_set_asm(void)
 {
 	dinfo_t	*di;
 
@@ -680,7 +680,7 @@ setasm(void)
  * will be used by the next declaration
  */
 void
-begin_type(void)
+dcs_begin_type(void)
 {
 
 	dcs->d_abstract_type = NOTSPEC;
@@ -793,7 +793,7 @@ dcs_merge_declaration_specifiers(void)
  * context.
  */
 void
-end_type(void)
+dcs_end_type(void)
 {
 
 	dcs_merge_declaration_specifiers();
@@ -1165,14 +1165,14 @@ declarator_1_struct_union(sym_t *dsym)
 		dcs->d_offset_in_bits = 0;
 	}
 	if (dsym->s_bitfield) {
-		align(alignment_in_bits(tp), tp->t_flen);
+		dcs_align(alignment_in_bits(tp), tp->t_flen);
 		dsym->u.s_member.sm_offset_in_bits = dcs->d_offset_in_bits -
 		    dcs->d_offset_in_bits % size_in_bits(t);
 		tp->t_foffs = dcs->d_offset_in_bits -
 		    dsym->u.s_member.sm_offset_in_bits;
 		dcs->d_offset_in_bits += tp->t_flen;
 	} else {
-		align(alignment_in_bits(tp), 0);
+		dcs_align(alignment_in_bits(tp), 0);
 		dsym->u.s_member.sm_offset_in_bits = dcs->d_offset_in_bits;
 		dcs->d_offset_in_bits += sz;
 	}
@@ -1198,7 +1198,7 @@ declarator_1_struct_union(sym_t *dsym)
  * al contains the required alignment, len the length of a bit-field.
  */
 static void
-align(unsigned int al, unsigned int len)
+dcs_align(unsigned int al, unsigned int len)
 {
 	unsigned int no;
 
@@ -1293,7 +1293,7 @@ block_derive_pointer(type_t *stp, bool i
  * The following 3 functions extend the type of a declarator with
  * pointer, function and array types.
  *
- * The current type is the type built by end_type() (dcs->d_type) and
+ * The current type is the type built by dcs_end_type (dcs->d_type) and
  * pointer, function and array types already added for this
  * declarator. The new type extension is inserted between both.
  */
@@ -1843,7 +1843,7 @@ complete_tag_struct_or_union(type_t *tp,
 		tp->t_str->sou_incomplete = false;
 
 	t = tp->t_tspec;
-	align((u_int)dcs->d_sou_align_in_bits, 0);
+	dcs_align((u_int)dcs->d_sou_align_in_bits, 0);
 	sp = tp->t_str;
 	sp->sou_align_in_bits = dcs->d_sou_align_in_bits;
 	sp->sou_first_member = fmem;

Index: src/usr.bin/xlint/lint1/externs1.h
diff -u src/usr.bin/xlint/lint1/externs1.h:1.165 src/usr.bin/xlint/lint1/externs1.h:1.166
--- src/usr.bin/xlint/lint1/externs1.h:1.165	Tue Jul  5 22:50:41 2022
+++ src/usr.bin/xlint/lint1/externs1.h	Sun Aug 28 08:41:06 2022
@@ -1,4 +1,4 @@
-/*	$NetBSD: externs1.h,v 1.165 2022/07/05 22:50:41 rillig Exp $	*/
+/*	$NetBSD: externs1.h,v 1.166 2022/08/28 08:41:06 rillig Exp $	*/
 
 /*
  * Copyright (c) 1994, 1995 Jochen Pohl
@@ -189,16 +189,16 @@ extern	type_t	*block_dup_type(const type
 extern	type_t	*expr_dup_type(const type_t *);
 extern	type_t	*expr_unqualified_type(const type_t *);
 extern	bool	is_incomplete(const type_t *);
-extern	void	add_storage_class(scl_t);
-extern	void	add_type(type_t *);
-extern	void	add_qualifier(tqual_t);
-extern	void	addpacked(void);
-extern	void	add_attr_used(void);
+extern	void	dcs_add_storage_class(scl_t);
+extern	void	dcs_add_type(type_t *);
+extern	void	dcs_add_qualifier(tqual_t);
+extern	void	dcs_add_packed(void);
+extern	void	dcs_set_used(void);
 extern	void	begin_declaration_level(declaration_kind);
 extern	void	end_declaration_level(void);
-extern	void	setasm(void);
-extern	void	begin_type(void);
-extern	void	end_type(void);
+extern	void	dcs_set_asm(void);
+extern	void	dcs_begin_type(void);
+extern	void	dcs_end_type(void);
 extern	int	length_in_bits(const type_t *, const char *);
 extern	unsigned int alignment_in_bits(const type_t *);
 extern	sym_t	*lnklst(sym_t *, sym_t *);

Index: src/usr.bin/xlint/lint1/lint1.h
diff -u src/usr.bin/xlint/lint1/lint1.h:1.156 src/usr.bin/xlint/lint1/lint1.h:1.157
--- src/usr.bin/xlint/lint1/lint1.h:1.156	Tue Jul  5 22:50:41 2022
+++ src/usr.bin/xlint/lint1/lint1.h	Sun Aug 28 08:41:06 2022
@@ -1,4 +1,4 @@
-/* $NetBSD: lint1.h,v 1.156 2022/07/05 22:50:41 rillig Exp $ */
+/* $NetBSD: lint1.h,v 1.157 2022/08/28 08:41:06 rillig Exp $ */
 
 /*
  * Copyright (c) 1996 Christopher G. Demetriou.  All Rights Reserved.
@@ -346,7 +346,7 @@ typedef	struct dinfo {
 	tspec_t	d_sign_mod;	/* SIGNED or UNSIGN */
 	tspec_t	d_rank_mod;	/* SHORT, LONG or QUAD */
 	scl_t	d_scl;		/* storage class */
-	type_t	*d_type;	/* after end_type() pointer to the type used
+	type_t	*d_type;	/* after dcs_end_type pointer to the type used
 				   for all declarators */
 	sym_t	*d_redeclared_symbol;
 	unsigned int d_offset_in_bits; /* offset of next structure member */
@@ -355,7 +355,7 @@ typedef	struct dinfo {
 	bool	d_const:1;	/* const in declaration specifiers */
 	bool	d_volatile:1;	/* volatile in declaration specifiers */
 	bool	d_inline:1;	/* inline in declaration specifiers */
-	bool	d_multiple_storage_classes:1; /* reported in end_type */
+	bool	d_multiple_storage_classes:1; /* reported in dcs_end_type */
 	bool	d_invalid_type_combination:1;
 	bool	d_nonempty_decl:1; /* if at least one tag is declared
 				 * ... in the current function decl. */

Reply via email to