(svn r3266) -Codechange: added comments for why the revert of r3625 inside the code.
authortruelight
Tue, 06 Dec 2005 17:12:19 +0000
changeset 2721 b141131f58b1
parent 2720 d4a3224c262f
child 2722 d2ab10ffc5e7
(svn r3266) -Codechange: added comments for why the revert of r3625 inside the code.
Also, I forgot to tnx GraphiteNL for his help with this problem. Tnx GraphiteNL :)
ai/ai_event.h
--- a/ai/ai_event.h	Tue Dec 06 17:05:14 2005 +0000
+++ b/ai/ai_event.h	Tue Dec 06 17:12:19 2005 +0000
@@ -7,12 +7,20 @@
 #	include "ai.h"
 
 /* This is how we call events (with safety-check) to GPMI */
+/* XXX -- This macro works only for some compilers (all GCCs for example).
+ *   Some compilers on the other hand (MSCV!!) doesn't support variadic macros
+ *   causing this to fail. There is no known solution. If you know any, please
+ *   tell us ASAP! */
 #	define ai_event(player, event, ...) \
 		if ((player) < MAX_PLAYERS && _ai_player[(player)].module != NULL) \
 			gpmi_event(_ai_player[(player)].module, (event), ##__VA_ARGS__)
 
 #else /* GPMI */
 
+/* XXX -- Some compilers (like MSVC :() doesn't support variadic macros,
+ *   which means we have to go to a lot of trouble to get the ai_event() ignored
+ *   in case GPMI is disabled... KILL KILL KILL!
+ */
 #	ifdef DEF_EVENTS
 	void CDECL empty_function(PlayerID player, int event, ...) {}
 #	else