Module Name:    src
Committed By:   rillig
Date:           Sat Mar 30 19:51:00 UTC 2024

Modified Files:
        src/usr.bin/xlint/lint1: decl.c

Log Message:
lint: document which fields are not reset when starting a new type

Setting all visible fields to their null value seemed as if the whole
object were reset.


To generate a diff of this commit:
cvs rdiff -u -r1.397 -r1.398 src/usr.bin/xlint/lint1/decl.c

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

Modified files:

Index: src/usr.bin/xlint/lint1/decl.c
diff -u src/usr.bin/xlint/lint1/decl.c:1.397 src/usr.bin/xlint/lint1/decl.c:1.398
--- src/usr.bin/xlint/lint1/decl.c:1.397	Fri Mar 29 08:35:32 2024
+++ src/usr.bin/xlint/lint1/decl.c	Sat Mar 30 19:51:00 2024
@@ -1,4 +1,4 @@
-/* $NetBSD: decl.c,v 1.397 2024/03/29 08:35:32 rillig Exp $ */
+/* $NetBSD: decl.c,v 1.398 2024/03/30 19:51:00 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.397 2024/03/29 08:35:32 rillig Exp $");
+__RCSID("$NetBSD: decl.c,v 1.398 2024/03/30 19:51:00 rillig Exp $");
 #endif
 
 #include <sys/param.h>
@@ -589,6 +589,8 @@ dcs_begin_type(void)
 {
 
 	debug_enter();
+
+	// keep d_kind
 	dcs->d_abstract_type = NO_TSPEC;
 	dcs->d_complex_mod = NO_TSPEC;
 	dcs->d_sign_mod = NO_TSPEC;
@@ -596,17 +598,24 @@ dcs_begin_type(void)
 	dcs->d_scl = NO_SCL;
 	dcs->d_type = NULL;
 	dcs->d_redeclared_symbol = NULL;
+	// keep d_sou_size_in_bits
+	// keep d_sou_align_in_bits
 	dcs->d_qual = (type_qualifiers) { .tq_const = false };
 	dcs->d_inline = false;
 	dcs->d_multiple_storage_classes = false;
 	dcs->d_invalid_type_combination = false;
 	dcs->d_nonempty_decl = false;
 	dcs->d_no_type_specifier = false;
+	// keep d_asm
 	dcs->d_packed = false;
 	dcs->d_used = false;
+	// keep d_tag_type
 	dcs->d_func_params = NULL;
 	dcs->d_func_def_pos = (pos_t){ NULL, 0, 0 };
+	// keep d_first_dlsym
+	// keep d_last_dlsym
 	dcs->d_func_proto_syms = NULL;
+	// keep d_enclosing
 }
 
 static void

Reply via email to