Avoid a compilation error of gnulib's test-iconv-h-c++.cc on mingw.
diff --git a/ChangeLog b/ChangeLog
index dfe618a..e6df867 100644
--- a/ChangeLog
+++ b/ChangeLog
@@ -1,3 +1,9 @@
+2010-04-06  Bruno Haible  <bruno@clisp.org>
+
+	Avoid a compilation error of gnulib's test-iconv-h-c++.cc on mingw.
+	* include/iconv.h.in: Restrict the extern "C" { ... } scope so that it
+	doesn't contains #include directives.
+
 2010-03-30  Bruno Haible  <bruno@clisp.org>
 
 	* README.woe32: Update for Cygwin 1.7.x.
diff --git a/include/iconv.h.in b/include/iconv.h.in
index f7b63c3..0155ec8 100644
--- a/include/iconv.h.in
+++ b/include/iconv.h.in
@@ -1,4 +1,4 @@
-/* Copyright (C) 1999-2003, 2005-2006, 2008-2009 Free Software Foundation, Inc.
+/* Copyright (C) 1999-2003, 2005-2006, 2008-2010 Free Software Foundation, Inc.
    This file is part of the GNU LIBICONV Library.
 
    The GNU LIBICONV Library is free software; you can redistribute it
@@ -89,6 +89,11 @@
 extern int iconv_close (iconv_t cd);
 
 
+#ifdef __cplusplus
+}
+#endif
+
+
 #ifndef LIBICONV_PLUG
 
 /* Nonstandard extensions. */
@@ -106,6 +111,10 @@
 #include <wchar.h>
 #endif
 
+#ifdef __cplusplus
+extern "C" {
+#endif
+
 /* A type that holds all memory needed by a conversion descriptor.
    A pointer to such an object can be used as an iconv_t. */
 typedef struct {
@@ -223,12 +232,11 @@
 extern void libiconv_set_relocation_prefix (const char *orig_prefix,
                                             const char *curr_prefix);
 
-#endif
-
-
 #ifdef __cplusplus
 }
 #endif
 
+#endif
+
 
 #endif /* _LIBICONV_H */