diff --git a/menu/m_items.c b/menu/m_items.c
index 3e8f70b..5397685 100644
--- a/menu/m_items.c
+++ b/menu/m_items.c
@@ -1,5 +1,5 @@
 /****************************************************************************
- * Copyright (c) 1998-2004,2005 Free Software Foundation, Inc.              *
+ * Copyright (c) 1998-2005,2010 Free Software Foundation, Inc.              *
  *                                                                          *
  * Permission is hereby granted, free of charge, to any person obtaining a  *
  * copy of this software and associated documentation files (the            *
@@ -37,7 +37,7 @@
 
 #include "menu.priv.h"
 
-MODULE_ID("$Id: m_items.c,v 1.16 2005/01/16 01:02:23 tom Exp $")
+MODULE_ID("$Id: m_items.c,v 1.17 2010/01/23 21:20:10 tom Exp $")
 
 /*---------------------------------------------------------------------------
 |   Facility      :  libnmenu  
@@ -55,7 +55,7 @@
 NCURSES_EXPORT(int)
 set_menu_items(MENU * menu, ITEM ** items)
 {
-  T((T_CALLED("set_menu_items(%p,%p)"), menu, items));
+  T((T_CALLED("set_menu_items(%p,%p)"), (void *)menu, (void *)items));
 
   if (!menu || (items && !(*items)))
     RETURN(E_BAD_ARGUMENT);
@@ -87,7 +87,7 @@
 NCURSES_EXPORT(ITEM **)
 menu_items(const MENU * menu)
 {
-  T((T_CALLED("menu_items(%p)"), menu));
+  T((T_CALLED("menu_items(%p)"), (const void *)menu));
   returnItemPtr(menu ? menu->items : (ITEM **) 0);
 }
 
@@ -103,7 +103,7 @@
 NCURSES_EXPORT(int)
 item_count(const MENU * menu)
 {
-  T((T_CALLED("item_count(%p)"), menu));
+  T((T_CALLED("item_count(%p)"), (const void *)menu));
   returnCode(menu ? menu->nitems : -1);
 }
 
