Chris Little | 1 Jul 02:49 2003

Re: CW8 on Mac OSX

on 6/30/03 10:58 AM, John Phillips at phillips <at>

> I was looking at the regerssion testing and I noticed that there are no
> results for Metrowerks Codewarrior 8 on Mac OS X. Is there a problem that
> leads to not including this result or is there just a lack of a test
> platform?
> If the problem is the lack of a test platform, I currently run CW8.3
> (The current latest version.) on Mac OS X 10.2.5 (Moving to 10.2.6 soon.),
> and I would be willing to try the tests. I cannot promise a timescale for
> this. I am a grad student and currently involved in a month long candidacy
> exam that started today, so my free time may be restricted for awhile.
> John


There isn't a problem I am aware beyond the usual lack of time.  I know that
it is on my to-do list to get CW8 configured to compile from the command
line (we use the IDE for everything at work) so I can run the regression
tests but it keeps sliding to the bottom of the list.


Unsubscribe & other changes:

Maxim Egorushkin | 1 Jul 07:19 2003

Re: Re: Re: Boost::thread feature request: thread priority

"William E. Kempf" <wekempf <at>> wrote in message
news:1960. <at>

> Now, what you're describing sounds more like this:
> class timer
> {
> public:
>    timer(boost::function<void> on_event, int ms, bool repeat=false);
> };
> Which do you really want?

Yes, this is what I needed.

> As for "the problem was that I could be sure that the scheduler thread
> would receive its time slice exactly every 250 ms", you simply can't do
> this, portably or not.  Granularity issues of the underlying clock aside,
> I'm not aware of any scheduler that would give you this sort of control,
> and fiddling with the priorities will only give you the illusion that
> you've accomplished what you want.

Totally agreed. I didn't solve the problem, rather I tryed to alleviate it.
You can look at it in the attachments. Finally, I switched to using win32
::CreateWaitableTimer() and ::RegisterWaitForSingleObject() functions.

begin 666 delayed_command_queue.cpp
(Continue reading)

Daryle Walker | 1 Jul 08:43 2003

Filtered stream-buffer, part 2

For the past few weeks, some posters were talking about streambufs that 
can decorate another stream buffer.  I wrote up a second version at 

It moves the calling functions to the stream buffer class.  It adds 
example filtering functions to the filter class.  Management controls 
in the filter class have been made private, with the stream buffer 
class as a friend, to minimize subversion.

There's a bunch of allocator and string declarations in the code 
unused.  I was thinking of using them as buffers for extra characters 
read and/or written when the remaining stream buffer functions are 


Unsubscribe & other changes:

Russell Hind | 1 Jul 10:00 2003

Re: thread::current() ?

Philippe A. Bouchard wrote:
>         lock()...
>         if (thread() == f1 || thread() == f2)
>         {
>                 thread()..(whatever casts)...m_list;
>         }
>         unlock()...
>         // I think the only way to do this is by mapping the thread's id 
>         //  with the object's address (map<key, functor1 *>) but there is
>         //  no standard key publicly accessible and map<> creates overhead.

Do you mean which thread is currently executing?  Both threads are 
effectively executing and you code here is inside a third thread and 
that is what thread() would actually return, not either thread1 or 
thread2.  Maybe I'm missing something.

More information about what you are trying to do would be helpful 
because currently I don't get it.



Unsubscribe & other changes:

(Continue reading)

Alexander Terekhov | 1 Jul 10:35 2003

Re: Draft of new Boost Software License

Ed Brey wrote:
> In the use case I am asking about, which is typical for shrink-wrap 
> software, only the libraries are pre-existing.  The main program, 
> the help files, and the read-me file are all brand new and they are 
> all created together and are used together.  It would be seem 
> artificial to break them into separate works, like breaking into 
> separate works chapters in a typical book.

You'd have a collective work if "your book" would include some
"chapter(s)"/portion(s) independently [in the sense of copyright 
law] written by others. Uhmm, a good example is probably this:
(The Origins of Concurrent Programming: From Semaphores to ...)

Now, imagine that *I* would write something in Russian and you'd 
simply translate it to English using, say, the AltaVista's Babel 
Fish translator (or something like that). I think that all such 
material (portion(s)) would be derivative work(s). BTW, you would
have pretty much the same thing with a "static linking" for some 
library full of templates and that was shipped to you in a source 
code form only. You'd simply have some portion(s) of your program 
originated from others and translated to some executable machine 
language (or whatever) creating portion(s) that are derivative 
work(s). But the book itself (and "your program") would still be 
a compilation, I believe. I would have absolutely >>no rights<< 
whatsoever with respect to the book/program portion(s) that were 
independently written by you. With a "dynamic linking" OTOH, your 
(Continue reading)

Alexander Terekhov | 1 Jul 10:41 2003

Re: Boost::thread feature request: thread priority

Maxim Egorushkin wrote:

[... "ala Alexandrescu" volatiles ...]
(Subject: Re: volatile keyword usage philosophy (long!))


Unsubscribe & other changes:

Joaquín Mª López Muñoz | 1 Jul 08:28 2003

[In response to Fernando Cacciola] Re: Interest in multiindex_set? (again)

(My mail server was down yesterday so your post didn't
get through to me and I cannot answer it properly).

Fernando wrote:

>This looks fine in general.
>I've needed something like it so I'm intereseted on seeing this on

>Some issues:

>Why 'index' instead of 'key'? Associative containers use the term key
>instead of index,
>since index is typically related with random access instead of look up

Well, 'index' is borrowed from database technology meaning an internal
sorting on a given key of a record. I haven't used 'key' instead
in general, the whole element serves as a key (the comparison predicate
for a given index need not be based on a particular member of the
but can be any functor with bool operator(const element&,const element&)

signature; less_by is just a convenient facility for the usual case in
which the
comparison depends solely on a single member of the element.
Also, as every index has a std::set-like interface, its key_type typedef
(Continue reading)

Joaquín Mª López Muñoz | 1 Jul 11:35 2003

[In response to Arkadiy] Re: Interest in multiindex_set? (again)

(My mail server was down yesterday so your post didn't
get through to me and I cannot answer it properly).

Arkadiy wrote:
>We may use this to provide a better table implementation for the
>Template Library, we are currently working on.
>Right now we are using a sorted vector instead of a set, to implement
>relational tables, because set doesn't allow us to search on a prefix
of a
>key.  Like if a table is indexed on a, b, c, we are not able to use
>equal_range on a, b with the set.  Sorted vector allows us to do this,
>sorted vector has obvious problems with inserts/deletes.
>Do you think your library can provide both search on a key prefix and

Search methods are extended to allow for compatible comparison
If if understood your request right, having a multiindex_set sorted by
lexicographical order on (a,b,c) allows the user to perform searches
based on lexicographical (a,b), since this order is compatible (weaker)
the former.
(Continue reading)

Jonathan de Halleux | 1 Jul 14:07 2003

Request formal review: Iobind

Iobind is a library for converting objects to and from string or streams.

The main features of IoBind are:

     - serialization of all STL containers (through range functions)
     - use of policies to create new serializers. For example, to serialize 
and associative container,
you can combine the policy that serializes an iterator range with a policy 
that serializes a std::pair
     - compiles under gcc, vc7, vc7.1. Bjam files (v2) available
     - full uBLAS support: all matrices and vectors can be serialized
     - available policies: zip, base64, hex, sequence, pair, complex, xml 
escaping, latin1 escaping, etc...

Files have been upload to iobind folder on boost file section and the home 
page of the project is at

Jonathan de Halleux, Research Assistant
Center for Systems Engineering and Applied Mechanics (CESAME)
Universite catholique de Louvain
Batiment Euler , Av. Georges Lemaitre, 4 Tel : +32-10-47 2595
B-1348 Louvain-la-Neuve Belgium
E-mail : dehalleux <at>

Unsubscribe & other changes:

(Continue reading)

Howard Hinnant | 1 Jul 15:15 2003

Re: thread::current() ?

On Monday, June 30, 2003, at 06:04  PM, Philippe A. Bouchard wrote:

> Suppose you have:
> struct functor1
> {
>         list<void *> m_list;
>         void operator () ()
>         {
>                 ...
>         }
> };
> struct functor2
> {
>         list<void *> m_list;
>         void operator () ()
>         {
>                 ...
>         }
> };
> int main()
> {
>         thread f1(functor1());
>         thread f2(functor2());
>         ...
(Continue reading)