Commit cab9de71 authored by Linus Torvalds's avatar Linus Torvalds

Merge tag 'coccinelle-for-5.20' of git://git.kernel.org/pub/scm/linux/kernel/git/jlawall/linux

Pull coccinelle semantic patch updates from Julia Lawall:

 - Update the semantic patches in the kernel that contain a URL for
   Coccinelle with a URL that is currently valid (from myself).

 - Add a semantic patch checking for unnecessary NULL tests on dev_{put,
   hold} functions (from Ziyang Xuan, followed bt a modification from
   myself).

 - Drop a semantic patch that replaces 0/1 by booleans, as this change
   was considered to be not worthwhile by some maintainers (from Steve
   Rostedt).

 - Extend an existing semantic patch with more checks for useless tests
   on variables addresses (from Jérémy Lefaure).

* tag 'coccinelle-for-5.20' of git://git.kernel.org/pub/scm/linux/kernel/git/jlawall/linux:
  update Coccinelle URL
  coccinelle: free: add version constraint
  scripts/coccinelle/free: add NULL test before dev_{put, hold} functions
  coccinelle: Remove script that checks replacing 0/1 with false/true in functions returning bool
  coccinelle: Extend address test from ifaddr semantic patch to test expressions
parents 4e23eeeb f01701ce
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
// Copyright: (C) 2009-2010 Julia Lawall, Nicolas Palix, DIKU. // Copyright: (C) 2009-2010 Julia Lawall, Nicolas Palix, DIKU.
// Copyright: (C) 2009-2010 Gilles Muller, INRIA/LiP6. // Copyright: (C) 2009-2010 Gilles Muller, INRIA/LiP6.
// Copyright: (C) 2017 Himanshu Jha // Copyright: (C) 2017 Himanshu Jha
// URL: http://coccinelle.lip6.fr/rules/kzalloc.html // URL: https://coccinelle.gitlabpages.inria.fr/website
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
// //
// Keywords: kmalloc, kzalloc // Keywords: kmalloc, kzalloc
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
// Copyright (c) 2016-2017, Elena Reshetova, Intel Corporation // Copyright (c) 2016-2017, Elena Reshetova, Intel Corporation
// //
// Confidence: Moderate // Confidence: Moderate
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Options: --include-headers --very-quiet // Options: --include-headers --very-quiet
virtual report virtual report
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
/// ///
// Confidence: High // Confidence: High
// Copyright: (C) 2017 Julia Lawall, Inria/LIP6, // Copyright: (C) 2017 Julia Lawall, Inria/LIP6,
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Requires: 1.0.7 // Requires: 1.0.7
// Keywords: BQ27XXX_DATA // Keywords: BQ27XXX_DATA
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
// Keywords: d_find_alias, dput // Keywords: d_find_alias, dput
// //
// Confidence: Moderate // Confidence: Moderate
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Options: --include-headers // Options: --include-headers
virtual context virtual context
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
// Copyright: (C) 2009, 2010 Nicolas Palix, DIKU. // Copyright: (C) 2009, 2010 Nicolas Palix, DIKU.
// Copyright: (C) 2009, 2010 Julia Lawall, DIKU. // Copyright: (C) 2009, 2010 Julia Lawall, DIKU.
// Copyright: (C) 2009, 2010 Gilles Muller, INRIA/LiP6. // Copyright: (C) 2009, 2010 Gilles Muller, INRIA/LiP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Options: // Options:
// //
// Keywords: ERR_PTR, PTR_ERR, ERR_CAST // Keywords: ERR_PTR, PTR_ERR, ERR_CAST
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
// Copyright: (C) 2010-2012 Nicolas Palix. // Copyright: (C) 2010-2012 Nicolas Palix.
// Copyright: (C) 2010-2012 Julia Lawall, INRIA/LIP6. // Copyright: (C) 2010-2012 Julia Lawall, INRIA/LIP6.
// Copyright: (C) 2010-2012 Gilles Muller, INRIA/LiP6. // Copyright: (C) 2010-2012 Gilles Muller, INRIA/LiP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Comments: // Comments:
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
// Copyright: (C) 2010-2012 Nicolas Palix. // Copyright: (C) 2010-2012 Nicolas Palix.
// Copyright: (C) 2010-2012 Julia Lawall, INRIA/LIP6. // Copyright: (C) 2010-2012 Julia Lawall, INRIA/LIP6.
// Copyright: (C) 2010-2012 Gilles Muller, INRIA/LiP6. // Copyright: (C) 2010-2012 Gilles Muller, INRIA/LiP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Comments: // Comments:
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
// Copyright: (C) 2010-2012 Nicolas Palix. // Copyright: (C) 2010-2012 Nicolas Palix.
// Copyright: (C) 2010-2012 Julia Lawall, INRIA/LIP6. // Copyright: (C) 2010-2012 Julia Lawall, INRIA/LIP6.
// Copyright: (C) 2010-2012 Gilles Muller, INRIA/LiP6. // Copyright: (C) 2010-2012 Gilles Muller, INRIA/LiP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Comments: // Comments:
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
// Keywords: pm_runtime // Keywords: pm_runtime
// Confidence: Medium // Confidence: Medium
// Copyright (C) 2013 Texas Instruments Incorporated - // Copyright (C) 2013 Texas Instruments Incorporated -
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Options: --include-headers // Options: --include-headers
virtual patch virtual patch
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
// Copyright: (C) 2009, 2010 Nicolas Palix, DIKU. // Copyright: (C) 2009, 2010 Nicolas Palix, DIKU.
// Copyright: (C) 2009, 2010 Julia Lawall, DIKU. // Copyright: (C) 2009, 2010 Julia Lawall, DIKU.
// Copyright: (C) 2009, 2010 Gilles Muller, INRIA/LiP6. // Copyright: (C) 2009, 2010 Gilles Muller, INRIA/LiP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Options: // Options:
// //
// Keywords: resource_size // Keywords: resource_size
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
// Confidence: Moderate // Confidence: Moderate
// Copyright: (C) 2012 Julia Lawall, INRIA/LIP6. // Copyright: (C) 2012 Julia Lawall, INRIA/LIP6.
// Copyright: (C) 2012 Gilles Muller, INRIA/LiP6. // Copyright: (C) 2012 Gilles Muller, INRIA/LiP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Comments: // Comments:
// Options: // Options:
......
...@@ -17,7 +17,7 @@ ...@@ -17,7 +17,7 @@
// Confidence: Moderate // Confidence: Moderate
// Copyright: (C) 2011 Julia Lawall, INRIA/LIP6. // Copyright: (C) 2011 Julia Lawall, INRIA/LIP6.
// Copyright: (C) 2011 Gilles Muller, INRIA/LiP6. // Copyright: (C) 2011 Gilles Muller, INRIA/LiP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Comments: // Comments:
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
......
// SPDX-License-Identifier: GPL-2.0-only
/// Since commit b37a46683739 ("netdevice: add the case if dev is NULL"),
/// NULL check before dev_{put, hold} functions is not needed.
///
/// Based on ifnullfree.cocci by Fabian Frederick.
///
// Copyright: (C) 2022 Ziyang Xuan.
// Comments: -
// Options: --no-includes --include-headers
// Version min: 5.15
virtual patch
virtual org
virtual report
virtual context
@r2 depends on patch@
expression E;
@@
- if (E != NULL)
(
__dev_put(E);
|
dev_put(E);
|
dev_put_track(E, ...);
|
__dev_hold(E);
|
dev_hold(E);
|
dev_hold_track(E, ...);
)
@r depends on context || report || org @
expression E;
position p;
@@
* if (E != NULL)
* \(__dev_put@p\|dev_put@p\|dev_put_track@p\|__dev_hold@p\|dev_hold@p\|
* dev_hold_track@p\)(E, ...);
@script:python depends on org@
p << r.p;
@@
cocci.print_main("NULL check before dev_{put, hold} functions is not needed", p)
@script:python depends on report@
p << r.p;
@@
msg = "WARNING: NULL check before dev_{put, hold} functions is not needed."
coccilib.report.print_report(p[0], msg)
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
// Confidence: Moderate // Confidence: Moderate
// Copyright: (C) 2012 Julia Lawall, INRIA/LIP6. // Copyright: (C) 2012 Julia Lawall, INRIA/LIP6.
// Copyright: (C) 2012 Gilles Muller, INRIA/LiP6. // Copyright: (C) 2012 Gilles Muller, INRIA/LiP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Comments: // Comments:
// Options: // Options:
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
// Copyright: (C) 2010-2012 Nicolas Palix. // Copyright: (C) 2010-2012 Nicolas Palix.
// Copyright: (C) 2010-2012 Julia Lawall, INRIA/LIP6. // Copyright: (C) 2010-2012 Julia Lawall, INRIA/LIP6.
// Copyright: (C) 2010-2012 Gilles Muller, INRIA/LiP6. // Copyright: (C) 2010-2012 Gilles Muller, INRIA/LiP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Comments: // Comments:
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
/// ///
// Confidence: High // Confidence: High
// Copyright: (C) 2013 Julia Lawall, INRIA/LIP6. // Copyright: (C) 2013 Julia Lawall, INRIA/LIP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Comments: // Comments:
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
......
...@@ -3,7 +3,7 @@ ...@@ -3,7 +3,7 @@
/// ///
// Confidence: Moderate // Confidence: Moderate
// Copyright: (C) 2013 Petr Strnad. // Copyright: (C) 2013 Petr Strnad.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Keywords: pci_free_consistent, pci_alloc_consistent // Keywords: pci_free_consistent, pci_alloc_consistent
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
/// ///
// Confidence: High // Confidence: High
// Copyright: (C) 2015 Julia Lawall, Inria. // Copyright: (C) 2015 Julia Lawall, Inria.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
// Requires: 1.0.4 // Requires: 1.0.4
// Keywords: for_each_child_of_node, etc. // Keywords: for_each_child_of_node, etc.
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
/// ///
// Confidence: High // Confidence: High
// Copyright: (C) 2020 Sumera Priyadarsini // Copyright: (C) 2020 Sumera Priyadarsini
// URL: http://coccinelle.lip6.fr // URL: https://coccinelle.gitlabpages.inria.fr/website
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
virtual patch virtual patch
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
// Copyright: (C) 2010-2012 Nicolas Palix. // Copyright: (C) 2010-2012 Nicolas Palix.
// Copyright: (C) 2010-2012 Julia Lawall, INRIA/LIP6. // Copyright: (C) 2010-2012 Julia Lawall, INRIA/LIP6.
// Copyright: (C) 2010-2012 Gilles Muller, INRIA/LiP6. // Copyright: (C) 2010-2012 Gilles Muller, INRIA/LiP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Comments: // Comments:
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
// Copyright: (C) 2010 Nicolas Palix, DIKU. // Copyright: (C) 2010 Nicolas Palix, DIKU.
// Copyright: (C) 2010 Julia Lawall, DIKU. // Copyright: (C) 2010 Julia Lawall, DIKU.
// Copyright: (C) 2010 Gilles Muller, INRIA/LiP6. // Copyright: (C) 2010 Gilles Muller, INRIA/LiP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Comments: // Comments:
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
// Confidence: Moderate // Confidence: Moderate
// Copyright: (C) 2012 Julia Lawall, INRIA/LIP6. // Copyright: (C) 2012 Julia Lawall, INRIA/LIP6.
// Copyright: (C) 2012 Gilles Muller, INRIA/LIP6. // Copyright: (C) 2012 Gilles Muller, INRIA/LIP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Comments: // Comments:
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
// Copyright: (C) 2012 Nicolas Palix. // Copyright: (C) 2012 Nicolas Palix.
// Copyright: (C) 2012 Julia Lawall, INRIA/LIP6. // Copyright: (C) 2012 Julia Lawall, INRIA/LIP6.
// Copyright: (C) 2012 Gilles Muller, INRIA/LiP6. // Copyright: (C) 2012 Gilles Muller, INRIA/LiP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Comments: // Comments:
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
// Copyright: (C) 2010 Nicolas Palix, DIKU. // Copyright: (C) 2010 Nicolas Palix, DIKU.
// Copyright: (C) 2010 Julia Lawall, DIKU. // Copyright: (C) 2010 Julia Lawall, DIKU.
// Copyright: (C) 2010 Gilles Muller, INRIA/LiP6. // Copyright: (C) 2010 Gilles Muller, INRIA/LiP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Comments: // Comments:
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
// Copyright: (C) 2010-2012 Nicolas Palix. // Copyright: (C) 2010-2012 Nicolas Palix.
// Copyright: (C) 2010-2012 Julia Lawall, INRIA/LIP6. // Copyright: (C) 2010-2012 Julia Lawall, INRIA/LIP6.
// Copyright: (C) 2010-2012 Gilles Muller, INRIA/LiP6. // Copyright: (C) 2010-2012 Gilles Muller, INRIA/LiP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Comments: // Comments:
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
// Copyright: (C) 2010-2012 Nicolas Palix. // Copyright: (C) 2010-2012 Nicolas Palix.
// Copyright: (C) 2010-2012 Julia Lawall, INRIA/LIP6. // Copyright: (C) 2010-2012 Julia Lawall, INRIA/LIP6.
// Copyright: (C) 2010-2012 Gilles Muller, INRIA/LiP6. // Copyright: (C) 2010-2012 Gilles Muller, INRIA/LiP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Comments: // Comments:
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
......
// SPDX-License-Identifier: GPL-2.0
/// Return statements in functions returning bool should use
/// true/false instead of 1/0.
//
// Confidence: High
// Options: --no-includes --include-headers
virtual patch
virtual report
virtual context
@r1 depends on patch@
identifier fn;
typedef bool;
symbol false;
symbol true;
@@
bool fn ( ... )
{
<...
return
(
- 0
+ false
|
- 1
+ true
)
;
...>
}
@r2 depends on report || context@
identifier fn;
position p;
@@
bool fn ( ... )
{
<...
return
(
* 0@p
|
* 1@p
)
;
...>
}
@script:python depends on report@
p << r2.p;
fn << r2.fn;
@@
msg = "WARNING: return of 0/1 in function '%s' with return type bool" % fn
coccilib.report.print_report(p[0], msg)
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
// Confidence: High // Confidence: High
// Copyright: (C) 2012 Julia Lawall, INRIA/LIP6. // Copyright: (C) 2012 Julia Lawall, INRIA/LIP6.
// Copyright: (C) 2012 Gilles Muller, INRIA/LiP6. // Copyright: (C) 2012 Gilles Muller, INRIA/LiP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Comments: // Comments:
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
// Copyright: (C) 2010-2012 Nicolas Palix. // Copyright: (C) 2010-2012 Nicolas Palix.
// Copyright: (C) 2010-2012 Julia Lawall, INRIA/LIP6. // Copyright: (C) 2010-2012 Julia Lawall, INRIA/LIP6.
// Copyright: (C) 2010-2012 Gilles Muller, INRIA/LiP6. // Copyright: (C) 2010-2012 Gilles Muller, INRIA/LiP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Comments: requires at least Coccinelle 0.2.4, lex or parse error otherwise // Comments: requires at least Coccinelle 0.2.4, lex or parse error otherwise
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
......
...@@ -12,7 +12,7 @@ ...@@ -12,7 +12,7 @@
// Copyright: (C) 2010 Nicolas Palix, DIKU. // Copyright: (C) 2010 Nicolas Palix, DIKU.
// Copyright: (C) 2010 Julia Lawall, DIKU. // Copyright: (C) 2010 Julia Lawall, DIKU.
// Copyright: (C) 2010 Gilles Muller, INRIA/LiP6. // Copyright: (C) 2010 Gilles Muller, INRIA/LiP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Comments: // Comments:
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
/// ///
// Confidence: Very High // Confidence: Very High
// Copyright: (C) 2020 Intel Corporation // Copyright: (C) 2020 Intel Corporation
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
virtual context virtual context
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
// Confidence: High // Confidence: High
// Copyright: (C) 2012 Julia Lawall, INRIA/LIP6. // Copyright: (C) 2012 Julia Lawall, INRIA/LIP6.
// Copyright: (C) 2012 Gilles Muller, INRIA/LiP6. // Copyright: (C) 2012 Gilles Muller, INRIA/LiP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Comments: // Comments:
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
// Confidence: Moderate // Confidence: Moderate
// Copyright: (C) 2013 Julia Lawall, INRIA/LIP6. // Copyright: (C) 2013 Julia Lawall, INRIA/LIP6.
// Copyright: (C) 2013 Gilles Muller, INRIA/LIP6. // Copyright: (C) 2013 Gilles Muller, INRIA/LIP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Comments: // Comments:
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
/// ///
// Confidence: Moderate // Confidence: Moderate
// Copyright: (C) 2012 Peter Senna Tschudin, INRIA/LIP6. // Copyright: (C) 2012 Peter Senna Tschudin, INRIA/LIP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Comments: Comments on code can be deleted if near code that is removed. // Comments: Comments on code can be deleted if near code that is removed.
// "when strict" can be removed to get more hits, but adds false // "when strict" can be removed to get more hits, but adds false
// positives // positives
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
/// ///
// Confidence: Moderate // Confidence: Moderate
// Copyright: (C) 2012 Peter Senna Tschudin, INRIA/LIP6. // Copyright: (C) 2012 Peter Senna Tschudin, INRIA/LIP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Comments: Some false positives on empty default cases in switch statements. // Comments: Some false positives on empty default cases in switch statements.
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
// Confidence: High // Confidence: High
// Copyright: (C) 2012 Julia Lawall, INRIA/LIP6. // Copyright: (C) 2012 Julia Lawall, INRIA/LIP6.
// Copyright: (C) 2012 Gilles Muller, INRIA/LiP6. // Copyright: (C) 2012 Gilles Muller, INRIA/LiP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Comments: // Comments:
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
...@@ -14,12 +14,10 @@ virtual context ...@@ -14,12 +14,10 @@ virtual context
@r@ @r@
expression x; expression x;
statement S1,S2;
position p; position p;
@@ @@
*if@p (&x) *\(&x@p == NULL \| &x@p != NULL\)
S1 else S2
@script:python depends on org@ @script:python depends on org@
p << r.p; p << r.p;
......
...@@ -4,7 +4,7 @@ ...@@ -4,7 +4,7 @@
// Confidence: High // Confidence: High
// Copyright: (C) 2012 Julia Lawall, INRIA/LIP6. // Copyright: (C) 2012 Julia Lawall, INRIA/LIP6.
// Copyright: (C) 2012 Gilles Muller, INRIA/LiP6. // Copyright: (C) 2012 Gilles Muller, INRIA/LiP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Comments: // Comments:
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
......
...@@ -10,7 +10,7 @@ ...@@ -10,7 +10,7 @@
// Confidence: High // Confidence: High
// Copyright: (C) 2012 Julia Lawall, INRIA/LIP6. // Copyright: (C) 2012 Julia Lawall, INRIA/LIP6.
// Copyright: (C) 2012 Gilles Muller, INRIA/LiP6. // Copyright: (C) 2012 Gilles Muller, INRIA/LiP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Requires: 1.0.0 // Requires: 1.0.0
// Options: // Options:
......
...@@ -7,7 +7,7 @@ ...@@ -7,7 +7,7 @@
// Copyright: (C) 2010 Nicolas Palix, DIKU. // Copyright: (C) 2010 Nicolas Palix, DIKU.
// Copyright: (C) 2010 Julia Lawall, DIKU. // Copyright: (C) 2010 Julia Lawall, DIKU.
// Copyright: (C) 2010 Gilles Muller, INRIA/LiP6. // Copyright: (C) 2010 Gilles Muller, INRIA/LiP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Comments: -I ... -all_includes can give more complete results // Comments: -I ... -all_includes can give more complete results
// Options: // Options:
......
...@@ -5,7 +5,7 @@ ...@@ -5,7 +5,7 @@
// Copyright: (C) 2010-2012 Nicolas Palix. // Copyright: (C) 2010-2012 Nicolas Palix.
// Copyright: (C) 2010-2012 Julia Lawall, INRIA/LIP6. // Copyright: (C) 2010-2012 Julia Lawall, INRIA/LIP6.
// Copyright: (C) 2010-2012 Gilles Muller, INRIA/LiP6. // Copyright: (C) 2010-2012 Gilles Muller, INRIA/LiP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Comments: // Comments:
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
// Copyright: (C) 2010 Nicolas Palix, DIKU. // Copyright: (C) 2010 Nicolas Palix, DIKU.
// Copyright: (C) 2010 Julia Lawall, DIKU. // Copyright: (C) 2010 Julia Lawall, DIKU.
// Copyright: (C) 2010 Gilles Muller, INRIA/LiP6. // Copyright: (C) 2010 Gilles Muller, INRIA/LiP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Comments: // Comments:
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
......
...@@ -9,7 +9,7 @@ ...@@ -9,7 +9,7 @@
// Copyright: (C) 2010 Nicolas Palix, DIKU. // Copyright: (C) 2010 Nicolas Palix, DIKU.
// Copyright: (C) 2010 Julia Lawall, DIKU. // Copyright: (C) 2010 Julia Lawall, DIKU.
// Copyright: (C) 2010 Gilles Muller, INRIA/LiP6. // Copyright: (C) 2010 Gilles Muller, INRIA/LiP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Comments: // Comments:
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
......
...@@ -8,7 +8,7 @@ ...@@ -8,7 +8,7 @@
// Copyright: (C) 2010 Nicolas Palix, DIKU. // Copyright: (C) 2010 Nicolas Palix, DIKU.
// Copyright: (C) 2010 Julia Lawall, DIKU. // Copyright: (C) 2010 Julia Lawall, DIKU.
// Copyright: (C) 2010 Gilles Muller, INRIA/LiP6. // Copyright: (C) 2010 Gilles Muller, INRIA/LiP6.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Comments: // Comments:
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
......
...@@ -6,7 +6,7 @@ ...@@ -6,7 +6,7 @@
// Confidence: High // Confidence: High
// Copyright: (C) 2012, 2015 Julia Lawall, INRIA. // Copyright: (C) 2012, 2015 Julia Lawall, INRIA.
// Copyright: (C) 2012, 2015 Gilles Muller, INRIA. // Copyright: (C) 2012, 2015 Gilles Muller, INRIA.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Options: --no-includes --include-headers // Options: --no-includes --include-headers
virtual patch virtual patch
......
...@@ -13,7 +13,7 @@ ...@@ -13,7 +13,7 @@
/// ///
// Confidence: Average // Confidence: Average
// Copyright: (C) 2015 Andrzej Hajda, Samsung Electronics Co., Ltd. // Copyright: (C) 2015 Andrzej Hajda, Samsung Electronics Co., Ltd.
// URL: http://coccinelle.lip6.fr/ // URL: https://coccinelle.gitlabpages.inria.fr/website
// Options: --all-includes // Options: --all-includes
virtual context virtual context
......
Markdown is supported
0%
or
You are about to add 0 people to the discussion. Proceed with caution.
Finish editing this message first!
Please register or to comment