package/uqmi: fix compile error (gcc false error reporting)
Add upstream suggested patch ([1]) to avoid gcc false error reporting. Fixes: - http://autobuild.buildroot.net/results/ce9e2074bb8486d1ee25232b985d47475faefd63 dev.c:217:23: error: storing the address of local variable 'complete' in '*req.complete' [-Werror=dangling-pointer=] 217 | req->complete = &complete; | ~~~~~~~~~~~~~~^~~~~~~~~~~ [1] http://lists.openwrt.org/pipermail/openwrt-devel/2023-March/040633.html Signed-off-by: Peter Seiderer <ps.report@gmx.net> Signed-off-by: Peter Korsgaard <peter@korsgaard.com>
This commit is contained in:
parent
cde69c668d
commit
b3cf07d8db
@ -0,0 +1,54 @@
|
||||
From 4c2eb926efb4de24af5a3b1e8c18195198827491 Mon Sep 17 00:00:00 2001
|
||||
From: Peter Seiderer <ps.report@gmx.net>
|
||||
Date: Sun, 5 Mar 2023 22:08:13 +0100
|
||||
Subject: [PATCH] uqmi: avoid gcc false error reporting (storing the address of
|
||||
local variable 'complete' in '*req.complete')
|
||||
|
||||
Avoid gcc false error reporting (req->complete is later reset to NULL
|
||||
in case of use of local complete):
|
||||
|
||||
dev.c:217:23: error: storing the address of local variable 'complete' in '*req.complete' [-Werror=dangling-pointer=]
|
||||
217 | req->complete = &complete;
|
||||
| ~~~~~~~~~~~~~~^~~~~~~~~~~
|
||||
|
||||
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
|
||||
|
||||
[Upstream: http://lists.openwrt.org/pipermail/openwrt-devel/2023-March/040633.html]
|
||||
Signed-off-by: Peter Seiderer <ps.report@gmx.net>
|
||||
---
|
||||
dev.c | 12 ++++++++++++
|
||||
1 file changed, 12 insertions(+)
|
||||
|
||||
diff --git a/dev.c b/dev.c
|
||||
index bd10207..b8ac273 100644
|
||||
--- a/dev.c
|
||||
+++ b/dev.c
|
||||
@@ -203,6 +203,15 @@ void qmi_request_cancel(struct qmi_dev *qmi, struct qmi_request *req)
|
||||
__qmi_request_complete(qmi, req, NULL);
|
||||
}
|
||||
|
||||
+/* avoid gcc false error reporting:
|
||||
+ * dev.c:217:23: error: storing the address of local variable ‘complete’ in ‘*req.complete’ [-Werror=dangling-pointer=]
|
||||
+ * 217 | req->complete = &complete;
|
||||
+ * | ~~~~~~~~~~~~~~^~~~~~~~~~~
|
||||
+ */
|
||||
+#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)
|
||||
+#pragma GCC diagnostic push
|
||||
+#pragma GCC diagnostic ignored "-Wdangling-pointer"
|
||||
+#endif
|
||||
int qmi_request_wait(struct qmi_dev *qmi, struct qmi_request *req)
|
||||
{
|
||||
bool complete = false;
|
||||
@@ -231,6 +240,9 @@ int qmi_request_wait(struct qmi_dev *qmi, struct qmi_request *req)
|
||||
|
||||
return req->ret;
|
||||
}
|
||||
+#if __GNUC__ > 4 || (__GNUC__ == 4 && __GNUC_MINOR__ >= 6)
|
||||
+#pragma GCC diagnostic pop
|
||||
+#endif
|
||||
|
||||
struct qmi_connect_request {
|
||||
struct qmi_request req;
|
||||
--
|
||||
2.39.2
|
||||
|
Loading…
Reference in New Issue
Block a user