List:Internals« Previous MessageNext Message »
From:Konstantin Osipov Date:June 22 2009 5:29pm
Subject:Re: MySql coding style: Request for deprecation of UPPERCASE typedefs
View as plain text  
* Tor Didriksen <Tor.Didriksen@stripped> [09/06/22 17:23]:
> "Structure types are typedef'ed to an all-upper-case identifier."
> Can someone explain the reasoning behind this?
> ALL_UPPERCASE_NAME says DANGEROUS_THIS_IS_A_MACRO to me, rather than
> struct/class.
>
> typedef struct foo { ... } FOO;
> Is legacy C-style, and does not belong in a C++ style guide (imho).
>
> Roy had an email about this:
> http://lists.mysql.com/internals/36570
> I could find no objections to his mail, the thread simply died.

This is an obsolete convention, but it is still widely used in the
optimizer and semantic analysis code, even in new parts of it. It
was difficult for me to involve some optimizer engineers into
discussion about the coding style.

In runtime, I find it largely irrelevant: I advocate against
introduction of new struct objects into the code base, classes
should be used instead, and for classes we use a different naming
rule.

We also have a lot of legacy code that follows this old guideline.
typedef's are really a pain to maintain, since they obfuscate
tags-jumping, make forward declarations more difficult.

I guess updating the old code could be a task for reengineering
team. Drizle did it one of the first things. 
I would gladly review any patch that removes unnecessary typedefs
from the code, and submit such patches myself once in a while.
Nobody else, however,  seem to have done much about it instead of
talking :-<.

Please submit a change request to the coding style group to remove
that rule (unless this mail is already a change request).


-- 
Thread
MySql coding style: Request for deprecation of UPPERCASE typedefsTor Didriksen22 Jun 2009
  • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsMats Kindahl22 Jun 2009
    • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsMichael Widenius24 Jun 2009
      • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsTor Didriksen25 Jun 2009
        • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsMichael Widenius27 Jun 2009
      • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsMats Kindahl25 Jun 2009
        • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsMichael Widenius27 Jun 2009
          • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsJay Pipes27 Jun 2009
          • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsTor Didriksen29 Jun 2009
          • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsMats Kindahl29 Jun 2009
            • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsKristian Nielsen29 Jun 2009
              • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsTor Didriksen30 Jun 2009
                • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsMats Kindahl30 Jun 2009
                • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsKristian Nielsen30 Jun 2009
                  • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsTor Didriksen1 Jul 2009
                    • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsKristian Nielsen1 Jul 2009
                  • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsKonstantin Osipov1 Jul 2009
              • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsKonstantin Osipov1 Jul 2009
                • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsKristian Nielsen2 Jul 2009
  • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsKonstantin Osipov22 Jun 2009
    • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsRoy Lyseng22 Jun 2009
      • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsTor Didriksen23 Jun 2009
        • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsMats Kindahl23 Jun 2009
          • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsTor Didriksen23 Jun 2009
            • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsMats Kindahl23 Jun 2009
              • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsMichael Widenius27 Jun 2009
                • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsMats Kindahl30 Jun 2009
            • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsMichael Widenius24 Jun 2009
              • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsTor Didriksen25 Jun 2009
                • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsJonas Oreland25 Jun 2009
                  • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsDavi Arnaut25 Jun 2009
                    • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsMichael Widenius27 Jun 2009
                  • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsMichael Widenius27 Jun 2009
                • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsJay Pipes25 Jun 2009
                  • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsMats Kindahl25 Jun 2009
                  • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsMichael Widenius27 Jun 2009
                • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsMichael Widenius27 Jun 2009
                  • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsMats Kindahl30 Jun 2009
              • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsMats Kindahl25 Jun 2009
                • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsMichael Widenius27 Jun 2009
                  • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsJay Pipes27 Jun 2009
                    • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsMichael Widenius30 Jun 2009
                  • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsJay Pipes27 Jun 2009
                    • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsMichael Widenius1 Jul 2009
    • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsTor Didriksen23 Jun 2009
  • Re: MySql coding style: Request for deprecation of UPPERCASEtypedefsSergei Golubchik22 Jun 2009
    • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsTor Didriksen23 Jun 2009
      • Re: MySql coding style: Request for deprecation of UPPERCASEtypedefsSergei Golubchik23 Jun 2009
        • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsTor Didriksen23 Jun 2009
  • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsAlex Esterkin1 Jul 2009
    • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsTor Didriksen1 Jul 2009
    • Re: MySql coding style: Request for deprecation of UPPERCASE typedefsKonstantin Osipov1 Jul 2009