[PATCH 1/3] treewide: convert bd_t to struct bd_info by coccinelle

Tom Rini trini at konsulko.com
Fri Jul 17 22:58:00 CEST 2020


On Fri, Jun 26, 2020 at 03:13:33PM +0900, Masahiro Yamada wrote:

> The Linux coding style guide (Documentation/process/coding-style.rst)
> clearly says:
> 
>   It's a **mistake** to use typedef for structures and pointers.
> 
> Besides, using typedef for structures is annoying when you try to make
> headers self-contained.
> 
> Let's say you have the following function declaration in a header:
> 
>   void foo(bd_t *bd);
> 
> This is not self-contained since bd_t is not defined.
> 
> To tell the compiler what 'bd_t' is, you need to include <asm/u-boot.h>
> 
>   #include <asm/u-boot.h>
>   void foo(bd_t *bd);
> 
> Then, the include direcective pulls in more bloat needlessly.
> 
> If you use 'struct bd_info' instead, it is enough to put a forward
> declaration as follows:
> 
>   struct bd_info;
>   void foo(struct bd_info *bd);
> 
> Right, typedef'ing bd_t is a mistake.
> 
> I used coccinelle to generate this commit.
> 
> The semantic patch that makes this change is as follows:
> 
>   <smpl>
>   @@
>   typedef bd_t;
>   @@
>   -bd_t
>   +struct bd_info
>   </smpl>
> 
> Signed-off-by: Masahiro Yamada <masahiroy at kernel.org>

Applied to u-boot/master, thanks!

-- 
Tom
-------------- next part --------------
A non-text attachment was scrubbed...
Name: signature.asc
Type: application/pgp-signature
Size: 659 bytes
Desc: not available
URL: <https://lists.denx.de/pipermail/u-boot/attachments/20200717/968ee277/attachment.sig>


More information about the U-Boot mailing list