FATAL:exception occured with pthread_exit()

We had written an application in which we create worker thread.

So the main thread will create the worker thread. After some time

the child thread(Worker thread) will call pthread_exit().

This function was written in try{} and there occured an Exception
and is handled in catch(...) handler.

Can any one tell me the reason why the exception occured.

This is on Linux platform. Fedora Core 6 and gcc 4.1

The Implementation of the code is as follows:

This is a simple form of our application, Try to run this small piece

of code.

The output of this is " FATAL: exception not rethrown

       Inside catch... Aborted"

#include <stdio.h>

#include <stdlib.h>

#include <stdexcept.h>

#include <pthread.h>

using namespace std;

void print_message_function( void *ptr );

int main()

{

        pthread_t thread1;     

        char *message1 = "Thread 1";     

        int  iret1;    

        

        iret1 = pthread_create\( &thread1, NULL, \(void\*\(\*\)\(void*\)\)&print\_message_function, \(void*\) message1\);     

        

        pthread_join\( thread1, NULL\);

}

void print_message_function( void *ptr )

{

        char *message;     

        message = \(char *\) ptr;     

        

        try

        \{

                pthread_exit\(\(void*\) 1\);

        \}

        catch\(...\)

        \{

                printf\("Inside catch...\\n"\);

        \}

}

Can any one tell me the reason why the exception occured?