This needs further discussion. Before GoogleTest was added, there was a clear direction to move from STATIC->static.
The issue at hand is really a C++/C compatibility issue. We need to enumerate the full set of issues and see if there are reasonable ways to address. Mike > -----Original Message----- > From: Rebecca Cran <rebe...@bsdio.com> > Sent: Monday, October 21, 2024 7:49 AM > To: Kinney, Michael D <michael.d.kin...@intel.com>; devel@edk2.groups.io > Subject: Re: [edk2-CCodingStandardsSpecification PATCH 1/1] Prefer use > of `static` C keyword over EDK2 type `STATIC` > > Thanks, I'll fix it. > > Could you confirm whether the change from STATIC to static is something > we want to go ahead with, or do we want to keep STATIC to allow > GoogleTest to work? > > > -- > Rebecca > > > On 10/15/24 3:12 PM, Kinney, Michael D wrote: > > The draft status is never disabled in the master branch. > > > > Please see the release process for documents. > > > > https://github.com/tianocore-docs/edk2- > TemplateSpecification/wiki/TianoCore-Documents-Releasing > > > > Document changes should be made on the master branch, and then the > release branch is created with no content changes. > > > > Mike > > > >> -----Original Message----- > >> From: Rebecca Cran <rebe...@bsdio.com> > >> Sent: Thursday, October 10, 2024 6:21 PM > >> To: Kinney, Michael D <michael.d.kin...@intel.com>; > devel@edk2.groups.io > >> Cc: Rebecca Cran <rebe...@bsdio.com> > >> Subject: [edk2-CCodingStandardsSpecification PATCH 1/1] Prefer use of > >> `static` C keyword over EDK2 type `STATIC` > >> > >> A while ago a decision was made on the edk2-devel mailing list that > >> the `STATIC` EDK2 type should be replaced with the C keyword > `static`. > >> > >> Update the Coding Specification to match. While here, remove the > >> outdated section disallowing static functions since they're no longer > >> a problem. > >> > >> Bump the revision to 2.4 and turn off the draft status. > >> > >> Signed-off-by: Rebecca Cran <rebe...@bsdio.com> > >> --- > >> 5_source_files/54_code_file_structure.md | 8 +------- > >> 5_source_files/56_declarations_and_types.md | 2 +- > >> README.md | 3 ++- > >> book.json | 4 ++-- > >> 4 files changed, 6 insertions(+), 11 deletions(-) > >> > >> diff --git a/5_source_files/54_code_file_structure.md > >> b/5_source_files/54_code_file_structure.md > >> index 0c4d6a2..6decc60 100644 > >> --- a/5_source_files/54_code_file_structure.md > >> +++ b/5_source_files/54_code_file_structure.md > >> @@ -269,7 +269,7 @@ other than at the top level of a file as > specified > >> by this document. > >> > >> > >> #### 5.4.2.2 Static > >> > >> > >> > >> -An object declared `STATIC` has either file or block scope. > >> > >> +An object declared `static` has either file or block scope. > >> > >> > >> > >> ##### 5.4.2.2.1 Do not reuse an object or function identifier with > >> static storage duration. > >> > >> > >> > >> @@ -277,9 +277,3 @@ Throughout the set of source files defined within > a > >> single .inf file, do not > >> reuse an identifier with static storage duration. The compiler may > not > >> be > >> > >> confused by this, but the user may confuse unrelated variables with > the > >> same > >> > >> name. > >> > >> - > >> > >> -##### 5.4.2.2.2 Functions should not be declared STATIC. > >> > >> - > >> > >> -Some source-level debuggers are unable to resolve static functions. > >> Until it > >> > >> -can be verified that no one is dependent upon a debugger with this > >> limitation, > >> > >> -it is strongly recommended that functions not be declared static. > >> > >> diff --git a/5_source_files/56_declarations_and_types.md > >> b/5_source_files/56_declarations_and_types.md > >> index ec1803d..77e3ce9 100644 > >> --- a/5_source_files/56_declarations_and_types.md > >> +++ b/5_source_files/56_declarations_and_types.md > >> @@ -38,7 +38,7 @@ > >> Any abstract type that is defined must be constructed from other > >> abstract types > >> > >> or from common EFI data types. > >> > >> > >> > >> -#### 5.6.1.2 The use of int, unsigned, char, void, static, long is a > >> violation of the coding convention. > >> > >> +#### 5.6.1.2 The use of int, unsigned, char, void, long is a > violation > >> of the coding convention. > >> > >> > >> > >> The corresponding EFI types must be used instead. > >> > >> > >> > >> diff --git a/README.md b/README.md > >> index 77cfdc8..b543bcf 100644 > >> --- a/README.md > >> +++ b/README.md > >> @@ -114,4 +114,5 @@ Copyright (c) 2006-2017, Intel Corporation. All > >> rights reserved. > >> | | > [#425](https://bugzilla.tianocore.org/show_bug.cgi?id=425) > >> [CCS] clarify line breaking and indentation requirements for multi- > line > >> function calls | | > >> > >> | | > >> [#1656](https://bugzilla.tianocore.org/show_bug.cgi?id=1656) Update > all > >> Wiki pages for the BSD+Patent license change with SPDX identifiers > >> | | > >> > >> | | > [#607](https://bugzilla.tianocore.org/show_bug.cgi?id=607) > >> Document code comment requirements for spurious variable assignments > >> | | > >> > >> -| 2.3 | Add 4.2 Directory names section and update File names > >> section for the guidelines of module directory and file > naming|September > >> 2022|| > >> > >> +| 2.3 | Add 4.2 Directory names section and update File names > >> section for the guidelines of module directory and file naming > >> |September 2022| > >> > >> +| 2.4 | The use of the 'static' C keyword is now preferred over > >> the EDK2 type 'STATIC' > >> |October 2024| > >> > >> diff --git a/book.json b/book.json > >> index d112b26..3ec7a93 100644 > >> --- a/book.json > >> +++ b/book.json > >> @@ -1,8 +1,8 @@ > >> { > >> > >> "variables" : { > >> > >> - "draft" : "yes", > >> > >> + "draft" : "no", > >> > >> "title" : "EDK II C Coding Standards Specification", > >> > >> - "version" : "Revision 2.2" > >> > >> + "version" : "Revision 2.4" > >> > >> }, > >> > >> "plugins": ["puml-aleung"], > >> > >> "pluginsConfig": {} > >> > >> -- > >> 2.46.1 -=-=-=-=-=-=-=-=-=-=-=- Groups.io Links: You receive all messages sent to this group. View/Reply Online (#120634): https://edk2.groups.io/g/devel/message/120634 Mute This Topic: https://groups.io/mt/108941574/21656 Group Owner: devel+ow...@edk2.groups.io Unsubscribe: https://edk2.groups.io/g/devel/unsub [arch...@mail-archive.com] -=-=-=-=-=-=-=-=-=-=-=-