<html><head><meta name="color-scheme" content="light dark"></head><body><pre style="word-wrap: break-word; white-space: pre-wrap;">Index: beast-0.7.1/bse/tests/resamplehandle.cc
===================================================================
--- beast-0.7.1.orig/bse/tests/resamplehandle.cc	2006-11-29 01:05:01.000000000 +0000
+++ beast-0.7.1/bse/tests/resamplehandle.cc	2008-03-24 14:10:47.000000000 +0000
@@ -24,6 +24,7 @@
 #include &lt;bse/gsldatautils.h&gt;
 #include &lt;bse/bseblockutils.hh&gt;
 #include &lt;vector&gt;
+#include &lt;cstdlib&gt;
 
 using std::vector;
 using std::max;
Index: beast-0.7.1/bse/tests/firhandle.cc
===================================================================
--- beast-0.7.1.orig/bse/tests/firhandle.cc	2006-12-10 16:55:16.000000000 +0000
+++ beast-0.7.1/bse/tests/firhandle.cc	2008-03-24 14:10:47.000000000 +0000
@@ -26,6 +26,7 @@
 #include &lt;math.h&gt;
 #include &lt;complex&gt;
 #include &lt;vector&gt;
+#include &lt;cstdlib&gt;
 
 using std::vector;
 using std::min;
Index: beast-0.7.1/bse/tests/filtertest.cc
===================================================================
--- beast-0.7.1.orig/bse/tests/filtertest.cc	2006-12-11 00:19:16.000000000 +0000
+++ beast-0.7.1/bse/tests/filtertest.cc	2008-03-24 14:10:47.000000000 +0000
@@ -26,6 +26,7 @@
 #include "topconfig.h"
 #include &lt;math.h&gt;
 #include &lt;complex&gt;
+#include &lt;cstdlib&gt;
 
 typedef std::complex&lt;double&gt; Complex;
 using namespace Birnet;
Index: beast-0.7.1/bse/bseresamplerimpl.hh
===================================================================
--- beast-0.7.1.orig/bse/bseresamplerimpl.hh	2006-11-25 16:04:33.000000000 +0000
+++ beast-0.7.1/bse/bseresamplerimpl.hh	2008-03-24 14:10:47.000000000 +0000
@@ -23,6 +23,8 @@
 #include &lt;bse/bseresampler.hh&gt;
 #include &lt;birnet/birnet.hh&gt;
 #include &lt;math.h&gt;
+#include &lt;cstring&gt;
+#include &lt;cstdlib&gt;
 #ifdef __SSE__
 #include &lt;xmmintrin.h&gt;
 #endif
Index: beast-0.7.1/bse/bseprocidl.cc
===================================================================
--- beast-0.7.1.orig/bse/bseprocidl.cc	2006-11-25 16:04:31.000000000 +0000
+++ beast-0.7.1/bse/bseprocidl.cc	2008-03-24 14:10:47.000000000 +0000
@@ -24,6 +24,7 @@
 #include &lt;stdio.h&gt;
 #include &lt;string&gt;
 #include &lt;set&gt;
+#include &lt;cstring&gt;
 
 std::set&lt;std::string&gt; needTypes;
 std::set&lt;std::string&gt; needClasses;
Index: beast-0.7.1/bse/bsecxxplugin.hh
===================================================================
--- beast-0.7.1.orig/bse/bsecxxplugin.hh	2006-11-27 00:34:30.000000000 +0000
+++ beast-0.7.1/bse/bsecxxplugin.hh	2008-03-24 14:32:56.000000000 +0000
@@ -18,6 +18,14 @@
 #ifndef __BSE_CXX_PLUGIN_H__
 #define __BSE_CXX_PLUGIN_H__
 
+#define static_template static
+#if defined __GNUC__
+#  if __GNUC__ &gt; 4 || (__GNUC__ == 4 &amp;&amp; __GNUC_MINOR__ &gt;= 3)
+#    undef static_template
+#    define static_template
+#  endif
+#endif
+
 #include &lt;bse/bsecxxmodule.hh&gt;
 #include &lt;bse/bseexports.h&gt;
 #include &lt;bse/bseparam.h&gt;
@@ -56,7 +64,7 @@
 #define BSE_CXX_REGISTER_STATIC_HOOK(HookType)  BSE_CXX_REGISTER_HOOK_NODE (HookType, 1)
 #define BSE_CXX_REGISTER_HOOK_NODE(HookType, __static)                  \
   template&lt;class E&gt; static BseExportNode* bse_export_node ();           \
-  template&lt;&gt; static BseExportNode*                                      \
+  template&lt;&gt; static_template BseExportNode*                             \
   bse_export_node&lt;HookType&gt; ()                                          \
   {                                                                     \
     static BseExportNodeHook hnode = {                                  \
@@ -91,7 +99,7 @@
   (::NameSpace::bse_type_keeper__3##EnumType.get_type ())
 #define BSE_CXX_DECLARE_ENUM(EnumType,EnumName,N,ICode)                 \
   template&lt;class E&gt; static BseExportNode* bse_export_node ();           \
-  template&lt;&gt; static BseExportNode*                                      \
+  template&lt;&gt; static_template BseExportNode*                             \
   bse_export_node&lt;EnumType&gt; ()                                          \
   {                                                                     \
     static BseExportNodeEnum enode = {                                  \
@@ -145,7 +153,7 @@
   (::NameSpace::bse_type_keeper__1##RecordType.get_type ())
 #define BSE_CXX_DECLARE_RECORD(RecordType)                              \
   template&lt;class E&gt; static BseExportNode* bse_export_node ();           \
-  template&lt;&gt; static BseExportNode*                                      \
+  template&lt;&gt; static_template BseExportNode*                             \
   bse_export_node&lt;RecordType&gt; ()                                        \
   {                                                                     \
     static BseExportNodeBoxed bnode = {                                 \
@@ -181,7 +189,7 @@
   (::NameSpace::bse_type_keeper__2##SequenceType.get_type ())
 #define BSE_CXX_DECLARE_SEQUENCE(SequenceType)                                  \
   template&lt;class E&gt; static BseExportNode* bse_export_node ();                   \
-  template&lt;&gt; static BseExportNode*                                              \
+  template&lt;&gt; static_template BseExportNode*                                     \
   bse_export_node&lt;SequenceType&gt; ()                                              \
   {                                                                             \
     static BseExportNodeBoxed bnode = {                                         \
@@ -219,7 +227,7 @@
   extern ::Bse::ExportTypeKeeper bse_type_keeper__9##ProcType;
 #define BSE_CXX_REGISTER_PROCEDURE(ProcType)                                    \
   template&lt;class C&gt; static ::BseExportNode* bse_export_node ();                 \
-  template&lt;&gt; static ::BseExportNode*                                            \
+  template&lt;&gt; static_template ::BseExportNode*                                   \
   bse_export_node&lt;Procedure::ProcType&gt; ()                                       \
   {                                                                             \
     static ::BseExportNodeProc pnode = {                                        \
@@ -259,7 +267,7 @@
 #define BSE_CXX_REGISTER_EFFECT(Effect)                                         \
   BSE_CXX_DEFINE_STATIC_DATA (Effect##Base);                                    \
   template&lt;class C&gt; static ::BseExportNode* bse_export_node ();                 \
-  template&lt;&gt; static ::BseExportNode*                                            \
+  template&lt;&gt; static_template ::BseExportNode*                                   \
   bse_export_node&lt;Effect&gt; ()                                                    \
   {                                                                             \
     static ::BseExportNodeClass cnode = {                                       \
Index: beast-0.7.1/bse/bseloader-guspatch.cc
===================================================================
--- beast-0.7.1.orig/bse/bseloader-guspatch.cc	2006-11-25 16:04:31.000000000 +0000
+++ beast-0.7.1/bse/bseloader-guspatch.cc	2008-03-24 14:10:47.000000000 +0000
@@ -22,6 +22,7 @@
 #include &lt;errno.h&gt;
 #include &lt;vector&gt;
 #include &lt;string&gt;
+#include &lt;cstring&gt;
 
 #undef  WITH_GUSPATCH_XINFOS
 static SFI_MSG_TYPE_DEFINE (debug_guspatch, "guspatch", SFI_MSG_DEBUG, NULL);
Index: beast-0.7.1/bse/bsesequencer.cc
===================================================================
--- beast-0.7.1.orig/bse/bsesequencer.cc	2006-12-26 21:41:25.000000000 +0000
+++ beast-0.7.1/bse/bsesequencer.cc	2008-03-24 14:10:47.000000000 +0000
@@ -30,6 +30,7 @@
 #include &lt;fcntl.h&gt;
 #include &lt;errno.h&gt;
 #include &lt;vector&gt;
+#include &lt;cstring&gt;
 
 /* due to a linker/compiler bug on SuSE 9.2, we need to
  * define extern "C" symbols outside of any C++ namespace,
Index: beast-0.7.1/sfi/sfidl-cxxbase.cc
===================================================================
--- beast-0.7.1.orig/sfi/sfidl-cxxbase.cc	2005-03-07 06:23:55.000000000 +0000
+++ beast-0.7.1/sfi/sfidl-cxxbase.cc	2008-03-24 14:10:47.000000000 +0000
@@ -23,6 +23,7 @@
 #include &lt;unistd.h&gt;
 #include &lt;errno.h&gt;
 #include &lt;ctype.h&gt;
+#include &lt;cstring&gt;
 #include "sfidl-namespace.hh"
 #include "sfidl-options.hh"
 #include "sfidl-parser.hh"
Index: beast-0.7.1/sfi/sfidl-namespace.cc
===================================================================
--- beast-0.7.1.orig/sfi/sfidl-namespace.cc	2005-03-07 06:23:55.000000000 +0000
+++ beast-0.7.1/sfi/sfidl-namespace.cc	2008-03-24 14:10:47.000000000 +0000
@@ -21,6 +21,7 @@
 #include &lt;list&gt;
 #include &lt;string&gt;
 #include &lt;map&gt;
+#include &lt;algorithm&gt;
 #include "sfidl-namespace.hh"
 #include &lt;sfi/glib-extra.h&gt;
 
Index: beast-0.7.1/sfi/sfidl-options.cc
===================================================================
--- beast-0.7.1.orig/sfi/sfidl-options.cc	2005-03-07 06:23:55.000000000 +0000
+++ beast-0.7.1/sfi/sfidl-options.cc	2008-03-24 14:10:47.000000000 +0000
@@ -22,6 +22,7 @@
 #include "topconfig.h"
 #include &lt;sfi/glib-extra.h&gt;
 #include &lt;stdio.h&gt;
+#include &lt;cstring&gt;
 
 /* FIXME: should be filled out and written into topconfig.h by configure */
 #define SFIDL_VERSION        BST_VERSION
Index: beast-0.7.1/sfi/sficxx.hh
===================================================================
--- beast-0.7.1.orig/sfi/sficxx.hh	2006-10-05 10:21:50.000000000 +0000
+++ beast-0.7.1/sfi/sficxx.hh	2008-03-24 14:10:47.000000000 +0000
@@ -23,6 +23,7 @@
 #include &lt;sfi/sfi.h&gt;
 #include &lt;string&gt;
 #include &lt;new&gt;
+#include &lt;cstring&gt;
 
 namespace Sfi {
 
Index: beast-0.7.1/sfi/sfidl-factory.cc
===================================================================
--- beast-0.7.1.orig/sfi/sfidl-factory.cc	2005-03-07 06:23:55.000000000 +0000
+++ beast-0.7.1/sfi/sfidl-factory.cc	2008-03-24 14:10:47.000000000 +0000
@@ -18,6 +18,7 @@
  */
 #include "sfidl-factory.hh"
 #include "glib-extra.h"
+#include &lt;algorithm&gt;
 
 using namespace Sfidl;
 using namespace std;
Index: beast-0.7.1/sfi/sfidl-parser.cc
===================================================================
--- beast-0.7.1.orig/sfi/sfidl-parser.cc	2006-11-14 22:51:36.000000000 +0000
+++ beast-0.7.1/sfi/sfidl-parser.cc	2008-03-24 14:10:47.000000000 +0000
@@ -27,6 +27,9 @@
 #include &lt;iostream&gt;
 #include &lt;set&gt;
 #include &lt;stack&gt;
+#include &lt;cstring&gt;
+#include &lt;cstdlib&gt;
+#include &lt;algorithm&gt;
 
 const std::string
 Sfidl::string_from_int (long long int lli)
Index: beast-0.7.1/tests/bse/filtertest.cc
===================================================================
--- beast-0.7.1.orig/tests/bse/filtertest.cc	2006-12-04 00:01:08.000000000 +0000
+++ beast-0.7.1/tests/bse/filtertest.cc	2008-03-24 14:10:47.000000000 +0000
@@ -28,6 +28,7 @@
 #include &lt;birnet/birnettests.h&gt;
 #include "topconfig.h"
 #include &lt;errno.h&gt;
+#include &lt;cstdlib&gt;
 
 using std::string;
 using std::vector;
Index: beast-0.7.1/tools/bsewavetool.cc
===================================================================
--- beast-0.7.1.orig/tools/bsewavetool.cc	2006-12-11 19:00:07.000000000 +0000
+++ beast-0.7.1/tools/bsewavetool.cc	2008-03-24 14:10:47.000000000 +0000
@@ -34,6 +34,7 @@
 #include &lt;fcntl.h&gt;
 #include &lt;vector&gt;
 #include &lt;map&gt;
+#include &lt;algorithm&gt;
 
 
 namespace BseWaveTool {
Index: beast-0.7.1/tools/bsefcompare.cc
===================================================================
--- beast-0.7.1.orig/tools/bsefcompare.cc	2006-12-04 00:01:06.000000000 +0000
+++ beast-0.7.1/tools/bsefcompare.cc	2008-03-24 14:10:47.000000000 +0000
@@ -28,6 +28,7 @@
 #include &lt;sys/types.h&gt;
 #include &lt;sys/stat.h&gt;
 #include &lt;fcntl.h&gt;
+#include &lt;cstring&gt;
 
 #include "topconfig.h"
 
Index: beast-0.7.1/tools/bsefextract.cc
===================================================================
--- beast-0.7.1.orig/tools/bsefextract.cc	2006-11-05 02:21:30.000000000 +0000
+++ beast-0.7.1/tools/bsefextract.cc	2008-03-24 14:10:47.000000000 +0000
@@ -27,6 +27,8 @@
 #include &lt;errno.h&gt;
 #include &lt;assert.h&gt;
 #include "topconfig.h"
+#include &lt;cstring&gt;
+#include &lt;cstdlib&gt;
 
 #include &lt;map&gt;
 #include &lt;string&gt;
Index: beast-0.7.1/birnet/tests/sorting.cc
===================================================================
--- beast-0.7.1.orig/birnet/tests/sorting.cc	2006-10-21 15:13:41.000000000 +0000
+++ beast-0.7.1/birnet/tests/sorting.cc	2008-03-24 14:10:47.000000000 +0000
@@ -19,6 +19,8 @@
 // #define TEST_VERBOSE
 #include &lt;birnet/birnettests.h&gt;
 #include &lt;math.h&gt;
+#include &lt;cstdlib&gt;
+#include &lt;algorithm&gt;
 
 namespace {
 using namespace Birnet;
Index: beast-0.7.1/birnet/tests/strings.cc
===================================================================
--- beast-0.7.1.orig/birnet/tests/strings.cc	2006-12-18 17:58:23.000000000 +0000
+++ beast-0.7.1/birnet/tests/strings.cc	2008-03-24 14:10:47.000000000 +0000
@@ -18,6 +18,7 @@
  */
 //#define TEST_VERBOSE
 #include &lt;birnet/birnettests.h&gt;
+#include &lt;cstdlib&gt;
 using namespace Birnet;
 
 namespace {
Index: beast-0.7.1/birnet/tests/threads.cc
===================================================================
--- beast-0.7.1.orig/birnet/tests/threads.cc	2006-10-21 15:12:11.000000000 +0000
+++ beast-0.7.1/birnet/tests/threads.cc	2008-03-24 14:10:47.000000000 +0000
@@ -18,6 +18,7 @@
  */
 //#define TEST_VERBOSE
 #include &lt;birnet/birnettests.h&gt;
+#include &lt;cstdlib&gt;
 
 namespace {
 using namespace Birnet;
Index: beast-0.7.1/birnet/birnetutils.cc
===================================================================
--- beast-0.7.1.orig/birnet/birnetutils.cc	2006-12-18 17:58:24.000000000 +0000
+++ beast-0.7.1/birnet/birnetutils.cc	2008-03-24 14:10:47.000000000 +0000
@@ -31,6 +31,7 @@
 #include &lt;algorithm&gt;
 #include &lt;cxxabi.h&gt;
 #include &lt;signal.h&gt;
+#include &lt;cstring&gt;
 
 #ifndef _
 #define _(s)    s
Index: beast-0.7.1/birnet/birnetsignal.hh
===================================================================
--- beast-0.7.1.orig/birnet/birnetsignal.hh	2006-10-06 21:57:38.000000000 +0000
+++ beast-0.7.1/birnet/birnetsignal.hh	2008-03-24 14:10:47.000000000 +0000
@@ -435,7 +435,7 @@
 /* --- predefined signals --- */
 template&lt;class Emitter&gt;
 struct SignalFinalize : Signal0 &lt;Emitter, void, ScopeReferenceFinalizationMark&gt; {
-  typedef Signal0&lt;Emitter, void, ScopeReferenceFinalizationMark&gt; Signal0;
+  typedef Birnet::Signals::Signal0&lt;Emitter, void, ScopeReferenceFinalizationMark&gt; Signal0;
   explicit SignalFinalize (Emitter &amp;emitter)                             : Signal0 (emitter) {}
   explicit SignalFinalize (Emitter &amp;emitter, void (Emitter::*method) ()) : Signal0 (emitter, method) {}
   BIRNET_PRIVATE_CLASS_COPY (SignalFinalize);
@@ -443,7 +443,7 @@
 
 template&lt;class Emitter&gt;
 struct SignalVoid : Signal0 &lt;Emitter, void&gt; {
-  typedef Signal0&lt;Emitter, void&gt; Signal0;
+	typedef Birnet::Signals::Signal0&lt;Emitter, void&gt; Signal0;
   explicit SignalVoid (Emitter &amp;emitter)                                 : Signal0 (emitter) {}
   explicit SignalVoid (Emitter &amp;emitter, void (Emitter::*method) (void)) : Signal0 (emitter, method) {}
   BIRNET_PRIVATE_CLASS_COPY (SignalVoid);
Index: beast-0.7.1/birnet/birnetmsg.cc
===================================================================
--- beast-0.7.1.orig/birnet/birnetmsg.cc	2006-11-21 01:31:27.000000000 +0000
+++ beast-0.7.1/birnet/birnetmsg.cc	2008-03-24 14:10:47.000000000 +0000
@@ -21,6 +21,7 @@
 #include "birnetthread.hh"
 #include &lt;syslog.h&gt;
 #include &lt;errno.h&gt;
+#include &lt;cstring&gt;
 
 #ifndef _ // FIXME
 #define _(x)    (x)
Index: beast-0.7.1/birnet/birnetsignaltemplate.hh
===================================================================
--- beast-0.7.1.orig/birnet/birnetsignaltemplate.hh	2006-10-03 23:12:43.000000000 +0000
+++ beast-0.7.1/birnet/birnetsignaltemplate.hh	2008-03-24 14:10:47.000000000 +0000
@@ -165,7 +165,7 @@
 template&lt;class Emitter, typename R0, typename A1, typename A2, typename A3, class Collector&gt;
 struct Signal&lt;Emitter, R0 (A1, A2, A3), Collector&gt; : Signal3&lt;Emitter, R0, A1, A2, A3, Collector&gt;
 {
-  typedef Signal3&lt;Emitter, R0, A1, A2, A3, Collector&gt; Signal3;
+  typedef Birnet::Signals::Signal3&lt;Emitter, R0, A1, A2, A3, Collector&gt; Signal3;
   explicit Signal (Emitter &amp;emitter) :
     Signal3 (emitter)
     {}
</pre></body></html>