Thread: [libcw-cvs] [CVS] Module src (Page 3)
Abandoned project
Status: Beta
Brought to you by:
libcw
|
From: Carlo W. <li...@us...> - 2002-01-04 04:43:49
|
CVSROOT : /cvsroot/libcw
Module : src
Commit time: 2002-00-04 04:43:48 UTC
Modified files:
libcwd/include/libcw/macro_AllocTag.h
Log message:
Kludge to work around g++ bug for FreeBSD.
---------------------- diff included ----------------------
Index: src/libcwd/include/libcw/macro_AllocTag.h
diff -u src/libcwd/include/libcw/macro_AllocTag.h:1.2 src/libcwd/include/libcw/macro_AllocTag.h:1.3
--- src/libcwd/include/libcw/macro_AllocTag.h:1.2 Sat Dec 29 20:17:50 2001
+++ src/libcwd/include/libcw/macro_AllocTag.h Thu Jan 3 20:43:38 2002
@@ -1,4 +1,4 @@
-// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/macro_AllocTag.h,v 1.2 2001/12/30 04:17:50 libcw Exp $
+// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/macro_AllocTag.h,v 1.3 2002/01/04 04:43:38 libcw Exp $
//
// Copyright (C) 2000 - 2001, by
//
@@ -204,7 +204,13 @@
} while(0)
template<typename TYPE>
+#ifndef __FreeBSD__
+ // There is a bug in g++ that causes the wrong line number information to be generated
+ // when this function is inline. I was able to use heuristics to work around that for
+ // STABS, but not for DWARF-2 (the default of FreeBSD).
+ // See http://gcc.gnu.org/cgi-bin/gnatsweb.pl?cmd=view%20audit-trail&database=gcc&pr=5271
__inline__
+#endif
TYPE*
__libcwd_allocCatcher(TYPE* new_ptr)
{
----------------------- End of diff -----------------------
|
|
From: Carlo W. <li...@us...> - 2002-01-05 02:35:25
|
CVSROOT : /cvsroot/libcw
Module : src
Commit time: 2002-00-05 02:35:23 UTC
Modified files:
libcwd/include/cwd_debug.h
Log message:
2.95/FreeBSD bug fix attempt.
---------------------- diff included ----------------------
Index: src/libcwd/include/cwd_debug.h
diff -u src/libcwd/include/cwd_debug.h:1.2 src/libcwd/include/cwd_debug.h:1.3
--- src/libcwd/include/cwd_debug.h:1.2 Sat Dec 29 20:17:49 2001
+++ src/libcwd/include/cwd_debug.h Fri Jan 4 18:35:12 2002
@@ -1,5 +1,5 @@
// Generated automatically from sys.ho.in by configure.
-// $Header: /cvsroot/l/li/libcw/src/libcwd/include/cwd_debug.h,v 1.2 2001/12/30 04:17:49 libcw Exp $
+// $Header: /cvsroot/l/li/libcw/src/libcwd/include/cwd_debug.h,v 1.3 2002/01/05 02:35:12 libcw Exp $
//
// Copyright (C) 2001, by
//
@@ -128,7 +128,12 @@
#ifdef DEBUGDEBUG
namespace _private_ {
+#if defined(__FreeBSD__) && __GNUC__ < 3
+ // The other thing is not emitted apparently.
+ enum non_allocating_fake_ostream_using_write_ct { raw_write };
+#else
static class non_allocating_fake_ostream_using_write_ct { } const raw_write = { };
+#endif
}
inline _private_::non_allocating_fake_ostream_using_write_ct const& operator<<(_private_::non_allocating_fake_ostream_using_write_ct const& raw_write, char const* data)
----------------------- End of diff -----------------------
|
|
From: Carlo W. <li...@us...> - 2002-01-05 03:25:53
|
CVSROOT : /cvsroot/libcw
Module : src
Commit time: 2002-00-05 03:25:53 UTC
Modified files:
libcwd/configure.in
Log message:
Bug fix.
---------------------- diff included ----------------------
Index: src/libcwd/configure.in
diff -u src/libcwd/configure.in:1.87 src/libcwd/configure.in:1.88
--- src/libcwd/configure.in:1.87 Sun Dec 30 13:18:16 2001
+++ src/libcwd/configure.in Fri Jan 4 19:25:43 2002
@@ -1,5 +1,5 @@
dnl Process this file with autoconf to produce a configure script.
-AC_REVISION($Revision: 1.87 $)dnl
+AC_REVISION($Revision: 1.88 $)dnl
dnl General intialization of `autoconf' varaibles.
dnl Ensure that the directory specified with --srcdir was correct
@@ -359,7 +359,10 @@
CW_CONFIG_THREAD_SAFE=1
TESTOPTS=-D_REENTRANT
+ SAVE_LIBS="$LIBS"
+ LIBS="$LIBS $LIB_THREADS"
AC_CHECK_FUNCS(pthread_kill_other_threads_np)
+ LIBS="$SAVE_LIBS"
fi
dnl This test needs the full set of libraries we just determined.
----------------------- End of diff -----------------------
|
|
From: Carlo W. <li...@us...> - 2002-01-05 03:53:46
|
CVSROOT : /cvsroot/libcw
Module : src
Commit time: 2002-00-05 03:53:45 UTC
Modified files:
libcwd/debugmalloc.cc libcwd/include/cwd_debug.h
Log message:
Always use an enumerator.
---------------------- diff included ----------------------
Index: src/libcwd/debugmalloc.cc
diff -u src/libcwd/debugmalloc.cc:1.66 src/libcwd/debugmalloc.cc:1.67
--- src/libcwd/debugmalloc.cc:1.66 Thu Jan 3 20:22:33 2002
+++ src/libcwd/debugmalloc.cc Fri Jan 4 19:53:35 2002
@@ -1,4 +1,4 @@
-// $Header: /cvsroot/l/li/libcw/src/libcwd/debugmalloc.cc,v 1.66 2002/01/04 04:22:33 libcw Exp $
+// $Header: /cvsroot/l/li/libcw/src/libcwd/debugmalloc.cc,v 1.67 2002/01/05 03:53:35 libcw Exp $
//
// Copyright (C) 2000 - 2001, by
//
@@ -559,7 +559,7 @@
}
#ifdef DEBUGDEBUGMALLOC
-_private_::non_allocating_fake_ostream_using_write_ct const& operator<<(_private_::non_allocating_fake_ostream_using_write_ct const& raw_write, memblk_key_ct const& data)
+_private_::raw_write_nt const& operator<<(_private_::raw_write_nt const& raw_write, memblk_key_ct const& data)
{
write(2, "<memblk_key_ct>", 15);
return raw_write;
@@ -844,7 +844,7 @@
void print_on(std::ostream& os) const;
friend _private_::no_alloc_ostream_ct& operator<<(_private_::no_alloc_ostream_ct& os, dm_location_ct const& data);
#ifdef DEBUGDEBUGOUTPUT
- friend _private_::non_allocating_fake_ostream_using_write_ct const& operator<<(_private_::non_allocating_fake_ostream_using_write_ct const& os, dm_location_ct const& data);
+ friend _private_::raw_write_nt const& operator<<(_private_::raw_write_nt const& os, dm_location_ct const& data);
#endif
};
#endif // DEBUGUSEBFD
@@ -872,7 +872,7 @@
}
#ifdef DEBUGDEBUGOUTPUT
-_private_::non_allocating_fake_ostream_using_write_ct const& operator<<(_private_::non_allocating_fake_ostream_using_write_ct const& raw_write, dm_location_ct const& data)
+_private_::raw_write_nt const& operator<<(_private_::raw_write_nt const& raw_write, dm_location_ct const& data)
{
size_t len = strlen(data.M_filename);
if (len < 20)
Index: src/libcwd/include/cwd_debug.h
diff -u src/libcwd/include/cwd_debug.h:1.3 src/libcwd/include/cwd_debug.h:1.4
--- src/libcwd/include/cwd_debug.h:1.3 Fri Jan 4 18:35:12 2002
+++ src/libcwd/include/cwd_debug.h Fri Jan 4 19:53:35 2002
@@ -1,5 +1,5 @@
// Generated automatically from sys.ho.in by configure.
-// $Header: /cvsroot/l/li/libcw/src/libcwd/include/cwd_debug.h,v 1.3 2002/01/05 02:35:12 libcw Exp $
+// $Header: /cvsroot/l/li/libcw/src/libcwd/include/cwd_debug.h,v 1.4 2002/01/05 03:53:35 libcw Exp $
//
// Copyright (C) 2001, by
//
@@ -128,21 +128,18 @@
#ifdef DEBUGDEBUG
namespace _private_ {
-#if defined(__FreeBSD__) && __GNUC__ < 3
- // The other thing is not emitted apparently.
- enum non_allocating_fake_ostream_using_write_ct { raw_write };
-#else
- static class non_allocating_fake_ostream_using_write_ct { } const raw_write = { };
+ // Dummy type used as fake 'ostream' to write to write(2).
+ enum raw_write_nt { raw_write };
#endif
}
-inline _private_::non_allocating_fake_ostream_using_write_ct const& operator<<(_private_::non_allocating_fake_ostream_using_write_ct const& raw_write, char const* data)
+inline _private_::raw_write_nt const& operator<<(_private_::raw_write_nt const& raw_write, char const* data)
{
write(2, data, strlen(data));
return raw_write;
}
-inline _private_::non_allocating_fake_ostream_using_write_ct const& operator<<(_private_::non_allocating_fake_ostream_using_write_ct const& raw_write, void const* data)
+inline _private_::raw_write_nt const& operator<<(_private_::raw_write_nt const& raw_write, void const* data)
{
size_t dat = (size_t)data;
write(2, "0x", 2);
@@ -159,7 +156,7 @@
return raw_write;
}
-inline _private_::non_allocating_fake_ostream_using_write_ct const& operator<<(_private_::non_allocating_fake_ostream_using_write_ct const& raw_write, bool data)
+inline _private_::raw_write_nt const& operator<<(_private_::raw_write_nt const& raw_write, bool data)
{
if (data)
write(2, "true", 4);
@@ -168,7 +165,7 @@
return raw_write;
}
-inline _private_::non_allocating_fake_ostream_using_write_ct const& operator<<(_private_::non_allocating_fake_ostream_using_write_ct const& raw_write, char data)
+inline _private_::raw_write_nt const& operator<<(_private_::raw_write_nt const& raw_write, char data)
{
char c[1];
c[0] = data;
@@ -176,7 +173,7 @@
return raw_write;
}
-inline _private_::non_allocating_fake_ostream_using_write_ct const& operator<<(_private_::non_allocating_fake_ostream_using_write_ct const& raw_write, unsigned long data)
+inline _private_::raw_write_nt const& operator<<(_private_::raw_write_nt const& raw_write, unsigned long data)
{
char c[11];
char* p = &c[11];
@@ -190,7 +187,7 @@
return raw_write;
}
-inline _private_::non_allocating_fake_ostream_using_write_ct const& operator<<(_private_::non_allocating_fake_ostream_using_write_ct const& raw_write, long data)
+inline _private_::raw_write_nt const& operator<<(_private_::raw_write_nt const& raw_write, long data)
{
if (data < 0)
{
@@ -200,17 +197,17 @@
return operator<<(raw_write, (unsigned long)data);
}
-inline _private_::non_allocating_fake_ostream_using_write_ct const& operator<<(_private_::non_allocating_fake_ostream_using_write_ct const& raw_write, int data)
+inline _private_::raw_write_nt const& operator<<(_private_::raw_write_nt const& raw_write, int data)
{
return operator<<(raw_write, (long)data);
}
-inline _private_::non_allocating_fake_ostream_using_write_ct const& operator<<(_private_::non_allocating_fake_ostream_using_write_ct const& raw_write, unsigned int data)
+inline _private_::raw_write_nt const& operator<<(_private_::raw_write_nt const& raw_write, unsigned int data)
{
return operator<<(raw_write, static_cast<unsigned long>(data));
}
-inline _private_::non_allocating_fake_ostream_using_write_ct const& operator<<(_private_::non_allocating_fake_ostream_using_write_ct const& raw_write, libcw::debug::_private_::internal_string const& data)
+inline _private_::raw_write_nt const& operator<<(_private_::raw_write_nt const& raw_write, libcw::debug::_private_::internal_string const& data)
{
write(2, data.data(), data.size());
return raw_write;
----------------------- End of diff -----------------------
|
|
From: Carlo W. <li...@us...> - 2002-01-05 03:55:23
|
CVSROOT : /cvsroot/libcw
Module : src
Commit time: 2002-00-05 03:55:22 UTC
Modified files:
libcwd/include/cwd_debug.h
Log message:
Oops in last commit
---------------------- diff included ----------------------
Index: src/libcwd/include/cwd_debug.h
diff -u src/libcwd/include/cwd_debug.h:1.4 src/libcwd/include/cwd_debug.h:1.5
--- src/libcwd/include/cwd_debug.h:1.4 Fri Jan 4 19:53:35 2002
+++ src/libcwd/include/cwd_debug.h Fri Jan 4 19:55:12 2002
@@ -1,5 +1,5 @@
// Generated automatically from sys.ho.in by configure.
-// $Header: /cvsroot/l/li/libcw/src/libcwd/include/cwd_debug.h,v 1.4 2002/01/05 03:53:35 libcw Exp $
+// $Header: /cvsroot/l/li/libcw/src/libcwd/include/cwd_debug.h,v 1.5 2002/01/05 03:55:12 libcw Exp $
//
// Copyright (C) 2001, by
//
@@ -130,7 +130,6 @@
namespace _private_ {
// Dummy type used as fake 'ostream' to write to write(2).
enum raw_write_nt { raw_write };
-#endif
}
inline _private_::raw_write_nt const& operator<<(_private_::raw_write_nt const& raw_write, char const* data)
----------------------- End of diff -----------------------
|
|
From: Carlo W. <li...@us...> - 2002-01-05 04:22:35
|
CVSROOT : /cvsroot/libcw
Module : src
Commit time: 2002-00-05 04:22:35 UTC
Modified files:
libcwd/debugmalloc.cc libcwd/include/sys.ho.in
libcwd/include/libcw/private_threading.h
Log message:
I believe this is not an issue for gcc-2.x. And if it is... we don't really
support gcc-2.x and theads anyway. Needed to compile it though.
---------------------- diff included ----------------------
Index: src/libcwd/debugmalloc.cc
diff -u src/libcwd/debugmalloc.cc:1.67 src/libcwd/debugmalloc.cc:1.68
--- src/libcwd/debugmalloc.cc:1.67 Fri Jan 4 19:53:35 2002
+++ src/libcwd/debugmalloc.cc Fri Jan 4 20:22:24 2002
@@ -1,4 +1,4 @@
-// $Header: /cvsroot/l/li/libcw/src/libcwd/debugmalloc.cc,v 1.67 2002/01/05 03:53:35 libcw Exp $
+// $Header: /cvsroot/l/li/libcw/src/libcwd/debugmalloc.cc,v 1.68 2002/01/05 04:22:24 libcw Exp $
//
// Copyright (C) 2000 - 2001, by
//
@@ -122,12 +122,12 @@
#define DEBUGMALLOC_INTERNAL
#include "sys.h"
#include <libcw/debug_config.h>
-#ifdef LIBCWD_THREAD_SAFE
+#if defined(LIBCWD_THREAD_SAFE) && (__GNUC__ >= 3 || __GNUC_MINOR__ >= 97)
// This has to be very early (must not have been included elsewhere already).
#define private public // Ugly, I know.
#include <bits/stl_alloc.h>
#undef private
-#endif // LIBCWD_THREAD_SAFE
+#endif // __GNUC__ >= 3 && LIBCWD_THREAD_SAFE
#if defined(DEBUGMALLOC) || defined(LIBCW_DOXYGEN)
@@ -212,6 +212,7 @@
namespace _private_ {
+#if __GNUC__ >= 3 || __GNUC_MINOR__ >= 97
#ifdef LIBCWD_THREAD_SAFE
// The following tries to take the "node allocator" lock -- the lock of the
// default allocator for threaded applications. The parameter is the value to
@@ -239,7 +240,8 @@
#endif
__gthread_mutex_unlock(&std::__default_alloc_template<true, 0>::_S_node_allocator_lock._M_lock);
}
-#endif // LIBCWD_THREAD_SAFE
+#endif // LIBCWD_THREAD_SAFE
+#endif // __GNUC__ >= 3
void no_alloc_print_int_to(std::ostream* os, unsigned long val, bool hexadecimal)
{
Index: src/libcwd/include/libcw/private_threading.h
diff -u src/libcwd/include/libcw/private_threading.h:1.2 src/libcwd/include/libcw/private_threading.h:1.3
--- src/libcwd/include/libcw/private_threading.h:1.2 Sat Dec 29 20:17:50 2001
+++ src/libcwd/include/libcw/private_threading.h Fri Jan 4 20:22:25 2002
@@ -1,4 +1,4 @@
-// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/private_threading.h,v 1.2 2001/12/30 04:17:50 libcw Exp $
+// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/private_threading.h,v 1.3 2002/01/05 04:22:25 libcw Exp $
//
// Copyright (C) 2001, by
//
@@ -222,7 +222,7 @@
if (instance != mutex_initialization_instance)
mutex_tct<mutex_initialization_instance>::unlock();
}
-#endif
+#endif // LIBCWD_USE_LINUXTHREADS
#ifndef LIBCWD_USE_LINUXTHREADS
template <int instance>
Index: src/libcwd/include/sys.ho.in
diff -u src/libcwd/include/sys.ho.in:1.4 src/libcwd/include/sys.ho.in:1.5
--- src/libcwd/include/sys.ho.in:1.4 Sun Dec 30 12:05:41 2001
+++ src/libcwd/include/sys.ho.in Fri Jan 4 20:22:25 2002
@@ -1,5 +1,5 @@
// @configure_input@
-// $Header: /cvsroot/l/li/libcw/src/libcwd/include/sys.ho.in,v 1.4 2001/12/30 20:05:41 libcw Exp $
+// $Header: /cvsroot/l/li/libcw/src/libcwd/include/sys.ho.in,v 1.5 2002/01/05 04:22:25 libcw Exp $
//
// Copyright (C) 2000 - 2001, by
//
@@ -16,6 +16,11 @@
#define SYS_H
#include "../config.h"
+
+//
+// Use all GNU extensions.
+//
+#define _GNU_SOURCE
//
// Define _REENTRANT to make sure that the glibc functions are thread safe too.
----------------------- End of diff -----------------------
|
|
From: Carlo W. <li...@us...> - 2002-01-05 04:34:33
|
CVSROOT : /cvsroot/libcw
Module : src
Commit time: 2002-00-05 04:34:32 UTC
Modified files:
libcwd/testsuite/libcwd.tst/dlopen.re
Log message:
Bug fix in testsuite
---------------------- diff included ----------------------
Index: src/libcwd/testsuite/libcwd.tst/dlopen.re
diff -u src/libcwd/testsuite/libcwd.tst/dlopen.re:1.9 src/libcwd/testsuite/libcwd.tst/dlopen.re:1.10
--- src/libcwd/testsuite/libcwd.tst/dlopen.re:1.9 Mon Dec 31 20:43:04 2001
+++ src/libcwd/testsuite/libcwd.tst/dlopen.re Fri Jan 4 20:34:22 2002
@@ -1,5 +1,5 @@
// input lines 2
-// output till Loading debug info from
+// output till Loading debug info from \./module\.so
(.*
)*
BFD : Loading debug info from \./module\.so \(0x[a-f0-9]*\) \.\.\. done \([0-9]* symbols\)
----------------------- End of diff -----------------------
|
|
From: Carlo W. <li...@us...> - 2002-01-05 15:07:00
|
CVSROOT : /cvsroot/libcw
Module : src
Commit time: 2002-00-05 15:06:58 UTC
Modified files:
libcwd/configure.in libcwd/maintMakefile.in
libcwd/include/sys.ho.in
Log message:
More fixes
---------------------- diff included ----------------------
Index: src/libcwd/configure.in
diff -u src/libcwd/configure.in:1.88 src/libcwd/configure.in:1.89
--- src/libcwd/configure.in:1.88 Fri Jan 4 19:25:43 2002
+++ src/libcwd/configure.in Sat Jan 5 07:06:47 2002
@@ -1,5 +1,5 @@
dnl Process this file with autoconf to produce a configure script.
-AC_REVISION($Revision: 1.88 $)dnl
+AC_REVISION($Revision: 1.89 $)dnl
dnl General intialization of `autoconf' varaibles.
dnl Ensure that the directory specified with --srcdir was correct
@@ -340,8 +340,7 @@
AC_CHECK_LIB(pthread, pthread_create,
[AC_CHECK_HEADER(pthread.h,
[CW_CONFIG_HAVE_PTHREADS=define
- LIB_THREADS=-lpthread
- AC_DEFINE_UNQUOTED([LIBCWD_HAVE_PTHREAD])],
+ LIB_THREADS=-lpthread],
[AC_MSG_ERROR([
* Sorry but libcwd only supports POSIX Threads at the moment and I can't
Index: src/libcwd/include/sys.ho.in
diff -u src/libcwd/include/sys.ho.in:1.5 src/libcwd/include/sys.ho.in:1.6
--- src/libcwd/include/sys.ho.in:1.5 Fri Jan 4 20:22:25 2002
+++ src/libcwd/include/sys.ho.in Sat Jan 5 07:06:48 2002
@@ -1,5 +1,5 @@
// @configure_input@
-// $Header: /cvsroot/l/li/libcw/src/libcwd/include/sys.ho.in,v 1.5 2002/01/05 04:22:25 libcw Exp $
+// $Header: /cvsroot/l/li/libcw/src/libcwd/include/sys.ho.in,v 1.6 2002/01/05 15:06:48 libcw Exp $
//
// Copyright (C) 2000 - 2001, by
//
@@ -20,7 +20,9 @@
//
// Use all GNU extensions.
//
+#ifndef _GNU_SOURCE
#define _GNU_SOURCE
+#endif
//
// Define _REENTRANT to make sure that the glibc functions are thread safe too.
Index: src/libcwd/maintMakefile.in
diff -u src/libcwd/maintMakefile.in:1.15 src/libcwd/maintMakefile.in:1.16
--- src/libcwd/maintMakefile.in:1.15 Sun Dec 30 12:00:01 2001
+++ src/libcwd/maintMakefile.in Sat Jan 5 07:06:47 2002
@@ -103,16 +103,16 @@
full-check: Makefile
@( \
for c in \
- '--enable-maintainer-mode --enable-libcwd-debugm --enable-libcwd-debug --compilers=cvs-3.0,2.96,2.95.3' \
- '--enable-maintainer-mode --enable-libcwd-threading --compilers=cvs-3.0,3.0.1,3.0' \
- '--enable-maintainer-mode --compilers=cvs-3.0,2.96,3.0.1,2.95.3,2.95.1,2.95.2,3.0' \
- '--enable-maintainer-mode --enable-libcwd-threading --enable-libcwd-debugm --compilers=cvs-3.0' \
- '--enable-maintainer-mode --enable-libcwd-debugm --compilers=cvs-3.0,2.96,2.95.3' \
- '--enable-maintainer-mode --enable-libcwd-threading --enable-libcwd-debug --disable-libcwd-debug-output --compilers=cvs-3.0' \
- '--enable-maintainer-mode --enable-libcwd-debug --disable-libcwd-debug-output --compilers=cvs-3.0,2.96,2.95.3' \
- '--enable-maintainer-mode --enable-libcwd-threading --enable-libcwd-debugm --enable-libcwd-debug --disable-libcwd-debug-output --compilers=cvs-3.0' \
- '--enable-maintainer-mode --enable-libcwd-debugm --enable-libcwd-debug --disable-libcwd-debug-output --compilers=cvs-3.0,2.96,2.95.3' \
- '--enable-maintainer-mode --enable-libcwd-threading --enable-libcwd-debugm --enable-libcwd-debug --compilers=cvs-3.0' \
+ '--enable-maintainer-mode --enable-libcwd-debugm --enable-libcwd-debug --compilers=3.0.3,2.96,2.95.3' \
+ '--enable-maintainer-mode --enable-libcwd-threading --compilers=3.0.3,3.0.2,3.0.1,3.0' \
+ '--enable-maintainer-mode --compilers=3.0.3,2.96,2.95.3,2.95.1,2.95.2,3.0' \
+ '--enable-maintainer-mode --enable-libcwd-threading --enable-libcwd-debugm --compilers=3.0.3' \
+ '--enable-maintainer-mode --enable-libcwd-debugm --compilers=3.0.3,2.96,2.95.3' \
+ '--enable-maintainer-mode --enable-libcwd-threading --enable-libcwd-debug --disable-libcwd-debug-output --compilers=3.0.3' \
+ '--enable-maintainer-mode --enable-libcwd-debug --disable-libcwd-debug-output --compilers=3.0.3,2.96,2.95.3' \
+ '--enable-maintainer-mode --enable-libcwd-threading --enable-libcwd-debugm --enable-libcwd-debug --disable-libcwd-debug-output --compilers=3.0.3' \
+ '--enable-maintainer-mode --enable-libcwd-debugm --enable-libcwd-debug --disable-libcwd-debug-output --compilers=3.0.3,2.96,2.95.3' \
+ '--enable-maintainer-mode --enable-libcwd-threading --enable-libcwd-debugm --enable-libcwd-debug --compilers=3.0.3' \
; do \
config=`echo $$c | sed -e 's/ --compilers=.*$$//'`; \
case "$$c" in \
----------------------- End of diff -----------------------
|
|
From: Carlo W. <li...@us...> - 2002-01-06 00:05:18
|
CVSROOT : /cvsroot/libcw
Module : src
Commit time: 2002-00-06 00:05:15 UTC
Modified files:
libcwd/configure.in
Log message:
Allow switching compiler versions
---------------------- diff included ----------------------
Index: src/libcwd/configure.in
diff -u src/libcwd/configure.in:1.89 src/libcwd/configure.in:1.90
--- src/libcwd/configure.in:1.89 Sat Jan 5 07:06:47 2002
+++ src/libcwd/configure.in Sat Jan 5 16:05:05 2002
@@ -1,5 +1,5 @@
dnl Process this file with autoconf to produce a configure script.
-AC_REVISION($Revision: 1.89 $)dnl
+AC_REVISION($Revision: 1.90 $)dnl
dnl General intialization of `autoconf' varaibles.
dnl Ensure that the directory specified with --srcdir was correct
@@ -109,6 +109,8 @@
dnl Check for compiler and preprocessor
if test -n "$CC"; then
unset ac_cv_prog_CC
+ unset am_cv_CC_dependencies_compiler_type
+ unset am_cv_CXX_dependencies_compiler_type
fi
AC_PROG_CC
AC_PROG_CXX
----------------------- End of diff -----------------------
|
|
From: Carlo W. <li...@us...> - 2002-01-06 04:24:49
|
CVSROOT : /cvsroot/libcw
Module : src
Commit time: 2002-00-06 04:24:48 UTC
Modified files:
libcwd/configure.in
Log message:
Remove old versions of sys.h if any... just in case.
---------------------- diff included ----------------------
Index: src/libcwd/configure.in
diff -u src/libcwd/configure.in:1.90 src/libcwd/configure.in:1.91
--- src/libcwd/configure.in:1.90 Sat Jan 5 16:05:05 2002
+++ src/libcwd/configure.in Sat Jan 5 20:24:38 2002
@@ -1,5 +1,5 @@
dnl Process this file with autoconf to produce a configure script.
-AC_REVISION($Revision: 1.90 $)dnl
+AC_REVISION($Revision: 1.91 $)dnl
dnl General intialization of `autoconf' varaibles.
dnl Ensure that the directory specified with --srcdir was correct
@@ -427,6 +427,8 @@
dnl Generate include/libcw/debug_config.h, include/libcw/sysd.h and include/sys.h, preserving timestamp when they are not changed.
AC_OUTPUT_COMMANDS([
+# Sanity: remove old versions.
+rm -f sys.h sys.ho include/libcw/sys.h include/libcw/sys.ho
cd include/libcw
if echo "$CONFIG_FILES" | grep debug_config.ho > /dev/null; then
if cmp -s debug_config.h debug_config.ho 2> /dev/null; then
----------------------- End of diff -----------------------
|
|
From: Carlo W. <li...@us...> - 2002-01-06 17:59:43
|
CVSROOT : /cvsroot/libcw
Module : src
Commit time: 2002-00-06 17:59:41 UTC
Modified files:
libcwd/Makefile.am libcwd/tests/Makefile.am
libcwd/utils/Makefile.am
Log message:
Also stop automake 1.5 from using more include directories then we need.
---------------------- diff included ----------------------
Index: src/libcwd/Makefile.am
diff -u src/libcwd/Makefile.am:1.36 src/libcwd/Makefile.am:1.37
--- src/libcwd/Makefile.am:1.36 Sun Dec 30 12:00:01 2001
+++ src/libcwd/Makefile.am Sun Jan 6 09:59:31 2002
@@ -13,7 +13,8 @@
DEBUGOPTS = @DEBUGOPTS@
WARNOPTS = @WARNOPTS@
CXXFLAGS = -DCWDEBUG $(DEBUGOPTS) $(EXTRAOPTS) $(WARNOPTS)
-INCLUDES = -I$(top_builddir) -I$(top_builddir)/include -I$(srcdir)/include
+INCLUDES = -I$(top_builddir)/include -I$(srcdir)/include
+DEFAULT_INCLUDES =
lib_LTLIBRARIES = libcwd.la
Index: src/libcwd/tests/Makefile.am
diff -u src/libcwd/tests/Makefile.am:1.18 src/libcwd/tests/Makefile.am:1.19
--- src/libcwd/tests/Makefile.am:1.18 Sat Dec 29 20:17:50 2001
+++ src/libcwd/tests/Makefile.am Sun Jan 6 09:59:31 2002
@@ -39,8 +39,9 @@
DEBUGOPTS = @DEBUGOPTS@
WARNOPTS = @WARNOPTS@
TESTOPTS = @TESTOPTS@
-CXXFLAGS = $(DEBUGOPTS) $(TESTOPTS) $(EXTRAOPTS) $(WARNOPTS)
-INCLUDES = -I. -I$(top_builddir)/include -I$(srcdir)/../include -DCWDEBUG
+CXXFLAGS = -DCWDEBUG $(DEBUGOPTS) $(TESTOPTS) $(EXTRAOPTS) $(WARNOPTS)
+INCLUDES = -I. -I$(top_builddir)/include -I$(srcdir)/../include
+DEFAULT_INCLUDES =
MAINTAINERCLEANFILES = Makefile.in
Index: src/libcwd/utils/Makefile.am
diff -u src/libcwd/utils/Makefile.am:1.10 src/libcwd/utils/Makefile.am:1.11
--- src/libcwd/utils/Makefile.am:1.10 Sat Dec 29 20:17:51 2001
+++ src/libcwd/utils/Makefile.am Sun Jan 6 09:59:31 2002
@@ -7,8 +7,9 @@
EXTRAOPTS = @EXTRAOPTS@
DEBUGOPTS = @DEBUGOPTS@
WARNOPTS = @WARNOPTS@
-CXXFLAGS = $(DEBUGOPTS) $(EXTRAOPTS) $(WARNOPTS)
-INCLUDES = -I$(srcdir)/../include -I$(top_builddir)/include -DCWDEBUG
+CXXFLAGS = -DCWDEBUG $(DEBUGOPTS) $(EXTRAOPTS) $(WARNOPTS)
+INCLUDES = -I$(srcdir)/../include -I$(top_builddir)/include
+DEFAULT_INCLUDES =
LIBS=
libutils_la_SOURCES = \
----------------------- End of diff -----------------------
|
|
From: Carlo W. <li...@us...> - 2002-01-08 02:12:52
|
CVSROOT : /cvsroot/libcw
Module : src
Commit time: 2002-00-08 02:12:51 UTC
Modified files:
libcwd/acinclude.m4 libcwd/configure.in
Log message:
Support for autoconf version 2.52.
---------------------- diff included ----------------------
Index: src/libcwd/acinclude.m4
diff -u src/libcwd/acinclude.m4:1.44 src/libcwd/acinclude.m4:1.45
--- src/libcwd/acinclude.m4:1.44 Sat Dec 29 20:17:46 2001
+++ src/libcwd/acinclude.m4 Mon Jan 7 18:12:41 2002
@@ -124,34 +124,6 @@
#undef $i"
done])
-dnl CW_OUTPUT([FILE... [, EXTRA_CMDS [, INIT-CMDS]]])
-dnl
-dnl Like AC_OUTPUT, but preserve the timestamp of the output files
-dnl when they are not changed.
-dnl
-AC_DEFUN(CW_OUTPUT,
-[AC_OUTPUT_COMMANDS(
-[for cw_outfile in $1; do
- if test -f $cw_outfile.$cw_pid; then
- if cmp -s $cw_outfile $cw_outfile.$cw_pid 2>/dev/null; then
- echo "$cw_outfile is unchanged"
- mv $cw_outfile.$cw_pid $cw_outfile
- fi
- fi
- rm -f $cw_outfile.$cw_pid
-done], [cw_pid=$cw_pid])
-cw_pid=$$
-if test "$no_create" != yes; then
- for cw_outfile in $1; do
- if test -f $cw_outfile; then
- mv $cw_outfile $cw_outfile.$cw_pid
- fi
- done
-fi]
-dnl `automake' looks for AC_OUTPUT and thinks `$1' etc.
-dnl is a literally required file unless we fool it a bit here:
-[AC_OUTPUT]([$1], [$2], [$3]))
-
dnl CW_DEFINE_TYPE_INITIALIZATION
dnl
AC_DEFUN(CW_DEFINE_TYPE_INITIALIZATION,
@@ -218,14 +190,14 @@
dnl We need this comment to work around a bug in autoconf or m4: '['
cw_result="`echo $cw_result | sed -e 's/.*detect_type.*with ARG = //g' -e 's/].*//'`"
fi
+changequote([, ])dnl
if test -z "$cw_result"; then
- AC_MSG_ERROR(Configure problem: Failed to determine type)
+ AC_MSG_ERROR([Configure problem: Failed to determine type])
fi
-changequote([, ])dnl
else
echo "configure: failed program was:" >&5
cat conftest.$ac_ext >&5
- AC_MSG_ERROR(Configuration problem: Failed to compile a test program)
+ AC_MSG_ERROR([Configuration problem: Failed to compile a test program])
fi
CXXFLAGS="$save_CXXFLAGS"
rm -f conftest*
@@ -306,10 +278,9 @@
[cat > conftest.$ac_ext <<EOF
[#]line __oline__ "configure"
#include "confdefs.h"
-ifelse(AC_LANG, CPLUSPLUS, [#ifdef __cplusplus
+#ifdef __cplusplus
#include <cstdlib>
#endif
-])dnl
[$1]
EOF
if AC_TRY_EVAL(ac_link) && test -s conftest${ac_exeext} && (./conftest; exit) 2>/dev/null
Index: src/libcwd/configure.in
diff -u src/libcwd/configure.in:1.91 src/libcwd/configure.in:1.92
--- src/libcwd/configure.in:1.91 Sat Jan 5 20:24:38 2002
+++ src/libcwd/configure.in Mon Jan 7 18:12:41 2002
@@ -1,5 +1,5 @@
dnl Process this file with autoconf to produce a configure script.
-AC_REVISION($Revision: 1.91 $)dnl
+AC_REVISION($Revision: 1.92 $)dnl
dnl General intialization of `autoconf' varaibles.
dnl Ensure that the directory specified with --srcdir was correct
@@ -458,8 +458,5 @@
cd ..
])
-CW_OUTPUT(Makefile maintMakefile include/Makefile include/libcw/Makefile utils/Makefile tests/Makefile testsuite/Makefile include/libcw/debug_config.ho include/libcw/sysd.ho include/sys.ho libcwd.spec)
-exit 0
-
-dnl Keep automake happy
AC_OUTPUT(Makefile maintMakefile include/Makefile include/libcw/Makefile utils/Makefile tests/Makefile testsuite/Makefile include/libcw/debug_config.ho include/libcw/sysd.ho include/sys.ho libcwd.spec)
+
----------------------- End of diff -----------------------
|
|
From: Carlo W. <li...@us...> - 2002-01-08 02:36:26
|
CVSROOT : /cvsroot/libcw
Module : src
Commit time: 2002-00-08 02:36:25 UTC
Modified files:
libcwd/NEWS
Log message:
NEWS update.
---------------------- diff included ----------------------
Index: src/libcwd/NEWS
diff -u src/libcwd/NEWS:1.62 src/libcwd/NEWS:1.63
--- src/libcwd/NEWS:1.62 Sat Dec 29 20:17:46 2001
+++ src/libcwd/NEWS Mon Jan 7 18:36:15 2002
@@ -12,19 +12,17 @@
Miscellaneous:
- The configuration option --disable-libcwd-location is fixed.
- Automake-1.5 now works.
+ - Autoconf-2.5x now works.
API changes:
- IMPORTANT: Debug channels have globally been renamed to Debug
- selectors. The word 'channel' had too much association with output
- destinations (streams).
-
- IMPORTANT: 'channel_ct const' -> 'selector_ct'.
- Debug selectors (previously channels) should no longer be declared
- constant. Declarations like
+ IMPORTANT: 'channel_ct const' -> 'channel_ct'.
+ Debug channels should no longer be declared constant.
+ Declarations like
libcw::debug::channel_ct const my_channel("FOO");
will have to be changed to
libcw::debug::selector_ct my_channel("FOO");
+ removing the `const'.
`long memblks()' has been renamed to `unsigned long mem_blocks()'.
@@ -50,7 +48,7 @@
A debug function for internal use (by the maintainers):
`debugdebugcheckpoint()' has been removed. If you need a user
- function to be called every Dout() then can define your own Dout
+ function to be called every Dout() then define your own Dout
macro's, that makes more sense then recompiling libcwd.
CWASSERT was renamed to LIBCWD_ASSERT; Note that all macros that start
----------------------- End of diff -----------------------
|
|
From: Carlo W. <li...@us...> - 2002-01-08 18:14:50
|
CVSROOT : /cvsroot/libcw
Module : src
Commit time: 2002-00-08 18:14:49 UTC
Modified files:
libcwd/INSTALL libcwd/debugmalloc.cc
libcwd/include/libcw/private_TSD.h
libcwd/include/libcw/private_threading.h
libcwd/testsuite/.cvsignore libcwd/testsuite/Makefile.in
Added files:
libcwd/testsuite/libcwd.threads/keys.cc
libcwd/testsuite/libcwd.threads/keys.re
libcwd/testsuite/libcwd.threads/test.exp
Log message:
Fix for gcc 2.95.x. pthread_setspecific calls calloc() which
was initializing libcwd (and the WARNING channel) with a temporal TSD.
The symbols are still read with the temporal TSD, but that doesn't
seem to harm.
---------------------- diff included ----------------------
Index: src/libcwd/INSTALL
diff -u src/libcwd/INSTALL:1.22 src/libcwd/INSTALL:1.23
--- src/libcwd/INSTALL:1.22 Sat Dec 29 20:17:46 2001
+++ src/libcwd/INSTALL Tue Jan 8 10:14:37 2002
@@ -86,7 +86,7 @@
iii) GNU make
iv) GNU m4
v) GNU which version 2.x
-vi) autoconf version 2.13 (2.52 seems to have problems)
+vi) autoconf version 2.13 or 2.52 or higher
vii) automake version 1.4pl1 or higher
viii) libtool version 1.4 or higher
Index: src/libcwd/debugmalloc.cc
diff -u src/libcwd/debugmalloc.cc:1.68 src/libcwd/debugmalloc.cc:1.69
--- src/libcwd/debugmalloc.cc:1.68 Fri Jan 4 20:22:24 2002
+++ src/libcwd/debugmalloc.cc Tue Jan 8 10:14:37 2002
@@ -1,4 +1,4 @@
-// $Header: /cvsroot/l/li/libcw/src/libcwd/debugmalloc.cc,v 1.68 2002/01/05 04:22:24 libcw Exp $
+// $Header: /cvsroot/l/li/libcw/src/libcwd/debugmalloc.cc,v 1.69 2002/01/08 18:14:37 libcw Exp $
//
// Copyright (C) 2000 - 2001, by
//
@@ -1491,10 +1491,16 @@
WST_initialization_state = -1;
_private_::set_alloc_checking_on(LIBCWD_TSD);
}
+ if (1
+#ifdef LIBCWD_THREAD_SAFE
+ // Don't initialize libcwd while having only a 'temporal' __libcwd_tsd!
+ && ::libcw::debug::_private_::thread_specific_data_tct< ::libcw::debug::_private_::TSD_st>::initialized()
+#endif
#ifdef __GLIBCPP__
- // "ios_base" is always initialized for libstdc++ version 2.
- if (!_private_::WST_ios_base_initialized && !_private_::inside_ios_base_Init_Init())
+ // "ios_base" is always initialized for libstdc++ version 2.
+ && !_private_::WST_ios_base_initialized && !_private_::inside_ios_base_Init_Init()
#endif // __GLIBCPP__
+ )
{
WST_initialization_state = 1; // ST_initialize_globals() calls malloc again of course.
#ifdef DEBUGDEBUGMALLOC
Index: src/libcwd/include/libcw/private_TSD.h
diff -u src/libcwd/include/libcw/private_TSD.h:1.2 src/libcwd/include/libcw/private_TSD.h:1.3
--- src/libcwd/include/libcw/private_TSD.h:1.2 Sat Dec 29 20:17:50 2001
+++ src/libcwd/include/libcw/private_TSD.h Tue Jan 8 10:14:38 2002
@@ -1,4 +1,4 @@
-// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/private_TSD.h,v 1.2 2001/12/30 04:17:50 libcw Exp $
+// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/private_TSD.h,v 1.3 2002/01/08 18:14:38 libcw Exp $
//
// Copyright (C) 2001, by
//
@@ -50,6 +50,7 @@
// When _REENTRANT is not defined then `__libcwd_tsd' is simply a global object in namespace _private_:
extern TSD_st __libcwd_tsd;
#endif
+extern int WST_initializing_TSD;
} // namespace _private_
} // namespace debug
Index: src/libcwd/include/libcw/private_threading.h
diff -u src/libcwd/include/libcw/private_threading.h:1.3 src/libcwd/include/libcw/private_threading.h:1.4
--- src/libcwd/include/libcw/private_threading.h:1.3 Fri Jan 4 20:22:25 2002
+++ src/libcwd/include/libcw/private_threading.h Tue Jan 8 10:14:38 2002
@@ -1,4 +1,4 @@
-// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/private_threading.h,v 1.3 2002/01/05 04:22:25 libcw Exp $
+// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/private_threading.h,v 1.4 2002/01/08 18:14:38 libcw Exp $
//
// Copyright (C) 2001, by
//
@@ -411,6 +411,7 @@
static pthread_key_t S_key;
static TSD* S_temporary_instance;
static bool S_initializing;
+ static bool S_WNS_initialized;
static void S_alloc_key(void) throw();
static TSD* S_initialize(void) throw();
static void S_destroy(void* tsd_ptr) throw();
@@ -422,6 +423,7 @@
instance = S_initialize();
return *instance;
}
+ static bool initialized(void) { return S_WNS_initialized; }
};
template<class TSD>
@@ -437,6 +439,9 @@
bool thread_specific_data_tct<TSD>::S_initializing;
template<class TSD>
+ bool thread_specific_data_tct<TSD>::S_WNS_initialized;
+
+template<class TSD>
void thread_specific_data_tct<TSD>::S_destroy(void* tsd_ptr) throw()
{
TSD* instance = reinterpret_cast<TSD*>(tsd_ptr);
@@ -475,6 +480,7 @@
set_alloc_checking_on(LIBCWD_TSD);
pthread_setspecific(S_key, instance);
S_initializing = false;
+ S_WNS_initialized = true;
mutex_tct<tsd_initialization_instance>::unlock();
return instance;
}
Index: src/libcwd/testsuite/.cvsignore
diff -u src/libcwd/testsuite/.cvsignore:1.4 src/libcwd/testsuite/.cvsignore:1.5
--- src/libcwd/testsuite/.cvsignore:1.4 Fri Aug 3 21:25:50 2001
+++ src/libcwd/testsuite/.cvsignore Tue Jan 8 10:14:38 2002
@@ -6,4 +6,6 @@
nodebug_*_static
tst_*_shared
tst_*_static
+threads_*_shared
+threads_*_static
module.so
Index: src/libcwd/testsuite/Makefile.in
diff -u src/libcwd/testsuite/Makefile.in:1.25 src/libcwd/testsuite/Makefile.in:1.26
--- src/libcwd/testsuite/Makefile.in:1.25 Sat Dec 29 20:17:50 2001
+++ src/libcwd/testsuite/Makefile.in Tue Jan 8 10:14:38 2002
@@ -1,5 +1,6 @@
NODEBUGCHECK = nodebug
TSTCHECK = alloctag basic bfd cf continued dc demangler dlopen do flush leak lockable_auto_ptr magic marker strdup test_delete type_info
+THREADSCHECK = keys
srcdir = @srcdir@
top_builddir = ..
@@ -24,22 +25,26 @@
INCLUDES = -Ilibcwd.tst -I$(top_builddir)/include -I$(srcdir)/../include
PACKAGE = @PACKAGE@
VERSION = @VERSION@
-DISTFILES = Makefile.in module.cc config lib libcwd.tst libcwd.nodebug
+DISTFILES = Makefile.in module.cc config lib libcwd.tst libcwd.nodebug libcwd.threads
ifeq ($(enable_shared), yes)
SHAREDTSTTARGETS := $(patsubst %,tst_%_shared,$(TSTCHECK))
SHAREDNODEBUGTARGETS := $(patsubst %,nodebug_%_shared,$(NODEBUGCHECK))
+SHAREDTHREADSTARGETS := $(patsubst %,threads_%_shared,$(THREADSCHECK))
else
SHAREDTSTTARGETS :=
SHAREDNODEBUGTARGETS :=
+SHAREDTHREADSTARGETS :=
endif
ifeq ($(enable_static), yes)
STATICTSTTARGETS := $(patsubst %,tst_%_static,$(TSTCHECK))
STATICNODEBUGTARGETS := $(patsubst %,nodebug_%_static,$(NODEBUGCHECK))
+STATICTHREADSTARGETS := $(patsubst %,threads_%_static,$(THREADSCHECK))
else
STATICTSTTARGETS :=
STATICNODEBUGTARGETS :=
+STATICTHREADSTARGETS :=
endif
CXXCOMPILE = $(CXX) $(DEFS) $(INCLUDES) $(CPPFLAGS) $(CXXFLAGS)
@@ -86,6 +91,9 @@
nodebug_%.o: libcwd.nodebug/%.cc Makefile $(top_builddir)/include/libcw/*.h
$(CXXCOMPILE) -c $< -o $@
+threads_%.o: libcwd.threads/%.cc Makefile $(top_builddir)/include/libcw/*.h
+ $(CXXCOMPILE) -c $< -o $@
+
ifeq ($(enable_shared), yes)
%_shared: %.o $(top_builddir)/.libs/libcwd.so.*
$(CXXLINK) $< -o $@ $(SHAREDLIBS)
@@ -96,11 +104,13 @@
$(CXXLINK) $< -o $@ $(STATICLIBS)
endif
-shared: $(SHAREDTSTTARGETS) $(SHAREDNODEBUGTARGETS)
-static: $(STATICTSTTARGETS) $(STATICNODEBUGTARGETS)
+shared: $(SHAREDTSTTARGETS) $(SHAREDNODEBUGTARGETS) $(SHAREDTHREADSTARGETS)
+static: $(STATICTSTTARGETS) $(STATICNODEBUGTARGETS) $(STATICTHREADSTARGETS)
run: shared static module.so
- @for i in $(SHAREDTSTTARGETS) $(SHAREDNODEBUGTARGETS) $(STATICTSTTARGETS) $(STATICNODEBUGTARGETS); do echo -n "$$i: "; if ./$$i 2>/dev/null >/dev/null; then echo "OK"; else echo "ERROR"; fi ; done
+ @for i in $(SHAREDTSTTARGETS) $(SHAREDNODEBUGTARGETS) $(SHAREDTHREADSTARGETS) \
+ $(STATICTSTTARGETS) $(STATICNODEBUGTARGETS) $(STATICTHREADSTARGETS); do \
+ echo -n "$$i: "; if ./$$i 2>/dev/null >/dev/null; then echo "OK"; else echo "ERROR"; fi ; done
# Clean rules
mostlyclean:
Index: src/libcwd/testsuite/libcwd.threads/keys.cc
diff -u /dev/null src/libcwd/testsuite/libcwd.threads/keys.cc:1.1
--- /dev/null Tue Jan 8 10:14:49 2002
+++ src/libcwd/testsuite/libcwd.threads/keys.cc Tue Jan 8 10:14:39 2002
@@ -0,0 +1,29 @@
+#include "sys.h"
+#include <libcw/debug.h>
+
+void S_destroy(void* tsd_ptr) throw()
+{
+ delete (int*)tsd_ptr;
+}
+
+int main(void)
+{
+ Debug( check_configuration() );
+ Debug( libcw_do.on() );
+ Debug( dc::notice.on() );
+
+ // This tests if the warning channel is turned on.
+ Dout( dc::warning, "Ok");
+
+ pthread_key_t S_key;
+ pthread_key_create(&S_key, S_destroy);
+ int* p = new int;
+ *p = 123454321;
+ pthread_setspecific(S_key, p);
+ int* q = (int*)pthread_getspecific(S_key);
+ std::cout << "q = " << q << "; *q = " << *q << '\n';
+ int* q2 = (int*)pthread_getspecific(S_key);
+ assert( q == q2 );
+
+ exit(0);
+}
Index: src/libcwd/testsuite/libcwd.threads/keys.re
diff -u /dev/null src/libcwd/testsuite/libcwd.threads/keys.re:1.1
--- /dev/null Tue Jan 8 10:14:49 2002
+++ src/libcwd/testsuite/libcwd.threads/keys.re Tue Jan 8 10:14:39 2002
@@ -0,0 +1,7 @@
+// input lines 3
+// output till ^WARNING
+((WARNING : core size is limited.*
+)*BFD : Loading debug info from.*
+)*
+WARNING : Ok
+q = 0x[0-9a-f]*; \*q = 123454321
Index: src/libcwd/testsuite/libcwd.threads/test.exp
diff -u /dev/null src/libcwd/testsuite/libcwd.threads/test.exp:1.1
--- /dev/null Tue Jan 8 10:14:49 2002
+++ src/libcwd/testsuite/libcwd.threads/test.exp Tue Jan 8 10:14:39 2002
@@ -0,0 +1,34 @@
+global srcdir subdir
+global SHAREDLIBS STATICLIBS
+
+catch "glob -nocomplain $srcdir/$subdir/*.cc" srcfiles
+# set srcfiles $srcdir/$subdir/keys.cc
+verbose "srcfiles are $srcfiles"
+
+set prefix ""
+foreach x $srcfiles {
+ regsub "\\.cc$" $x "" prefix
+ set bname [file tail $prefix]
+ set args ""
+ if [file exists ${prefix}.arg] {
+ set id [open "${prefix}.arg" r];
+ set args [read -nonewline $id];
+ close $id;
+ }
+ set resfile "${prefix}.re"
+ set options "regexp_match"
+
+ if [file exists ${prefix}.inp] {
+ set inpfile ${prefix}.inp
+ } else {
+ set inpfile ""
+ }
+ verbose "inpfile is $inpfile"
+
+ if { $SHAREDLIBS != "" } {
+ test_libcwd $options "${prefix}.cc" "" $inpfile $resfile $args
+ }
+ if { $STATICLIBS != "" } {
+ test_libcwd "static $options" "${prefix}.cc" "" $inpfile $resfile $args
+ }
+}
----------------------- End of diff -----------------------
|
|
From: Carlo W. <li...@us...> - 2002-01-08 18:41:02
|
CVSROOT : /cvsroot/libcw
Module : src
Commit time: 2002-00-08 18:41:01 UTC
Modified files:
libcwd/Makefile.am
Log message:
This is needed for people who use CVS.
---------------------- diff included ----------------------
Index: src/libcwd/Makefile.am
diff -u src/libcwd/Makefile.am:1.37 src/libcwd/Makefile.am:1.38
--- src/libcwd/Makefile.am:1.37 Sun Jan 6 09:59:31 2002
+++ src/libcwd/Makefile.am Tue Jan 8 10:40:51 2002
@@ -4,7 +4,7 @@
SUBDIRS = include utils . tests testsuite
-BUILT_SOURCES =@MAINTAINER_MODE_TRUE@ libcwd.lsm libcwd.spec
+BUILT_SOURCES =@MAINTAINER_MODE_TRUE@ libcwd.lsm libcwd.spec example-project/debug.h
EXTRA_DIST = LICENSE.QPL README.FreeBSD README.openbsd nodebug.h $(BUILT_SOURCES)
DISTCLEANFILES = libcwd-@VERSION@.tar.gz
----------------------- End of diff -----------------------
|
|
From: Carlo W. <li...@us...> - 2002-01-08 22:22:52
|
CVSROOT : /cvsroot/libcw
Module : src
Commit time: 2002-00-08 19:16:48 UTC
Modified files:
libcwd/Makefile.am libcwd/maintMakefile.in
Log message:
That didn't work with automake 1.4. Hope this DOES work.
---------------------- diff included ----------------------
Index: src/libcwd/Makefile.am
diff -u src/libcwd/Makefile.am:1.38 src/libcwd/Makefile.am:1.39
--- src/libcwd/Makefile.am:1.38 Tue Jan 8 10:40:51 2002
+++ src/libcwd/Makefile.am Tue Jan 8 11:16:37 2002
@@ -4,7 +4,7 @@
SUBDIRS = include utils . tests testsuite
-BUILT_SOURCES =@MAINTAINER_MODE_TRUE@ libcwd.lsm libcwd.spec example-project/debug.h
+BUILT_SOURCES =@MAINTAINER_MODE_TRUE@ libcwd.lsm libcwd.spec example-project_debug.h
EXTRA_DIST = LICENSE.QPL README.FreeBSD README.openbsd nodebug.h $(BUILT_SOURCES)
DISTCLEANFILES = libcwd-@VERSION@.tar.gz
Index: src/libcwd/maintMakefile.in
diff -u src/libcwd/maintMakefile.in:1.16 src/libcwd/maintMakefile.in:1.17
--- src/libcwd/maintMakefile.in:1.16 Sat Jan 5 07:06:47 2002
+++ src/libcwd/maintMakefile.in Tue Jan 8 11:16:37 2002
@@ -150,3 +150,6 @@
documentation: example-project/debug.h
$(MAKE) -C documentation
+
+example-project_debug.h: example-project/debug.h
+
----------------------- End of diff -----------------------
|
|
From: Carlo W. <li...@us...> - 2002-01-08 23:05:13
|
CVSROOT : /cvsroot/libcw
Module : src
Commit time: 2002-00-08 23:05:09 UTC
Modified files:
libcwd/configure.in libcwd/include/sys.ho.in
libcwd/include/libcw/class_channel.h
libcwd/include/libcw/class_channel.inl
libcwd/include/libcw/class_location.h
libcwd/include/libcw/class_location.inl
libcwd/include/libcw/debug_config.ho.in
libcwd/include/libcw/macro_AllocTag.h
libcwd/include/libcw/macro_ForAllDebugChannels.h
libcwd/include/libcw/macro_ForAllDebugObjects.h
libcwd/include/libcw/private_TSD.h
libcwd/include/libcw/private_allocator.h
libcwd/include/libcw/private_threading.h
libcwd/include/libcw/sysd.ho.in libcwd/include/libcw/type_info.h
Log message:
Don't use _REENTRANT in header files where we actually need to know
whether or not libcwd was compiled with threading support or not.
Don't define _REENTRANT ourselfs but pass -pthread to g++.
---------------------- diff included ----------------------
Index: src/libcwd/configure.in
diff -u src/libcwd/configure.in:1.92 src/libcwd/configure.in:1.93
--- src/libcwd/configure.in:1.92 Mon Jan 7 18:12:41 2002
+++ src/libcwd/configure.in Tue Jan 8 15:04:58 2002
@@ -1,5 +1,5 @@
dnl Process this file with autoconf to produce a configure script.
-AC_REVISION($Revision: 1.92 $)dnl
+AC_REVISION($Revision: 1.93 $)dnl
dnl General intialization of `autoconf' varaibles.
dnl Ensure that the directory specified with --srcdir was correct
@@ -332,17 +332,18 @@
fi
AC_SUBST(CW_CONFIG_THREAD_SAFE)
-CW_CONFIG_THREAD_SAFE=0
+CW_CONFIG_THREAD_SAFE=undef
AC_SUBST(CW_CONFIG_HAVE_PTHREADS)
CW_CONFIG_HAVE_PTHREADS=undef
AC_SUBST(LIB_THREADS)
if test "$libcwd_config_threading" = yes; then
- dnl Check if we have libpthread.
- AC_CHECK_LIB(pthread, pthread_create,
+ dnl Check if we have POSIX threads
+ EXTRAOPTS="$EXTRAOPTS -pthread"
+ CXXFLAGS="$DEBUGOPTS $EXTRAOPTS"
+ AC_SEARCH_LIBS(pthread_create, pthread,
[AC_CHECK_HEADER(pthread.h,
- [CW_CONFIG_HAVE_PTHREADS=define
- LIB_THREADS=-lpthread],
+ [CW_CONFIG_HAVE_PTHREADS=define],
[AC_MSG_ERROR([
* Sorry but libcwd only supports POSIX Threads at the moment and I can't
@@ -351,15 +352,12 @@
])])],
[AC_MSG_ERROR([
-* Sorry but libcwd only supports POSIX Threads at the moment and I can't
-* find -lpthread. Use --disable-libcwd-threading to compile a libcwd that
-* is not thread safe.
+* Sorry but libcwd only supports POSIX Threads at the moment. Your libc doesn't
+* include posix threads by itself and I can't find -lpthread.
+* Use --disable-libcwd-threading to compile a libcwd that is not thread safe.
])])
-
- AC_DEFINE([LIBCWD_THREAD_SAFE])
- CW_CONFIG_THREAD_SAFE=1
- TESTOPTS=-D_REENTRANT
+ CW_CONFIG_THREAD_SAFE=define
SAVE_LIBS="$LIBS"
LIBS="$LIBS $LIB_THREADS"
AC_CHECK_FUNCS(pthread_kill_other_threads_np)
Index: src/libcwd/include/libcw/class_channel.h
diff -u src/libcwd/include/libcw/class_channel.h:1.2 src/libcwd/include/libcw/class_channel.h:1.3
--- src/libcwd/include/libcw/class_channel.h:1.2 Sat Dec 29 20:17:49 2001
+++ src/libcwd/include/libcw/class_channel.h Tue Jan 8 15:04:59 2002
@@ -1,4 +1,4 @@
-// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/class_channel.h,v 1.2 2001/12/30 04:17:49 libcw Exp $
+// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/class_channel.h,v 1.3 2002/01/08 23:04:59 libcw Exp $
//
// Copyright (C) 2000 - 2001, by
//
@@ -82,15 +82,15 @@
class channel_ct {
private:
-#ifdef _REENTRANT
+#ifdef LIBCWD_THREAD_SAFE
int WNS_index;
// A unique id that is used as index into the TSD array `off_cnt_array'.
-#else // !_REENTRANT
+#else // !LIBCWD_THREAD_SAFE
int off_cnt;
// A counter of the nested calls to off().
// The channel is turned off when the value of `off' is larger or equal then zero
// and `on' when it has the value -1.
-#endif // !_REENTRANT
+#endif // !LIBCWD_THREAD_SAFE
char WNS_label[max_label_len_c];
// A reference name for the represented debug channel
@@ -130,7 +130,7 @@
char const* get_label(void) const;
bool is_on(void) const;
-#ifdef _REENTRANT
+#ifdef LIBCWD_THREAD_SAFE
bool is_on(LIBCWD_TSD_PARAM) const;
#endif
};
Index: src/libcwd/include/libcw/class_channel.inl
diff -u src/libcwd/include/libcw/class_channel.inl:1.2 src/libcwd/include/libcw/class_channel.inl:1.3
--- src/libcwd/include/libcw/class_channel.inl:1.2 Sat Dec 29 20:17:50 2001
+++ src/libcwd/include/libcw/class_channel.inl Tue Jan 8 15:04:59 2002
@@ -1,4 +1,4 @@
-// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/class_channel.inl,v 1.2 2001/12/30 04:17:50 libcw Exp $
+// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/class_channel.inl,v 1.3 2002/01/08 23:04:59 libcw Exp $
//
// Copyright (C) 2000 - 2001, by
//
@@ -38,7 +38,7 @@
NS_initialize(label);
}
-#ifdef _REENTRANT
+#ifdef LIBCWD_THREAD_SAFE
__inline__
bool
channel_ct::is_on(LIBCWD_TSD_PARAM) const
@@ -55,7 +55,7 @@
bool
channel_ct::is_on(void) const
{
-#ifndef _REENTRANT
+#ifndef LIBCWD_THREAD_SAFE
return (off_cnt < 0);
#else
LIBCWD_TSD_DECLARATION
Index: src/libcwd/include/libcw/class_location.h
diff -u src/libcwd/include/libcw/class_location.h:1.2 src/libcwd/include/libcw/class_location.h:1.3
--- src/libcwd/include/libcw/class_location.h:1.2 Sat Dec 29 20:17:50 2001
+++ src/libcwd/include/libcw/class_location.h Tue Jan 8 15:04:59 2002
@@ -1,4 +1,4 @@
-// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/class_location.h,v 1.2 2001/12/30 04:17:50 libcw Exp $
+// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/class_location.h,v 1.3 2002/01/08 23:04:59 libcw Exp $
//
// Copyright (C) 2000 - 2001, by
//
@@ -64,7 +64,7 @@
public:
location_ct(void const* addr);
// Construct a location object for address `addr'.
-#ifdef _REENTRANT
+#ifdef LIBCWD_THREAD_SAFE
location_ct(void const* addr LIBCWD_COMMA_TSD_PARAM);
// Idem, but with passing the TSD.
#endif
Index: src/libcwd/include/libcw/class_location.inl
diff -u src/libcwd/include/libcw/class_location.inl:1.2 src/libcwd/include/libcw/class_location.inl:1.3
--- src/libcwd/include/libcw/class_location.inl:1.2 Sat Dec 29 20:17:50 2001
+++ src/libcwd/include/libcw/class_location.inl Tue Jan 8 15:04:59 2002
@@ -1,4 +1,4 @@
-// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/class_location.inl,v 1.2 2001/12/30 04:17:50 libcw Exp $
+// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/class_location.inl,v 1.3 2002/01/08 23:04:59 libcw Exp $
//
// Copyright (C) 2000 - 2001, by
//
@@ -48,7 +48,7 @@
M_pc_location(addr LIBCWD_COMMA_TSD);
}
-#ifdef _REENTRANT
+#ifdef LIBCWD_THREAD_SAFE
/**
* \brief Construct a location for address \p addr.
* \internal
Index: src/libcwd/include/libcw/debug_config.ho.in
diff -u src/libcwd/include/libcw/debug_config.ho.in:1.14 src/libcwd/include/libcw/debug_config.ho.in:1.15
--- src/libcwd/include/libcw/debug_config.ho.in:1.14 Sat Dec 29 20:17:50 2001
+++ src/libcwd/include/libcw/debug_config.ho.in Tue Jan 8 15:04:59 2002
@@ -1,5 +1,5 @@
// @configure_input@
-// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/debug_config.ho.in,v 1.14 2001/12/30 04:17:50 libcw Exp $
+// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/debug_config.ho.in,v 1.15 2002/01/08 23:04:59 libcw Exp $
//
// Copyright (C) 2000 - 2001, by
//
@@ -338,6 +338,7 @@
#@CW_CONFIG_HAVE_DLOPEN@ CWDEBUG_DLOPEN_DEFINED
#endif
+#@CW_CONFIG_THREAD_SAFE@ LIBCWD_THREAD_SAFE
#@CW_CONFIG_HAVE_PTHREADS@ LIBCWD_HAVE_PTHREAD
#endif // LIBCW_DEBUG_CONFIG_H
Index: src/libcwd/include/libcw/macro_AllocTag.h
diff -u src/libcwd/include/libcw/macro_AllocTag.h:1.3 src/libcwd/include/libcw/macro_AllocTag.h:1.4
--- src/libcwd/include/libcw/macro_AllocTag.h:1.3 Thu Jan 3 20:43:38 2002
+++ src/libcwd/include/libcw/macro_AllocTag.h Tue Jan 8 15:04:59 2002
@@ -1,4 +1,4 @@
-// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/macro_AllocTag.h,v 1.3 2002/01/04 04:43:38 libcw Exp $
+// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/macro_AllocTag.h,v 1.4 2002/01/08 23:04:59 libcw Exp $
//
// Copyright (C) 2000 - 2001, by
//
@@ -147,16 +147,16 @@
#define AllocTag2(p, desc) ::libcw::debug::\
set_alloc_label(p, ::libcw::debug::type_info_of(p), const_cast<char const*>(desc))
-#ifdef _REENTRANT
+#ifdef LIBCWD_THREAD_SAFE
#define LIBCWD_LOCK_desc__if_still_NULL_then ::libcw::debug::_private_::\
mutex_tct< ::libcw::debug::_private_::alloc_tag_desc_instance>::lock(); \
if (!desc)
#define LIBCWD_UNLOCK_desc ::libcw::debug::_private_::\
mutex_tct< ::libcw::debug::_private_::alloc_tag_desc_instance>::unlock();
-#else // !_REENTRANT
+#else // !LIBCWD_THREAD_SAFE
#define LIBCWD_LOCK_desc__if_still_NULL_then
#define LIBCWD_UNLOCK_desc
-#endif // !_REENTRANT
+#endif // !LIBCWD_THREAD_SAFE
/**
* \brief Annotate <I>type</I> of \a p with a static description.
Index: src/libcwd/include/libcw/macro_ForAllDebugChannels.h
diff -u src/libcwd/include/libcw/macro_ForAllDebugChannels.h:1.2 src/libcwd/include/libcw/macro_ForAllDebugChannels.h:1.3
--- src/libcwd/include/libcw/macro_ForAllDebugChannels.h:1.2 Sat Dec 29 20:17:50 2001
+++ src/libcwd/include/libcw/macro_ForAllDebugChannels.h Tue Jan 8 15:04:59 2002
@@ -1,4 +1,4 @@
-// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/macro_ForAllDebugChannels.h,v 1.2 2001/12/30 04:17:50 libcw Exp $
+// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/macro_ForAllDebugChannels.h,v 1.3 2002/01/08 23:04:59 libcw Exp $
//
// Copyright (C) 2000 - 2001, by
//
@@ -45,7 +45,7 @@
container_type* WNS_debug_channels;
public:
void init(void);
-#ifdef _REENTRANT
+#ifdef LIBCWD_THREAD_SAFE
void init_and_rdlock(void);
#endif
container_type& write_locked(void);
@@ -78,15 +78,15 @@
} // namespace debug
} // namespace libcw
-#ifdef _REENTRANT
+#ifdef LIBCWD_THREAD_SAFE
#define LIBCWD_ForAllDebugChannels_LOCK ::libcw::debug::_private_::\
debug_channels.init_and_rdlock();
#define LIBCWD_ForAllDebugChannels_UNLOCK ::libcw::debug::_private_::\
rwlock_tct< ::libcw::debug::_private_::debug_channels_instance>::rdunlock();
-#else // !_REENTRANT
+#else // !LIBCWD_THREAD_SAFE
#define LIBCWD_ForAllDebugChannels_LOCK ::libcw::debug::_private_::debug_channels.init();
#define LIBCWD_ForAllDebugChannels_UNLOCK
-#endif // !_REENTRANT
+#endif // !LIBCWD_THREAD_SAFE
/**
* \def ForAllDebugChannels
Index: src/libcwd/include/libcw/macro_ForAllDebugObjects.h
diff -u src/libcwd/include/libcw/macro_ForAllDebugObjects.h:1.2 src/libcwd/include/libcw/macro_ForAllDebugObjects.h:1.3
--- src/libcwd/include/libcw/macro_ForAllDebugObjects.h:1.2 Sat Dec 29 20:17:50 2001
+++ src/libcwd/include/libcw/macro_ForAllDebugObjects.h Tue Jan 8 15:04:59 2002
@@ -1,4 +1,4 @@
-// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/macro_ForAllDebugObjects.h,v 1.2 2001/12/30 04:17:50 libcw Exp $
+// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/macro_ForAllDebugObjects.h,v 1.3 2002/01/08 23:04:59 libcw Exp $
//
// Copyright (C) 2000 - 2001, by
//
@@ -47,7 +47,7 @@
container_type* WNS_debug_objects;
public:
void init(void);
-#ifdef _REENTRANT
+#ifdef LIBCWD_THREAD_SAFE
void init_and_rdlock(void);
#endif
void ST_uninit(void);
@@ -81,15 +81,15 @@
} // namespace debug
} // namespace libcw
-#ifdef _REENTRANT
+#ifdef LIBCWD_THREAD_SAFE
#define LIBCWD_ForAllDebugObjects_LOCK ::libcw::debug::_private_::\
debug_objects.init_and_rdlock();
#define LIBCWD_ForAllDebugObjects_UNLOCK ::libcw::debug::_private_::\
rwlock_tct< ::libcw::debug::_private_::debug_objects_instance>::rdunlock();
-#else // !_REENTRANT
+#else // !LIBCWD_THREAD_SAFE
#define LIBCWD_ForAllDebugObjects_LOCK ::libcw::debug::_private_::debug_objects.init();
#define LIBCWD_ForAllDebugObjects_UNLOCK
-#endif // !_REENTRANT
+#endif // !LIBCWD_THREAD_SAFE
/**
* \def ForAllDebugObjects
Index: src/libcwd/include/libcw/private_TSD.h
diff -u src/libcwd/include/libcw/private_TSD.h:1.3 src/libcwd/include/libcw/private_TSD.h:1.4
--- src/libcwd/include/libcw/private_TSD.h:1.3 Tue Jan 8 10:14:38 2002
+++ src/libcwd/include/libcw/private_TSD.h Tue Jan 8 15:04:59 2002
@@ -1,4 +1,4 @@
-// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/private_TSD.h,v 1.3 2002/01/08 18:14:38 libcw Exp $
+// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/private_TSD.h,v 1.4 2002/01/08 23:04:59 libcw Exp $
//
// Copyright (C) 2001, by
//
@@ -46,8 +46,8 @@
// Thread Specific Data (TSD) is stored in a structure TSD_st
// and is accessed through a reference to `__libcwd_tsd'.
-#ifndef _REENTRANT
-// When _REENTRANT is not defined then `__libcwd_tsd' is simply a global object in namespace _private_:
+#ifndef LIBCWD_THREAD_SAFE
+// When LIBCWD_THREAD_SAFE is not defined then `__libcwd_tsd' is simply a global object in namespace _private_:
extern TSD_st __libcwd_tsd;
#endif
extern int WST_initializing_TSD;
@@ -60,7 +60,7 @@
// (see LIBCWD_TSD_DECLARATION) or function parameter (LIBCWD_TSD_PARAM and LIBCWD_COMMA_TSD_PARAM).
// This approach means that many function signatures are different because with thread support a
// `__libcwd_tsd' reference needs to be passed. We use several helper macros for this:
-#ifdef _REENTRANT
+#ifdef LIBCWD_THREAD_SAFE
#define LIBCWD_TSD __libcwd_tsd // Optional `__libcwd_tsd' parameter
// (foo() or foo(__libcwd_tsd)).
@@ -70,7 +70,7 @@
// (foo(void) or foo(TSD_st& __libcwd_tsd)).
#define LIBCWD_COMMA_TSD_PARAM , LIBCWD_TSD_PARAM
// Idem, but as second or higher parameter.
-#else // !_REENTRANT
+#else // !LIBCWD_THREAD_SAFE
#define LIBCWD_TSD
#define LIBCWD_COMMA_TSD
@@ -78,9 +78,9 @@
#define LIBCWD_COMMA_TSD_PARAM
// Put __libcwd_tsd in global namespace because anywhere we always refer to it
-// as `__libcwd_tsd' because when _REENTRANT is defined it is local variable.
+// as `__libcwd_tsd' because when LIBCWD_THREAD_SAFE is defined it is local variable.
using ::libcw::debug::_private_::__libcwd_tsd;
-#endif // !_REENTRANT
+#endif // !LIBCWD_THREAD_SAFE
#endif // LIBCW_TSD_H
Index: src/libcwd/include/libcw/private_allocator.h
diff -u src/libcwd/include/libcw/private_allocator.h:1.2 src/libcwd/include/libcw/private_allocator.h:1.3
--- src/libcwd/include/libcw/private_allocator.h:1.2 Sat Dec 29 20:17:50 2001
+++ src/libcwd/include/libcw/private_allocator.h Tue Jan 8 15:04:59 2002
@@ -1,4 +1,4 @@
-// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/private_allocator.h,v 1.2 2001/12/30 04:17:50 libcw Exp $
+// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/private_allocator.h,v 1.3 2002/01/08 23:04:59 libcw Exp $
//
// Copyright (C) 2001, by
//
@@ -116,7 +116,7 @@
if ((__libcwd_tsd.internal > 0) != internal)
core_dump();
#endif
-#if defined(DEBUGDEBUG) && defined(_REENTRANT)
+#if defined(DEBUGDEBUG) && defined(LIBCWD_THREAD_SAFE)
if (instance == single_threaded_internal_instance && WST_multi_threaded)
core_dump();
if (instance >= 0 && WST_multi_threaded && !is_locked(instance))
@@ -236,32 +236,32 @@
true \
LIBCWD_DEBUGDEBUG_COMMA(::libcw::debug::_private_::instance)>
-#ifdef _REENTRANT
+#ifdef LIBCWD_THREAD_SAFE
// Our allocator adaptor for the Non-Shared internal cases: Single Threaded
// (inst = single_threaded_internal_instance) or inside the critical area of the corresponding
// libcwd mutex instance. Using a macro here instead of another template in order not to bloat the
// mangling TOO much.
#define LIBCWD_NS_INTERNAL_ALLOCATOR(instance) \
DEFAULT_ALLOC_INTERNAL(instance)
-#else // !_REENTRANT
+#else // !LIBCWD_THREAD_SAFE
// In a single threaded application, the Non_shared case is equivalent to the Single Threaded case.
#define LIBCWD_NS_INTERNAL_ALLOCATOR(instance) \
DEFAULT_ALLOC_INTERNAL(single_threaded_internal_instance)
-#endif // !_REENTRANT
+#endif // !LIBCWD_THREAD_SAFE
-#ifdef _REENTRANT
+#ifdef LIBCWD_THREAD_SAFE
// LIBCWD_MT_*_ALLOCATOR uses an different allocator than the normal default allocator of libstdc++
// in the case of multi-threading because it can be that the allocator mutex is locked, which would
// result in a deadlock if we try to use it again here.
#define LIBCWD_MT_INTERNAL_ALLOCATOR DEFAULT_ALLOC_INTERNAL(multi_threaded_internal_instance)
#define LIBCWD_MT_USERSPACE_ALLOCATOR DEFAULT_ALLOC_USRSPACE(multi_threaded_usrspace_instance)
-#else // !_REENTRANT
+#else // !LIBCWD_THREAD_SAFE
// LIBCWD_MT_*_ALLOCATOR uses the normal default allocator of libstdc++-v3 (alloc) using locking
// itself. The userspace allocator shares it memory pool with everything else (that uses this
// allocator, which is most of the (userspace) STL).
#define LIBCWD_MT_INTERNAL_ALLOCATOR DEFAULT_ALLOC_INTERNAL(single_threaded_internal_instance)
#define LIBCWD_MT_USERSPACE_ALLOCATOR DEFAULT_ALLOC_USRSPACE(single_threaded_userspace_instance)
-#endif // !_REENTRANT
+#endif // !LIBCWD_THREAD_SAFE
//---------------------------------------------------------------------------------------------------
// Internal allocator types.
Index: src/libcwd/include/libcw/private_threading.h
diff -u src/libcwd/include/libcw/private_threading.h:1.4 src/libcwd/include/libcw/private_threading.h:1.5
--- src/libcwd/include/libcw/private_threading.h:1.4 Tue Jan 8 10:14:38 2002
+++ src/libcwd/include/libcw/private_threading.h Tue Jan 8 15:04:59 2002
@@ -1,4 +1,4 @@
-// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/private_threading.h,v 1.4 2002/01/08 18:14:38 libcw Exp $
+// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/private_threading.h,v 1.5 2002/01/08 23:04:59 libcw Exp $
//
// Copyright (C) 2001, by
//
@@ -63,7 +63,7 @@
} // namespace debug
} // namespace libcw
-#ifdef _REENTRANT
+#ifdef LIBCWD_THREAD_SAFE
#define LIBCWD_TSD_INSTANCE ::libcw::debug::_private_::\
thread_specific_data_tct< ::libcw::debug::_private_::TSD_st>::instance()
// For directly passing the `__libcwd_tsd' instance to a function (foo(TSD::instance())).
@@ -73,16 +73,16 @@
TSD_st& __libcwd_tsd(::libcw::debug::_private_::\
thread_specific_data_tct< ::libcw::debug::_private_::TSD_st>::instance());
// Declaration of local `__libcwd_tsd' structure reference.
-#else // !_REENTRANT
+#else // !LIBCWD_THREAD_SAFE
#define LIBCWD_TSD_INSTANCE
#define LIBCWD_COMMA_TSD_INSTANCE
#define LIBCWD_TSD_DECLARATION
-#endif // !_REENTRANT
+#endif // !LIBCWD_THREAD_SAFE
// End of Thread Specific Data
//===================================================================================================
-#ifdef _REENTRANT
+#ifdef LIBCWD_THREAD_SAFE
namespace libcw {
namespace debug {
@@ -492,6 +492,6 @@
} // namespace debug
} // namespace libcw
-#endif // _REENTRANT
+#endif // LIBCWD_THREAD_SAFE
#endif // LIBCW_PRIVATE_THREADING_H
Index: src/libcwd/include/libcw/sysd.ho.in
diff -u src/libcwd/include/libcw/sysd.ho.in:1.4 src/libcwd/include/libcw/sysd.ho.in:1.5
--- src/libcwd/include/libcw/sysd.ho.in:1.4 Sat Dec 29 20:17:50 2001
+++ src/libcwd/include/libcw/sysd.ho.in Tue Jan 8 15:04:59 2002
@@ -1,5 +1,5 @@
// @configure_input@
-// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/sysd.ho.in,v 1.4 2001/12/30 04:17:50 libcw Exp $
+// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/sysd.ho.in,v 1.5 2002/01/08 23:04:59 libcw Exp $
//
// Copyright (C) 2000 - 2001, by
//
@@ -55,15 +55,19 @@
//
// Abort when someone tries to use MT with libcwd without MT support.
-#if defined(_REENTRANT) && !(@CW_CONFIG_THREAD_SAFE@)
+#@CW_CONFIG_THREAD_SAFE@ LIBCWD_TMP_THREAD_SAFE
+#if defined(_REENTRANT) && !defined(LIBCWD_TMP_THREAD_SAFE)
#error "Recompile libcwd with --enable-threading to enable support for Multi-Threading."
#endif
-#ifdef _REENTRANT
+#ifdef LIBCWD_TMP_THREAD_SAFE
// See http://www.cuj.com/experts/1902/alexandr.htm?topic=experts
#define LIBCWD_MT_VOLATILE volatile
#else
#define LIBCWD_MT_VOLATILE
#endif
+
+// Was only needed for the two tests above.
+#undef LIBCWD_TMP_THREAD_SAFE
#endif /* LIBCW_SYSD_H */
Index: src/libcwd/include/libcw/type_info.h
diff -u src/libcwd/include/libcw/type_info.h:1.15 src/libcwd/include/libcw/type_info.h:1.16
--- src/libcwd/include/libcw/type_info.h:1.15 Sat Dec 29 20:17:50 2001
+++ src/libcwd/include/libcw/type_info.h Tue Jan 8 15:04:59 2002
@@ -1,4 +1,4 @@
-// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/type_info.h,v 1.15 2001/12/30 04:17:50 libcw Exp $
+// $Header: /cvsroot/l/li/libcw/src/libcwd/include/libcw/type_info.h,v 1.16 2002/01/08 23:04:59 libcw Exp $
//
// Copyright (C) 2000 - 2001, by
//
@@ -218,7 +218,7 @@
// We have to use the following hack.
if (::libcwd_type_info_exact<T>::value_c.size() == 0) // Not initialized already?
{
-#ifdef _REENTRANT
+#ifdef LIBCWD_THREAD_SAFE
volatile static bool spin_lock = false;
_private_::mutex_tct<_private_::type_info_of_instance>::lock();
while(spin_lock);
@@ -231,7 +231,7 @@
new (const_cast<type_info_ct*>(&::libcwd_type_info_exact<T>::value_c)) // MT: const_cast is safe: we are locked.
type_info_ct(_private_::extract_exact_name(typeid(::libcwd_type_info_exact<T>).name() LIBCWD_COMMA_TSD), sizeof(T), _private_::sizeof_star<T>::value_c); // In place initialize the static type_info_ct object.
}
-#ifdef _REENTRANT
+#ifdef LIBCWD_THREAD_SAFE
spin_lock = false;
#endif
}
Index: src/libcwd/include/sys.ho.in
diff -u src/libcwd/include/sys.ho.in:1.6 src/libcwd/include/sys.ho.in:1.7
--- src/libcwd/include/sys.ho.in:1.6 Sat Jan 5 07:06:48 2002
+++ src/libcwd/include/sys.ho.in Tue Jan 8 15:04:59 2002
@@ -1,5 +1,5 @@
// @configure_input@
-// $Header: /cvsroot/l/li/libcw/src/libcwd/include/sys.ho.in,v 1.6 2002/01/05 15:06:48 libcw Exp $
+// $Header: /cvsroot/l/li/libcw/src/libcwd/include/sys.ho.in,v 1.7 2002/01/08 23:04:59 libcw Exp $
//
// Copyright (C) 2000 - 2001, by
//
@@ -22,13 +22,6 @@
//
#ifndef _GNU_SOURCE
#define _GNU_SOURCE
-#endif
-
-//
-// Define _REENTRANT to make sure that the glibc functions are thread safe too.
-//
-#ifdef LIBCWD_THREAD_SAFE
-#define _REENTRANT
#endif
//
----------------------- End of diff -----------------------
|
|
From: Carlo W. <li...@us...> - 2002-01-08 23:39:29
|
CVSROOT : /cvsroot/libcw
Module : src
Commit time: 2002-00-08 23:39:28 UTC
Modified files:
libcwd/configure.in
Log message:
AC_SEARCH_LIBS fails when the language is set to C++.
---------------------- diff included ----------------------
Index: src/libcwd/configure.in
diff -u src/libcwd/configure.in:1.93 src/libcwd/configure.in:1.94
--- src/libcwd/configure.in:1.93 Tue Jan 8 15:04:58 2002
+++ src/libcwd/configure.in Tue Jan 8 15:39:18 2002
@@ -1,5 +1,5 @@
dnl Process this file with autoconf to produce a configure script.
-AC_REVISION($Revision: 1.93 $)dnl
+AC_REVISION($Revision: 1.94 $)dnl
dnl General intialization of `autoconf' varaibles.
dnl Ensure that the directory specified with --srcdir was correct
@@ -340,7 +340,9 @@
dnl Check if we have POSIX threads
EXTRAOPTS="$EXTRAOPTS -pthread"
- CXXFLAGS="$DEBUGOPTS $EXTRAOPTS"
+ AC_LANG_SAVE
+ AC_LANG_C
+ CFLAGS="$DEBUGOPTS $EXTRAOPTS"
AC_SEARCH_LIBS(pthread_create, pthread,
[AC_CHECK_HEADER(pthread.h,
[CW_CONFIG_HAVE_PTHREADS=define],
@@ -356,7 +358,7 @@
* include posix threads by itself and I can't find -lpthread.
* Use --disable-libcwd-threading to compile a libcwd that is not thread safe.
])])
-
+ AC_LANG_RESTORE
CW_CONFIG_THREAD_SAFE=define
SAVE_LIBS="$LIBS"
LIBS="$LIBS $LIB_THREADS"
----------------------- End of diff -----------------------
|
|
From: Carlo W. <li...@us...> - 2002-01-08 23:47:03
|
CVSROOT : /cvsroot/libcw
Module : src
Commit time: 2002-00-08 23:47:02 UTC
Added files:
libcwd/nodebug.h
Log message:
Ugh - forgot to add this file (long time ago).
---------------------- diff included ----------------------
Index: src/libcwd/nodebug.h
diff -u /dev/null src/libcwd/nodebug.h:1.2
--- /dev/null Tue Jan 8 15:47:02 2002
+++ src/libcwd/nodebug.h Tue Jan 8 15:46:52 2002
@@ -0,0 +1,13 @@
+#define AllocTag1(p)
+#define AllocTag2(p, desc)
+#define AllocTag_dynamic_description(p, x)
+#define AllocTag(p, x)
+#define Debug(x)
+#define Dout(a, b)
+#define DoutFatal(a, b) LibcwDoutFatal(::std, , a, b)
+#define ForAllDebugChannels(STATEMENT)
+#define ForAllDebugObjects(STATEMENT)
+#define LibcwDebug(dc_namespace, x)
+#define LibcwDout(a, b, c, d)
+#define LibcwDoutFatal(a, b, c, d) do { ::std::cerr << d << ::std::endl; ::std::exit(254); } while(1)
+#define NEW(x) new x
----------------------- End of diff -----------------------
|
|
From: Carlo W. <li...@us...> - 2002-01-08 23:50:27
|
CVSROOT : /cvsroot/libcw
Module : src
Commit time: 2002-00-08 23:50:26 UTC
Modified files:
libcwd/debug.cc
Log message:
Missing define.
---------------------- diff included ----------------------
Index: src/libcwd/debug.cc
diff -u src/libcwd/debug.cc:1.50 src/libcwd/debug.cc:1.51
--- src/libcwd/debug.cc:1.50 Sun Dec 30 12:55:42 2001
+++ src/libcwd/debug.cc Tue Jan 8 15:50:16 2002
@@ -1,4 +1,4 @@
-// $Header: /cvsroot/l/li/libcw/src/libcwd/debug.cc,v 1.50 2001/12/30 20:55:42 libcw Exp $
+// $Header: /cvsroot/l/li/libcw/src/libcwd/debug.cc,v 1.51 2002/01/08 23:50:16 libcw Exp $
//
// Copyright (C) 2000 - 2001, by
//
@@ -448,7 +448,7 @@
*/
void core_dump(void)
{
-#ifdef LIBCWD_THREAD_SAFE
+#if defined(LIBCWD_THREAD_SAFE) && defined(HAVE_PTHREAD_KILL_OTHER_THREADS_NP)
pthread_kill_other_threads_np();
#endif
raise(6);
----------------------- End of diff -----------------------
|
|
From: Carlo W. <li...@us...> - 2002-01-09 01:00:30
|
CVSROOT : /cvsroot/libcw
Module : src
Commit time: 2002-00-09 01:00:29 UTC
Modified files:
libcwd/testsuite/lib/libcwd.exp
Log message:
Remove warnings from FreeBSD linker...
---------------------- diff included ----------------------
Index: src/libcwd/testsuite/lib/libcwd.exp
diff -u src/libcwd/testsuite/lib/libcwd.exp:1.9 src/libcwd/testsuite/lib/libcwd.exp:1.10
--- src/libcwd/testsuite/lib/libcwd.exp:1.9 Thu Jan 3 20:22:33 2002
+++ src/libcwd/testsuite/lib/libcwd.exp Tue Jan 8 17:00:18 2002
@@ -65,7 +65,16 @@
set errname "$errname $compile_args"
}
- if { [target_compile $srcfile "$executable" executable $args] != "" } {
+ set compileroutput "[target_compile $srcfile "$executable" executable $args]"
+ # Kludge to remove linker _warnings_ from output.
+ # The expected from is: /usr/lib/libc.so.4: warning: ...
+ # or: /usr/lib/libc.so.4: WARNING! ...
+ regsub -- "\[._/a-zA-Z0-9 :\]*: \[Ww\]\[Aa\]\[Rr\]\[Nn\]\[Ii\]\[Nn\]\[Gg\]\[!:\]\[`'.,!_/a-zA-Z0-9 ():;\]*." "$compileroutput" "" compileroutput
+ # Remove final new-line at the end if any:
+ regsub -- "\[^`'.,!_/a-zA-Z0-9 ():;\]$" "$compileroutput" "" compileroutput
+ verbose "Filtered compiler output is: `$compileroutput'"
+
+ if { "$compileroutput" != "" } {
fail "$errname $staticorshared compilation"
setup_xfail "*-*-*"
fail "$errname $staticorshared execution"
----------------------- End of diff -----------------------
|
|
From: Carlo W. <li...@us...> - 2002-01-09 01:18:13
|
CVSROOT : /cvsroot/libcw
Module : src
Commit time: 2002-00-09 01:18:12 UTC
Modified files:
libcwd/testsuite/lib/libcwd.exp
Log message:
Bug fix.
---------------------- diff included ----------------------
Index: src/libcwd/testsuite/lib/libcwd.exp
diff -u src/libcwd/testsuite/lib/libcwd.exp:1.10 src/libcwd/testsuite/lib/libcwd.exp:1.11
--- src/libcwd/testsuite/lib/libcwd.exp:1.10 Tue Jan 8 17:00:18 2002
+++ src/libcwd/testsuite/lib/libcwd.exp Tue Jan 8 17:18:02 2002
@@ -69,9 +69,9 @@
# Kludge to remove linker _warnings_ from output.
# The expected from is: /usr/lib/libc.so.4: warning: ...
# or: /usr/lib/libc.so.4: WARNING! ...
- regsub -- "\[._/a-zA-Z0-9 :\]*: \[Ww\]\[Aa\]\[Rr\]\[Nn\]\[Ii\]\[Nn\]\[Gg\]\[!:\]\[`'.,!_/a-zA-Z0-9 ():;\]*." "$compileroutput" "" compileroutput
- # Remove final new-line at the end if any:
- regsub -- "\[^`'.,!_/a-zA-Z0-9 ():;\]$" "$compileroutput" "" compileroutput
+ regsub -all -line -nocase -- "^.*: warning\[!:\].*$" "$compileroutput" "" compileroutput
+ # Finally remove all new-lines if any:
+ regsub -- "^\[^`'.,!_/a-zA-Z0-9 ():;\]*$" "$compileroutput" "" compileroutput
verbose "Filtered compiler output is: `$compileroutput'"
if { "$compileroutput" != "" } {
----------------------- End of diff -----------------------
|
|
From: Carlo W. <li...@us...> - 2002-01-09 01:38:08
|
CVSROOT : /cvsroot/libcw
Module : src
Commit time: 2002-00-09 01:38:08 UTC
Modified files:
libcwd/Makefile.am
Log message:
Attempt to fix an infinite loop with GNU make 3.79.1.
---------------------- diff included ----------------------
Index: src/libcwd/Makefile.am
diff -u src/libcwd/Makefile.am:1.39 src/libcwd/Makefile.am:1.40
--- src/libcwd/Makefile.am:1.39 Tue Jan 8 11:16:37 2002
+++ src/libcwd/Makefile.am Tue Jan 8 17:37:57 2002
@@ -1,4 +1,5 @@
## Process this file with automake to generate Makefile.in
+.PHONY: example-project_debug.h
AUTOMAKE_OPTIONS = foreign
----------------------- End of diff -----------------------
|
|
From: Carlo W. <li...@us...> - 2002-01-09 01:42:32
|
CVSROOT : /cvsroot/libcw
Module : src
Commit time: 2002-00-09 01:42:31 UTC
Modified files:
libcwd/Makefile.am libcwd/maintMakefile.in
Log message:
Second attempt to break infinite loop.
---------------------- diff included ----------------------
Index: src/libcwd/Makefile.am
diff -u src/libcwd/Makefile.am:1.40 src/libcwd/Makefile.am:1.41
--- src/libcwd/Makefile.am:1.40 Tue Jan 8 17:37:57 2002
+++ src/libcwd/Makefile.am Tue Jan 8 17:42:21 2002
@@ -1,11 +1,10 @@
## Process this file with automake to generate Makefile.in
-.PHONY: example-project_debug.h
AUTOMAKE_OPTIONS = foreign
SUBDIRS = include utils . tests testsuite
-BUILT_SOURCES =@MAINTAINER_MODE_TRUE@ libcwd.lsm libcwd.spec example-project_debug.h
+BUILT_SOURCES =@MAINTAINER_MODE_TRUE@ libcwd.lsm libcwd.spec .example-project_debug.h-timestamp
EXTRA_DIST = LICENSE.QPL README.FreeBSD README.openbsd nodebug.h $(BUILT_SOURCES)
DISTCLEANFILES = libcwd-@VERSION@.tar.gz
Index: src/libcwd/maintMakefile.in
diff -u src/libcwd/maintMakefile.in:1.17 src/libcwd/maintMakefile.in:1.18
--- src/libcwd/maintMakefile.in:1.17 Tue Jan 8 11:16:37 2002
+++ src/libcwd/maintMakefile.in Tue Jan 8 17:42:21 2002
@@ -151,5 +151,6 @@
documentation: example-project/debug.h
$(MAKE) -C documentation
-example-project_debug.h: example-project/debug.h
+.example-project_debug.h-timestamp: example-project/debug.h
+ touch .example-project_debug.h-timestamp
----------------------- End of diff -----------------------
|
|
From: Carlo W. <li...@us...> - 2002-01-09 02:21:04
|
CVSROOT : /cvsroot/libcw
Module : src
Commit time: 2002-00-09 02:21:03 UTC
Modified files:
libcwd/testsuite/libcwd.nodebug/nodebug.re
libcwd/testsuite/libcwd.threads/keys.re
libcwd/testsuite/libcwd.tst/alloctag.re
libcwd/testsuite/libcwd.tst/basic.re
libcwd/testsuite/libcwd.tst/bfd.re
libcwd/testsuite/libcwd.tst/cf.re
libcwd/testsuite/libcwd.tst/continued.re
libcwd/testsuite/libcwd.tst/dc.re
libcwd/testsuite/libcwd.tst/demangler.re
libcwd/testsuite/libcwd.tst/do.re
libcwd/testsuite/libcwd.tst/flush.re
libcwd/testsuite/libcwd.tst/leak.re
libcwd/testsuite/libcwd.tst/lockable_auto_ptr.re
libcwd/testsuite/libcwd.tst/magic.re
libcwd/testsuite/libcwd.tst/marker.re
libcwd/testsuite/libcwd.tst/strdup.re
libcwd/testsuite/libcwd.tst/test_delete.re
libcwd/testsuite/libcwd.tst/type_info.re
Log message:
Make both, core limited msg and BFD loading... msg optional.
---------------------- diff included ----------------------
Index: src/libcwd/testsuite/libcwd.nodebug/nodebug.re
diff -u src/libcwd/testsuite/libcwd.nodebug/nodebug.re:1.9 src/libcwd/testsuite/libcwd.nodebug/nodebug.re:1.10
--- src/libcwd/testsuite/libcwd.nodebug/nodebug.re:1.9 Wed Aug 22 16:40:26 2001
+++ src/libcwd/testsuite/libcwd.nodebug/nodebug.re Tue Jan 8 18:20:50 2002
@@ -1,8 +1,8 @@
// input lines 3
// output till ^(BFD : Warning|MALLOC)
((WARNING : core size is limited.*
-)*BFD : Loading debug info from.*
-)*
+)*(BFD : Loading debug info from.*
+)*)
MALLOC : operator new\[\] \(size = 400\) = <unfinished>
BFD : Warning: Address 0x[a-f0-9]+ in section \.text of object file "nodebug_nodebug_shared"
does not have a line number, perhaps the unit containing the function
Index: src/libcwd/testsuite/libcwd.threads/keys.re
diff -u src/libcwd/testsuite/libcwd.threads/keys.re:1.1 src/libcwd/testsuite/libcwd.threads/keys.re:1.2
--- src/libcwd/testsuite/libcwd.threads/keys.re:1.1 Tue Jan 8 10:14:39 2002
+++ src/libcwd/testsuite/libcwd.threads/keys.re Tue Jan 8 18:20:50 2002
@@ -1,7 +1,7 @@
// input lines 3
// output till ^WARNING
((WARNING : core size is limited.*
-)*BFD : Loading debug info from.*
-)*
+)*(BFD : Loading debug info from.*
+)*)
WARNING : Ok
q = 0x[0-9a-f]*; \*q = 123454321
Index: src/libcwd/testsuite/libcwd.tst/alloctag.re
diff -u src/libcwd/testsuite/libcwd.tst/alloctag.re:1.10 src/libcwd/testsuite/libcwd.tst/alloctag.re:1.11
--- src/libcwd/testsuite/libcwd.tst/alloctag.re:1.10 Sat Dec 29 20:17:51 2001
+++ src/libcwd/testsuite/libcwd.tst/alloctag.re Tue Jan 8 18:20:50 2002
@@ -1,8 +1,8 @@
// input lines 3
// output till ^BFD : Disabled
((WARNING : core size is limited.*
-)*BFD : Loading debug info from.*
-)*
+)*(BFD : Loading debug info from.*
+)*)
BFD : Disabled
DEBUG : Disabled
MALLOC : Enabled
Index: src/libcwd/testsuite/libcwd.tst/basic.re
diff -u src/libcwd/testsuite/libcwd.tst/basic.re:1.6 src/libcwd/testsuite/libcwd.tst/basic.re:1.7
--- src/libcwd/testsuite/libcwd.tst/basic.re:1.6 Wed Aug 22 16:40:26 2001
+++ src/libcwd/testsuite/libcwd.tst/basic.re Tue Jan 8 18:20:52 2002
@@ -1,6 +1,6 @@
// input lines 3
// output till ^NOTICE
((WARNING : core size is limited.*
-)*BFD : Loading debug info from.*
-)*
+)*(BFD : Loading debug info from.*
+)*)
NOTICE : Basic Test\.
Index: src/libcwd/testsuite/libcwd.tst/bfd.re
diff -u src/libcwd/testsuite/libcwd.tst/bfd.re:1.24 src/libcwd/testsuite/libcwd.tst/bfd.re:1.25
--- src/libcwd/testsuite/libcwd.tst/bfd.re:1.24 Sat Dec 29 20:17:51 2001
+++ src/libcwd/testsuite/libcwd.tst/bfd.re Tue Jan 8 18:20:52 2002
@@ -2,9 +2,9 @@
// input lines 4
// output till ^BFD : address
((WARNING : core size is limited.*
-)*BFD : Loading debug info from .*/tst_bfd_s.....\.\.\. done \([0-9]+ symbols\)
+)*(BFD : Loading debug info from .*/tst_bfd_s.....\.\.\. done \([0-9]+ symbols\)
(BFD : Loading debug info from (.*\.so.* \(0x[0-9a-f]+\)|/usr/lib/libdl\.so\.1) \.\.\. (done \([0-9]+ symbols\)|No symbols found)
-)+)*
+)+)*)
BFD : address 0x[0-9a-f]+ corresponds to bfd\.cc:110
NOTICE : called from bfd\.cc:110
BFD : address 0x[0-9a-f]+ corresponds to bfd\.cc:118
Index: src/libcwd/testsuite/libcwd.tst/cf.re
diff -u src/libcwd/testsuite/libcwd.tst/cf.re:1.6 src/libcwd/testsuite/libcwd.tst/cf.re:1.7
--- src/libcwd/testsuite/libcwd.tst/cf.re:1.6 Wed Aug 22 16:40:26 2001
+++ src/libcwd/testsuite/libcwd.tst/cf.re Tue Jan 8 18:20:52 2002
@@ -1,8 +1,8 @@
// input lines 3
// output till ^MARGINNOTICE
((WARNING : core size is limited.*
-)*BFD : Loading debug info from.*
-)*
+)*(BFD : Loading debug info from.*
+)*)
// type exact
MARGINNOTICE MARKER xMARGINNOTICE MARKER yMARGINNOTICE MARKER z<newline>
MARGINNOTICE MARKER <no flags>
Index: src/libcwd/testsuite/libcwd.tst/continued.re
diff -u src/libcwd/testsuite/libcwd.tst/continued.re:1.8 src/libcwd/testsuite/libcwd.tst/continued.re:1.9
--- src/libcwd/testsuite/libcwd.tst/continued.re:1.8 Wed Aug 22 16:40:26 2001
+++ src/libcwd/testsuite/libcwd.tst/continued.re Tue Jan 8 18:20:52 2002
@@ -1,8 +1,8 @@
// input lines 3
// output till ^BAR : Enabled
((WARNING : core size is limited.*
-)*BFD : Loading debug info from.*
-)*
+)*(BFD : Loading debug info from.*
+)*)
BAR : Enabled
BFD : Disabled
DEBUG : Disabled
Index: src/libcwd/testsuite/libcwd.tst/dc.re
diff -u src/libcwd/testsuite/libcwd.tst/dc.re:1.6 src/libcwd/testsuite/libcwd.tst/dc.re:1.7
--- src/libcwd/testsuite/libcwd.tst/dc.re:1.6 Wed Aug 22 16:40:26 2001
+++ src/libcwd/testsuite/libcwd.tst/dc.re Tue Jan 8 18:20:52 2002
@@ -1,8 +1,8 @@
// input lines 3
// output till ^NOTICE
((WARNING : core size is limited.*
-)*BFD : Loading debug info from.*
-)*
+)*(BFD : Loading debug info from.*
+)*)
NOTICE : Debug channel Test\.
WARP : Custom channel Test\.
BFD : Disabled
Index: src/libcwd/testsuite/libcwd.tst/demangler.re
diff -u src/libcwd/testsuite/libcwd.tst/demangler.re:1.7 src/libcwd/testsuite/libcwd.tst/demangler.re:1.8
--- src/libcwd/testsuite/libcwd.tst/demangler.re:1.7 Sat Dec 29 20:17:51 2001
+++ src/libcwd/testsuite/libcwd.tst/demangler.re Tue Jan 8 18:20:52 2002
@@ -2,8 +2,8 @@
// input lines 3
// output till ^void
((WARNING : core size is limited.*
-)*BFD : Loading debug info from.*
-)*
+)*(BFD : Loading debug info from.*
+)*)
void libcw_app_ct::add_option<libcw_app_ct>\(void \(libcw_app_ct::\*\)\((libcw_app_ct\*, )*char const\*\), char const\*, char, char const\*, char const\*\)
(guard variable for libcw::\(anonymous namespace\)|libcw::{anonymous})::compiler_bug_workaround<(std::)*vector<libcw::omanip_id_tct<libcw::debug::memblk_types_manipulator_data_ct>, (std::)*allocator<libcw::omanip_id_tct<libcw::debug::memblk_types_manipulator_data_ct> > > >::ids
libcw::debug::cwprint_using_tct<libcw::_private_::GlobalObject> libcw::debug::cwprint_using<libcw::_private_::GlobalObject>\(libcw::_private_::GlobalObject const&, void \(libcw::_private_::GlobalObject::\*\)\((libcw::_private_::GlobalObject const\*, )*(std::)*ostream&\) const\)
Index: src/libcwd/testsuite/libcwd.tst/do.re
diff -u src/libcwd/testsuite/libcwd.tst/do.re:1.8 src/libcwd/testsuite/libcwd.tst/do.re:1.9
--- src/libcwd/testsuite/libcwd.tst/do.re:1.8 Sat Dec 29 20:17:51 2001
+++ src/libcwd/testsuite/libcwd.tst/do.re Tue Jan 8 18:20:52 2002
@@ -1,8 +1,8 @@
// input lines 3
// output till ^NOTICE
((WARNING : core size is limited.*
-)*BFD : Loading debug info from.*
-)*
+)*(BFD : Loading debug info from.*
+)*)
// type exact
NOTICE : Dout Turned on 1
DEBUG : Dout Turned on 2
Index: src/libcwd/testsuite/libcwd.tst/flush.re
diff -u src/libcwd/testsuite/libcwd.tst/flush.re:1.6 src/libcwd/testsuite/libcwd.tst/flush.re:1.7
--- src/libcwd/testsuite/libcwd.tst/flush.re:1.6 Wed Aug 22 16:40:26 2001
+++ src/libcwd/testsuite/libcwd.tst/flush.re Tue Jan 8 18:20:52 2002
@@ -1,8 +1,8 @@
// input lines 3
// output till ^NOTICE
((WARNING : core size is limited.*
-)*BFD : Loading debug info from.*
-)*
+)*(BFD : Loading debug info from.*
+)*)
// type exact
NOTICE : Generating tables part1... <sleeping><unfinished>
GENERATE: Inside generate_tables()
Index: src/libcwd/testsuite/libcwd.tst/leak.re
diff -u src/libcwd/testsuite/libcwd.tst/leak.re:1.11 src/libcwd/testsuite/libcwd.tst/leak.re:1.12
--- src/libcwd/testsuite/libcwd.tst/leak.re:1.11 Sat Dec 29 20:17:51 2001
+++ src/libcwd/testsuite/libcwd.tst/leak.re Tue Jan 8 18:20:52 2002
@@ -1,8 +1,8 @@
// input lines 3
// output till ^MALLOC
((WARNING : core size is limited.*
-)*BFD : Loading debug info from.*
-)*
+)*(BFD : Loading debug info from.*
+)*)
MALLOC : malloc\(1111\) = 0x[0-9a-f]*
MALLOC : malloc\(2222\) = 0x[0-9a-f]*
MALLOC : malloc\(3333\) = 0x[0-9a-f]*
Index: src/libcwd/testsuite/libcwd.tst/lockable_auto_ptr.re
diff -u src/libcwd/testsuite/libcwd.tst/lockable_auto_ptr.re:1.6 src/libcwd/testsuite/libcwd.tst/lockable_auto_ptr.re:1.7
--- src/libcwd/testsuite/libcwd.tst/lockable_auto_ptr.re:1.6 Wed Aug 22 16:40:26 2001
+++ src/libcwd/testsuite/libcwd.tst/lockable_auto_ptr.re Tue Jan 8 18:20:52 2002
@@ -1,7 +1,7 @@
// input lines 3
// output till ^NOTICE
((WARNING : core size is limited.*
-)*BFD : Loading debug info from.*
-)*
+)*(BFD : Loading debug info from.*
+)*)
NOTICE : Test successful
Index: src/libcwd/testsuite/libcwd.tst/magic.re
diff -u src/libcwd/testsuite/libcwd.tst/magic.re:1.7 src/libcwd/testsuite/libcwd.tst/magic.re:1.8
--- src/libcwd/testsuite/libcwd.tst/magic.re:1.7 Wed Aug 22 16:40:26 2001
+++ src/libcwd/testsuite/libcwd.tst/magic.re Tue Jan 8 18:20:53 2002
@@ -1,6 +1,6 @@
// input lines 3
// output till ^COREDUMP
((WARNING : core size is limited.*
-)*BFD : Loading debug info from.*
-)*
+)*(BFD : Loading debug info from.*
+)*)
COREDUMP: You are 'delete\[\]'-ing a pointer \(0x[0-9a-f]*\) with a corrupt second magic number \(buffer overrun\?\)!
Index: src/libcwd/testsuite/libcwd.tst/marker.re
diff -u src/libcwd/testsuite/libcwd.tst/marker.re:1.9 src/libcwd/testsuite/libcwd.tst/marker.re:1.10
--- src/libcwd/testsuite/libcwd.tst/marker.re:1.9 Wed Aug 22 16:40:26 2001
+++ src/libcwd/testsuite/libcwd.tst/marker.re Tue Jan 8 18:20:53 2002
@@ -1,8 +1,8 @@
// input lines 3
// output till ^MALLOC
((WARNING : core size is limited.*
-)*BFD : Loading debug info from.*
-)*
+)*(BFD : Loading debug info from.*
+)*)
MALLOC : operator new \(size = 12\) = 0x[0-9a-f]*
MALLOC : operator new \(size = 1\) = 0x[0-9a-f]*
MALLOC : New libcw::debug::marker_ct at 0x[0-9a-f]*
Index: src/libcwd/testsuite/libcwd.tst/strdup.re
diff -u src/libcwd/testsuite/libcwd.tst/strdup.re:1.4 src/libcwd/testsuite/libcwd.tst/strdup.re:1.5
--- src/libcwd/testsuite/libcwd.tst/strdup.re:1.4 Wed Aug 22 16:40:26 2001
+++ src/libcwd/testsuite/libcwd.tst/strdup.re Tue Jan 8 18:20:53 2002
@@ -1,7 +1,7 @@
// input lines 3
// output till ^Best Story
((WARNING : core size is limited.*
-)*BFD : Loading debug info from.*
-)*
+)*(BFD : Loading debug info from.*
+)*)
// type exact
Best Story: "Songmaster", by Orson Scott Card.
Index: src/libcwd/testsuite/libcwd.tst/test_delete.re
diff -u src/libcwd/testsuite/libcwd.tst/test_delete.re:1.9 src/libcwd/testsuite/libcwd.tst/test_delete.re:1.10
--- src/libcwd/testsuite/libcwd.tst/test_delete.re:1.9 Sat Dec 29 20:17:51 2001
+++ src/libcwd/testsuite/libcwd.tst/test_delete.re Tue Jan 8 18:20:53 2002
@@ -1,8 +1,8 @@
// input lines 3
// output till ^MALLOC
((WARNING : core size is limited.*
-)*BFD : Loading debug info from.*
-)*
+)*(BFD : Loading debug info from.*
+)*)
MALLOC : operator new \(size = 1\) = 0x[0-9a-f]*
NOTICE : Before making allocation invisible:
MALLOC : Allocated memory: 1 bytes in 1 blocks.
Index: src/libcwd/testsuite/libcwd.tst/type_info.re
diff -u src/libcwd/testsuite/libcwd.tst/type_info.re:1.8 src/libcwd/testsuite/libcwd.tst/type_info.re:1.9
--- src/libcwd/testsuite/libcwd.tst/type_info.re:1.8 Wed Aug 22 16:40:27 2001
+++ src/libcwd/testsuite/libcwd.tst/type_info.re Tue Jan 8 18:20:53 2002
@@ -1,8 +1,8 @@
// input lines 3
// output till ^int : 0
((WARNING : core size is limited.*
-)*BFD : Loading debug info from.*
-)*
+)*(BFD : Loading debug info from.*
+)*)
// type exact
int : 0
int* : 4
----------------------- End of diff -----------------------
|