https://git.reactos.org/?p=reactos.git;a=commitdiff;h=b3172ae098ba64e16245d…
commit b3172ae098ba64e16245d0517aa454417caa9336
Author: Amine Khaldi <amine.khaldi(a)reactos.org>
AuthorDate: Sun Nov 19 15:42:03 2017 +0100
[EXT2FS] For some reason we get error: conflicting types for 'do_split' when
compiling with clang-cl so work around this with FIXMEs. CORE-11799 (#94)
---
drivers/filesystems/ext2/inc/ext2fs.h | 3 ++-
drivers/filesystems/ext2/src/ext3/htree.c | 5 +++++
2 files changed, 7 insertions(+), 1 deletion(-)
diff --git a/drivers/filesystems/ext2/inc/ext2fs.h
b/drivers/filesystems/ext2/inc/ext2fs.h
index 525a1d1bc9..10ec2eab5f 100644
--- a/drivers/filesystems/ext2/inc/ext2fs.h
+++ b/drivers/filesystems/ext2/inc/ext2fs.h
@@ -2495,7 +2495,8 @@ struct buffer_head *ext3_bread(struct ext2_icb *icb, struct inode
*inode,
int add_dirent_to_buf(struct ext2_icb *icb, struct dentry *dentry,
struct inode *inode, struct ext3_dir_entry_2 *de,
struct buffer_head *bh);
-#if !defined(__REACTOS__) || defined(_MSC_VER)
+#if !defined(__REACTOS__) || (defined(_MSC_VER) && !defined(__clang__))
+/* FIXME: Inspect the clang-cl code path */
struct ext3_dir_entry_2 *
do_split(struct ext2_icb *icb, struct inode *dir,
struct buffer_head **bh,struct dx_frame *frame,
diff --git a/drivers/filesystems/ext2/src/ext3/htree.c
b/drivers/filesystems/ext2/src/ext3/htree.c
index 8d5bd4dab4..edf59350bc 100644
--- a/drivers/filesystems/ext2/src/ext3/htree.c
+++ b/drivers/filesystems/ext2/src/ext3/htree.c
@@ -1596,6 +1596,11 @@ int ext3_release_dir (struct inode * inode, struct file * filp)
return 0;
}
+/* FIXME: Inspect the clang-cl code path */
+#if defined(__REACTOS__) && defined(__clang__)
+struct ext3_dir_entry_2* do_split(struct ext2_icb *icb, struct inode *dir, struct
buffer_head **bh,struct dx_frame *frame, struct dx_hash_info *hinfo, int *error);
+#endif
+
/*
* Returns 0 for success, or a negative error value
*/