Date: Fri, 4 Jun 2021 00:30:18 GMT From: Jessica Clarke <jrtc27@FreeBSD.org> To: src-committers@FreeBSD.org, dev-commits-src-all@FreeBSD.org, dev-commits-src-branches@FreeBSD.org Subject: git: b305e1dfbf69 - stable/11 - aic7xxx: Fix re-building firmware with -fno-common Message-ID: <202106040030.1540UIuF000628@gitrepo.freebsd.org>
next in thread | raw e-mail | index | archive | help
The branch stable/11 has been updated by jrtc27: URL: https://cgit.FreeBSD.org/src/commit/?id=b305e1dfbf695d9082661cdb9cae830cdc592b32 commit b305e1dfbf695d9082661cdb9cae830cdc592b32 Author: Jessica Clarke <jrtc27@FreeBSD.org> AuthorDate: 2021-05-28 18:07:17 +0000 Commit: Jessica Clarke <jrtc27@FreeBSD.org> CommitDate: 2021-06-04 00:30:10 +0000 aic7xxx: Fix re-building firmware with -fno-common The generated C output for aicasm_scan.l defines yylineno already, so references to it from other files should use an extern declaration. The STAILQ_HEAD use in aicasm_symbol.h also provided an identifier, causing it to both define the struct type and define a variable of that struct type, causing any C file including the header to define the same variable. This variable is not used (and confusingly clashes with a field name just below) and was likely caused by confusion when switching between defining fields using similar type macros and defining the type itself. Reviewed by: imp MFC after: 1 week Differential Revision: https://reviews.freebsd.org/D30525 (cherry picked from commit 5e912f5fec025766521f535d1237330ede7f18e2) --- sys/dev/aic7xxx/aicasm/aicasm_gram.y | 2 +- sys/dev/aic7xxx/aicasm/aicasm_symbol.h | 2 +- 2 files changed, 2 insertions(+), 2 deletions(-) diff --git a/sys/dev/aic7xxx/aicasm/aicasm_gram.y b/sys/dev/aic7xxx/aicasm/aicasm_gram.y index 87fe1a25bf0a..746eb29d84db 100644 --- a/sys/dev/aic7xxx/aicasm/aicasm_gram.y +++ b/sys/dev/aic7xxx/aicasm/aicasm_gram.y @@ -57,7 +57,7 @@ #include "aicasm_symbol.h" #include "aicasm_insformat.h" -int yylineno; +extern int yylineno; char *yyfilename; char stock_prefix[] = "aic_"; char *prefix = stock_prefix; diff --git a/sys/dev/aic7xxx/aicasm/aicasm_symbol.h b/sys/dev/aic7xxx/aicasm/aicasm_symbol.h index 3242152c943b..ec88d494cb6f 100644 --- a/sys/dev/aic7xxx/aicasm/aicasm_symbol.h +++ b/sys/dev/aic7xxx/aicasm/aicasm_symbol.h @@ -108,7 +108,7 @@ struct macro_arg { regex_t arg_regex; char *replacement_text; }; -STAILQ_HEAD(macro_arg_list, macro_arg) args; +STAILQ_HEAD(macro_arg_list, macro_arg); struct macro_info { struct macro_arg_list args;
Want to link to this message? Use this URL: <https://mail-archive.FreeBSD.org/cgi/mid.cgi?202106040030.1540UIuF000628>