diff --git a/libcpp/ChangeLog b/libcpp/ChangeLog
index 7fcfa5649bc8890a4f099120d61d51bd4c2269fc..9da83176bd4b18c2b60c3d37d8e3225fca18f268 100644
--- a/libcpp/ChangeLog
+++ b/libcpp/ChangeLog
@@ -1,3 +1,8 @@
+2009-07-27  Douglas B Rupp  <rupp@gnat.com>
+
+	* include/cpplib.h (INO_T_CPP): New macro.
+	(struct cpp_dir): Use it.
+
 2009-07-20  Jerry Quinn  <jlquinn@optonline.net>
 
 	PR regression/40800
diff --git a/libcpp/include/cpplib.h b/libcpp/include/cpplib.h
index 71c7ef26351cef15816b6837a803cac23218779c..e873ccfeea55c73a4f6aaa545bc54441a8d9dd0e 100644
--- a/libcpp/include/cpplib.h
+++ b/libcpp/include/cpplib.h
@@ -505,6 +505,12 @@ struct cpp_callbacks
   void (*before_define) (cpp_reader *);
 };
 
+#ifdef VMS
+#define INO_T_CPP ino_t ino[3]
+#else
+#define INO_T_CPP ino_t ino
+#endif
+
 /* Chain of directories to look for include files in.  */
 struct cpp_dir
 {
@@ -538,7 +544,7 @@ struct cpp_dir
 
   /* The C front end uses these to recognize duplicated
      directories in the search path.  */
-  ino_t ino;
+  INO_T_CPP;
   dev_t dev;
 };