[Bug libstdc++/13913] [3.5 Regression] win32: compile error: __GTHREAD_MUTEX_INIT' was not declared in this scope

pinskia at gcc dot gnu dot org gcc-bugzilla@gcc.gnu.org
Thu Jan 29 04:20:00 GMT 2004


------- Additional Comments From pinskia at gcc dot gnu dot org  2004-01-29 04:20 -------
Confirmed, the problem is here:
#ifdef __GTHREADS
  template<typename _Tp> typename __mt_alloc<_Tp>::thread_record*
  volatile __mt_alloc<_Tp>::_S_thread_freelist_first = NULL;

  template<typename _Tp> __gthread_mutex_t
  __mt_alloc<_Tp>::_S_thread_freelist_mutex = __GTHREAD_MUTEX_INIT;  <--- this line

  /*
   * Actual initialization in _S_init()
   */
  template<typename _Tp> __gthread_key_t
  __mt_alloc<_Tp>::_S_thread_key;
#endif

Looks like someone forgot that not every target defines __GTHREAD_MUTEX_INIT.

-- 
           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
     Ever Confirmed|                            |1
           Keywords|                            |build
   Last reconfirmed|0000-00-00 00:00:00         |2004-01-29 04:20:48
               date|                            |
            Summary|win32: compile error:       |[3.5 Regression] win32:
                   |__GTHREAD_MUTEX_INIT' was   |compile error:
                   |not declared in this scope  |__GTHREAD_MUTEX_INIT' was
                   |                            |not declared in this scope
   Target Milestone|---                         |3.5.0


http://gcc.gnu.org/bugzilla/show_bug.cgi?id=13913



More information about the Gcc-bugs mailing list