-Wflex-array-member-not-at-end was introduced in GCC-14, and we are
getting ready to enable it, globally.
Move the conflicting declaration to the end of the corresponding
structure. Notice that struct smb2_file_all_info is a flexible
structure, this is a structure that contains a flexible-array
member.
Fix the following warnings:
12 fs/smb/client/cached_dir.h:51:35: warning: structure containing a flexible array member is not at the end of another structure [-Wflex-array-member-not-at-end]
Signed-off-by: Gustavo A. R. Silva <gustavoars@kernel.org>
---
fs/smb/client/cached_dir.h | 4 +++-
1 file changed, 3 insertions(+), 1 deletion(-)
diff --git a/fs/smb/client/cached_dir.h b/fs/smb/client/cached_dir.h
index 1e383db7c337..bc70197bbfbd 100644
--- a/fs/smb/client/cached_dir.h
+++ b/fs/smb/client/cached_dir.h
@@ -48,8 +48,10 @@ struct cached_fid {
struct dentry *dentry;
struct work_struct put_work;
struct work_struct close_work;
- struct smb2_file_all_info file_all_info;
struct cached_dirents dirents;
+
+ /* Must be last as it ends in a flexible-array member. */
+ struct smb2_file_all_info file_all_info;
};
/* default MAX_CACHED_FIDS is 16 */
--
2.43.0