/usr/src/linux-headers-5.15.0-181/scripts/coccinelle/misc
NameSizeModeActions
add_namespace.cocci8370644editdlrm
array_size.cocci17290644editdlrm
array_size_dup.cocci48940644editdlrm
badty.cocci17290644editdlrm
boolconv.cocci15060644editdlrm
boolreturn.cocci6980644editdlrm
bugon.cocci15150644editdlrm
cond_no_effect.cocci21210644editdlrm
cstptr.cocci8520644editdlrm
doubleinit.cocci14080644editdlrm
excluded_middle.cocci6770644editdlrm
flexible_array.cocci18210644editdlrm
ifaddr.cocci6840644editdlrm
ifcol.cocci12580644editdlrm
irqf_oneshot.cocci20070644editdlrm
minmax.cocci32880644editdlrm
newline_in_nl_msg.cocci16500644editdlrm
noderef.cocci12190644editdlrm
of_table.cocci13660644editdlrm
orplus.cocci10530644editdlrm
returnvar.cocci12860644editdlrm
semicolon.cocci10950644editdlrm
swap.cocci15170644editdlrm
uninitialized_var.cocci16290644editdlrm
warn.cocci16860644editdlrm
Edit: /usr/src/linux-headers-5.15.0-181/scripts/coccinelle/misc/uninitialized_var.cocci (1629B)
// SPDX-License-Identifier: GPL-2.0-only /// /// Please, don't reintroduce uninitialized_var(). /// /// From Documentation/process/deprecated.rst, /// commit 4b19bec97c88 ("docs: deprecated.rst: Add uninitialized_var()"): /// For any compiler warnings about uninitialized variables, just add /// an initializer. Using warning-silencing tricks is dangerous as it /// papers over real bugs (or can in the future), and suppresses unrelated /// compiler warnings (e.g. "unused variable"). If the compiler thinks it /// is uninitialized, either simply initialize the variable or make compiler /// changes. Keep in mind that in most cases, if an initialization is /// obviously redundant, the compiler's dead-store elimination pass will make /// sure there are no needless variable writes. /// /// Later, commit 3942ea7a10c9 ("deprecated.rst: Remove now removed /// uninitialized_var") removed this section because all initializations of /// this kind were cleaned-up from the kernel. This cocci rule checks that /// the macro is not explicitly or implicitly reintroduced. /// // Confidence: High // Copyright: (C) 2020 Denis Efremov ISPRAS // Options: --no-includes --include-headers // virtual context virtual report virtual org @r@ identifier var; type T; position p; @@ ( * T var =@p var; | * T var =@p *(&(var)); | * var =@p var | * var =@p *(&(var)) ) @script:python depends on report@ p << r.p; @@ coccilib.report.print_report(p[0], "WARNING this kind of initialization is deprecated") @script:python depends on org@ p << r.p; @@ coccilib.org.print_todo(p[0], "WARNING this kind of initialization is deprecated")