That's illegal, macros can't be overloaded.
drivers/filesystems/ext2/inc/ext2fsd.h:64:0: warning: "try_return" redefined
[enabled by default]
You could try
#define try_return(...) { __VA_ARGS__; goto try_exit; }
If that doesn't do it, it might simply need a separate macro
(I'm not sure to what extent this is third party code though)
(also if these were the last instances of that -- and I think so --, we
might want to make 4003 an error)
On 2014-03-24 23:20, hbelusca(a)svn.reactos.org wrote:
Author: hbelusca
Date: Mon Mar 24 22:20:52 2014
New Revision: 62562
URL:
http://svn.reactos.org/svn/reactos?rev=62562&view=rev
Log:
[EXT2]
try_return() == try_return(S) with nothing in S . The code sometimes use it.
Shut up MSVC warning C4003: not enough actual parameters for macro 'try_return'.
Modified:
trunk/reactos/drivers/filesystems/ext2/inc/ext2fsd.h
Modified: trunk/reactos/drivers/filesystems/ext2/inc/ext2fsd.h
URL:
http://svn.reactos.org/svn/reactos/trunk/reactos/drivers/filesystems/ext2/i…
==============================================================================
--- trunk/reactos/drivers/filesystems/ext2/inc/ext2fsd.h [iso-8859-1] (original)
+++ trunk/reactos/drivers/filesystems/ext2/inc/ext2fsd.h [iso-8859-1] Mon Mar 24 22:20:52
2014
@@ -60,6 +60,7 @@
extern Ext2Data Ext2GlobalData;
// try-finally simulation
+#define try_return() { goto try_exit; }
#define try_return(S) { S; goto try_exit; }
#define try_return1(S) { S; goto try_exit1; }
#define try_return2(S) { S; goto try_exit2; }