// SPDX-License-Identifier: GPL-2.0
/// Make sure (of/i2c/platform/spi)_device_id tables are NULL terminated
//
// Keywords: of_table i2c_table platform_table
// Confidence: Medium
// Options: --include-headers

virtual patch
virtual context
virtual org
virtual report

@depends on context@
identifier var, arr;
expression E;
@@
(
struct \(of_device_id \| i2c_device_id \| platform_device_id \| spi_device_id\) arr[] = {
	...,
	{
	.var = E,
*	}
};
|
struct \(of_device_id \| i2c_device_id \| platform_device_id \| spi_device_id\) arr[] = {
	...,
*	{ ..., E, ... },
};
)

@depends on patch@
identifier var, arr;
expression E;
@@
(
struct \(of_device_id \| i2c_device_id \| platform_device_id \| spi_device_id\) arr[] = {
	...,
	{
	.var = E,
-	}
+	},
+	{ }
};
|
struct \(of_device_id \| i2c_device_id \| platform_device_id \| spi_device_id\) arr[] = {
	...,
	{ ..., E, ... },
+	{ },
};
)

@r depends on org || report@
position p1;
identifier var, arr;
expression E;
@@
(
struct \(of_device_id \| i2c_device_id \| platform_device_id \| spi_device_id\) arr[] = {
	...,
	{
	.var = E,
	}
	@p1
};
|
struct \(of_device_id \| i2c_device_id \| platform_device_id \| spi_device_id\) arr[] = {
	...,
	{ ..., E, ... }
	@p1
};
)

@script:python depends on org@
p1 << r.p1;
arr << r.arr;
@@

cocci.print_main(arr,p1)

@script:python depends on report@
p1 << r.p1;
arr << r.arr;
@@

msg = "%s is not NULL terminated at line %s" % (arr, p1[0].line)
coccilib.report.print_report(p1[0],msg)
