summaryrefslogtreecommitdiff
path: root/glib/src/spawn.ccg
diff options
context:
space:
mode:
authorMurray Cumming <murrayc@localhost.localdomain>2005-01-21 19:26:04 +0000
committerMurray Cumming <murrayc@src.gnome.org>2005-01-21 19:26:04 +0000
commit17ddd797c53c205fef4b155135caff6899a183f8 (patch)
tree2fcd531537700efdd8fc0759917ab3b6b0c81fdf /glib/src/spawn.ccg
parenta8e848b1f08e71f376ddfce775794c7056609f23 (diff)
downloadglibmm-17ddd797c53c205fef4b155135caff6899a183f8.tar.gz
Added new compiler tests. 1. To see whether it allows use of non extern C
2005-01-21 Murray Cumming <murrayc@localhost.localdomain> * configure.in, scripts/cxx.m4, glibmm/glibmmconfig.h.in: Added new compiler tests. 1. To see whether it allows use of non extern C functions as extern C callbacks, because the Tru64 compiler does not allow this, when using strict_ansi. We do not actually use this yet. 2. To see whether it allows us to define a template that uses an undefined type, even if we do not use it before defining the type. Tru64 does not allow this. That's probably correct. * glib/glibmm/container.h: #ifdef out a dynamic_cast that Tru64 does not allow, and which I can not think of a better place to put. See the comment in the code. * glib/glibmm/containerhandler_helpers.h: When the compiler does not alllow the GObject and GtkObject (dynamic_cast of) specializations here, then put them in glib/glibmm/object.h and gtkmm/gtk/src/object.hg instead.- needed by Tru64 compiler. * glib/glibmm/value.h, value_custom.[h|cc]: Conditionally moved the RefPtr Value specialization into object.h, as above. * glib/src/ optiongroup.ccg, spawn.ccg, thread.ccg: Make C callacks separate extern C. * glib/src/optiongroup.ccg: Do not use the StringArrayHandle, because the Tru64 compiler has problems with it - see comments in code. * glib/src/optionentry.hg: Remove the include of value.h, because it is not used and it causes a Tru64 compile error in optioncontext.cc because its templates are included before the types that the template uses. 2005-01-19 Murray Cumming <murrayc@murrayc.com> * configure.in, scripts/cxx.m4, glibmm/glibmmconfig.h.in: Added a compiler test, because the IRIX MipsPro compiler does not allow the inline initialization of ustring::npos. * glib/glibmm/ustring.[h|cc]: When the compiler does not support the inline initialization of npos, initialize it in the .cc file. Declare partial specializations of the SequenceString inner class inside the class - needed by IRIX MipsPro compiler.
Diffstat (limited to 'glib/src/spawn.ccg')
-rw-r--r--glib/src/spawn.ccg7
1 files changed, 6 insertions, 1 deletions
diff --git a/glib/src/spawn.ccg b/glib/src/spawn.ccg
index a9517933..98035930 100644
--- a/glib/src/spawn.ccg
+++ b/glib/src/spawn.ccg
@@ -26,6 +26,9 @@
namespace
{
+extern "C"
+{
+
/* Helper callback to invoke the actual sigc++ slot.
* We don't need to worry about (un)referencing, since the
* child process gets its own copy of the parent's memory anyway.
@@ -53,7 +56,9 @@ void copy_output_buf(std::string* dest, const char* buf)
}
}
-}
+} //extern "C"
+
+} //anonymous namespace
namespace Glib