This is the mail archive of the gcc-bugs@gcc.gnu.org mailing list for the GCC project.


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]
Other format: [Raw text]

[Bug libstdc++/43683] New: libstdc++ profile mode is not working on OpenSolaris (build 134) due to compilation failure


Hello,
I'm using:
karel@thinkpad:/tmp/gcc-4.5.0-RC-20100406$ c++ -v
Using built-in specs.
COLLECT_GCC=c++
COLLECT_LTO_WRAPPER=/usr/local/gcc-4.5-rc0-20100412/libexec/gcc/i386-pc-solaris2.11/4.5.0/lto-wrapper
Target: i386-pc-solaris2.11
Configured with: /tmp/gcc-4.5.0-RC-20100406/configure
--prefix=/usr/local/gcc-4.5-rc0-20100412 --with-as=/usr/bin/gas --with-gnu-as
--with-ld=/usr/bin/ld --without-gnu-ld --enable-shared --enable-threads
--enable-languages=c++ --with-gmp-include=/usr/include/gmp
--with-mpfr-include=/usr/include/mpfr --with-mpc=/usr/local/gcc-4.5-reqs/
Thread model: posix
gcc version 4.5.0 20100406 (prerelease) (GCC) 

and attempt to use libstdc++ profile mode on test:

#include <vector>
using namespace std;
int main() {
  vector<int> v;
  for (int k = 0; k < 1024; ++k) v.insert(v.begin(), k);
}

The problem is that it's compilation fails with:

In file included from
/usr/local/gcc-4.5-rc0-20100412/lib/gcc/i386-pc-solaris2.11/4.5.0/../../../../include/c++/4.5.0/profile/impl/profiler_hash_func.h:51:0,
                 from
/usr/local/gcc-4.5-rc0-20100412/lib/gcc/i386-pc-solaris2.11/4.5.0/../../../../include/c++/4.5.0/profile/impl/profiler.h:400,
                 from
/usr/local/gcc-4.5-rc0-20100412/lib/gcc/i386-pc-solaris2.11/4.5.0/../../../../include/c++/4.5.0/profile/base.h:44,
                 from
/usr/local/gcc-4.5-rc0-20100412/lib/gcc/i386-pc-solaris2.11/4.5.0/../../../../include/c++/4.5.0/profile/vector:39,
                 from
/usr/local/gcc-4.5-rc0-20100412/lib/gcc/i386-pc-solaris2.11/4.5.0/../../../../include/c++/4.5.0/vector:77,
                 from test.cc:1:
/usr/local/gcc-4.5-rc0-20100412/lib/gcc/i386-pc-solaris2.11/4.5.0/../../../../include/c++/4.5.0/profile/impl/profiler_trace.h:
In function â??__gnu_profile::__mutex_t&
__gnu_profile::__get___global_lock()â??:
/usr/local/gcc-4.5-rc0-20100412/lib/gcc/i386-pc-solaris2.11/4.5.0/../../../../include/c++/4.5.0/profile/impl/profiler_trace.h:81:1:
error: no matching function for call to
â??_pthread_mutex::_pthread_mutex(<brace-enclosed initializer list>)â??
/usr/include/sys/types.h:404:31: note: candidates are:
_pthread_mutex::_pthread_mutex()
/usr/include/sys/types.h:404:31: note:                
_pthread_mutex::_pthread_mutex(const _pthread_mutex&)
/usr/local/gcc-4.5-rc0-20100412/lib/gcc/i386-pc-solaris2.11/4.5.0/../../../../include/c++/4.5.0/profile/impl/profiler_trace.h:
In constructor â??__gnu_profile::__trace_base<__object_info,
__stack_info>::__trace_base() [with __object_info =
__gnu_profile::__hashfunc_info, __stack_info =
__gnu_profile::__hashfunc_stack_info]â??:
/usr/local/gcc-4.5-rc0-20100412/lib/gcc/i386-pc-solaris2.11/4.5.0/../../../../include/c++/4.5.0/profile/impl/profiler_hash_func.h:125:60:
  instantiated from here
/usr/local/gcc-4.5-rc0-20100412/lib/gcc/i386-pc-solaris2.11/4.5.0/../../../../include/c++/4.5.0/profile/impl/profiler_trace.h:307:3:
error: no match for â??operator=â?? in
â??((__gnu_profile::__trace_base<__gnu_profile::__hashfunc_info,
__gnu_profile::__hashfunc_stack_info>*)this)->__gnu_profile::__trace_base<__gnu_profile::__hashfunc_info,
__gnu_profile::__hashfunc_stack_info>::__stack_table_lock = {{0, 0, 0, 0,
19800}, {{{0}}}, 0}â??
/usr/include/sys/types.h:404:31: note: candidate is: _pthread_mutex&
_pthread_mutex::operator=(const _pthread_mutex&)
/usr/local/gcc-4.5-rc0-20100412/lib/gcc/i386-pc-solaris2.11/4.5.0/../../../../include/c++/4.5.0/profile/impl/profiler_trace.h:
In constructor â??__gnu_profile::__trace_base<__object_info,
__stack_info>::__trace_base() [with __object_info =
__gnu_profile::__container_size_info, __stack_info =
__gnu_profile::__container_size_stack_info]â??:
/usr/local/gcc-4.5-rc0-20100412/lib/gcc/i386-pc-solaris2.11/4.5.0/../../../../include/c++/4.5.0/profile/impl/profiler_container_size.h:190:74:
  instantiated from here
/usr/local/gcc-4.5-rc0-20100412/lib/gcc/i386-pc-solaris2.11/4.5.0/../../../../include/c++/4.5.0/profile/impl/profiler_trace.h:307:3:
error: no match for â??operator=â?? in
â??((__gnu_profile::__trace_base<__gnu_profile::__container_size_info,
__gnu_profile::__container_size_stack_info>*)this)->__gnu_profile::__trace_base<__gnu_profile::__container_size_info,
__gnu_profile::__container_size_stack_info>::__stack_table_lock = {{0, 0, 0, 0,
19800}, {{{0}}}, 0}â??
/usr/include/sys/types.h:404:31: note: candidate is: _pthread_mutex&
_pthread_mutex::operator=(const _pthread_mutex&)
/usr/local/gcc-4.5-rc0-20100412/lib/gcc/i386-pc-solaris2.11/4.5.0/../../../../include/c++/4.5.0/profile/impl/profiler_trace.h:
In constructor â??__gnu_profile::__trace_base<__object_info,
__stack_info>::__trace_base() [with __object_info =
__gnu_profile::__map2umap_info, __stack_info =
__gnu_profile::__map2umap_stack_info]â??:
/usr/local/gcc-4.5-rc0-20100412/lib/gcc/i386-pc-solaris2.11/4.5.0/../../../../include/c++/4.5.0/profile/impl/profiler_map_to_unordered_map.h:204:60:
  instantiated from here
/usr/local/gcc-4.5-rc0-20100412/lib/gcc/i386-pc-solaris2.11/4.5.0/../../../../include/c++/4.5.0/profile/impl/profiler_trace.h:307:3:
error: no match for â??operator=â?? in
â??((__gnu_profile::__trace_base<__gnu_profile::__map2umap_info,
__gnu_profile::__map2umap_stack_info>*)this)->__gnu_profile::__trace_base<__gnu_profile::__map2umap_info,
__gnu_profile::__map2umap_stack_info>::__stack_table_lock = {{0, 0, 0, 0,
19800}, {{{0}}}, 0}â??
/usr/include/sys/types.h:404:31: note: candidate is: _pthread_mutex&
_pthread_mutex::operator=(const _pthread_mutex&)
/usr/local/gcc-4.5-rc0-20100412/lib/gcc/i386-pc-solaris2.11/4.5.0/../../../../include/c++/4.5.0/profile/impl/profiler_trace.h:
In constructor â??__gnu_profile::__trace_base<__object_info,
__stack_info>::__trace_base() [with __object_info =
__gnu_profile::__vector2list_info, __stack_info =
__gnu_profile::__vector2list_stack_info]â??:
/usr/local/gcc-4.5-rc0-20100412/lib/gcc/i386-pc-solaris2.11/4.5.0/../../../../include/c++/4.5.0/profile/impl/profiler_vector_to_list.h:173:66:
  instantiated from here
/usr/local/gcc-4.5-rc0-20100412/lib/gcc/i386-pc-solaris2.11/4.5.0/../../../../include/c++/4.5.0/profile/impl/profiler_trace.h:307:3:
error: no match for â??operator=â?? in
â??((__gnu_profile::__trace_base<__gnu_profile::__vector2list_info,
__gnu_profile::__vector2list_stack_info>*)this)->__gnu_profile::__trace_base<__gnu_profile::__vector2list_info,
__gnu_profile::__vector2list_stack_info>::__stack_table_lock = {{0, 0, 0, 0,
19800}, {{{0}}}, 0}â??
/usr/include/sys/types.h:404:31: note: candidate is: _pthread_mutex&
_pthread_mutex::operator=(const _pthread_mutex&)
/usr/local/gcc-4.5-rc0-20100412/lib/gcc/i386-pc-solaris2.11/4.5.0/../../../../include/c++/4.5.0/profile/impl/profiler_trace.h:
In constructor â??__gnu_profile::__trace_base<__object_info,
__stack_info>::__trace_base() [with __object_info =
__gnu_profile::__list2slist_info, __stack_info =
__gnu_profile::__list2slist_stack_info]â??:
/usr/local/gcc-4.5-rc0-20100412/lib/gcc/i386-pc-solaris2.11/4.5.0/../../../../include/c++/4.5.0/profile/impl/profiler_list_to_slist.h:99:66:
  instantiated from here
/usr/local/gcc-4.5-rc0-20100412/lib/gcc/i386-pc-solaris2.11/4.5.0/../../../../include/c++/4.5.0/profile/impl/profiler_trace.h:307:3:
error: no match for â??operator=â?? in
â??((__gnu_profile::__trace_base<__gnu_profile::__list2slist_info,
__gnu_profile::__list2slist_stack_info>*)this)->__gnu_profile::__trace_base<__gnu_profile::__list2slist_info,
__gnu_profile::__list2slist_stack_info>::__stack_table_lock = {{0, 0, 0, 0,
19800}, {{{0}}}, 0}â??
/usr/include/sys/types.h:404:31: note: candidate is: _pthread_mutex&
_pthread_mutex::operator=(const _pthread_mutex&)
/usr/local/gcc-4.5-rc0-20100412/lib/gcc/i386-pc-solaris2.11/4.5.0/../../../../include/c++/4.5.0/profile/impl/profiler_trace.h:
In constructor â??__gnu_profile::__trace_base<__object_info,
__stack_info>::__trace_base() [with __object_info =
__gnu_profile::__list2vector_info, __stack_info =
__gnu_profile::__list2vector_stack_info]â??:
/usr/local/gcc-4.5-rc0-20100412/lib/gcc/i386-pc-solaris2.11/4.5.0/../../../../include/c++/4.5.0/profile/impl/profiler_list_to_vector.h:172:66:
  instantiated from here
/usr/local/gcc-4.5-rc0-20100412/lib/gcc/i386-pc-solaris2.11/4.5.0/../../../../include/c++/4.5.0/profile/impl/profiler_trace.h:307:3:
error: no match for â??operator=â?? in
â??((__gnu_profile::__trace_base<__gnu_profile::__list2vector_info,
__gnu_profile::__list2vector_stack_info>*)this)->__gnu_profile::__trace_base<__gnu_profile::__list2vector_info,
__gnu_profile::__list2vector_stack_info>::__stack_table_lock = {{0, 0, 0, 0,
19800}, {{{0}}}, 0}â??
/usr/include/sys/types.h:404:31: note: candidate is: _pthread_mutex&
_pthread_mutex::operator=(const _pthread_mutex&)


Preprocessed file attached.

Thanks,
Karel


-- 
           Summary: libstdc++ profile mode is not working on OpenSolaris
                    (build 134) due to compilation failure
           Product: gcc
           Version: 4.5.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: libstdc++
        AssignedTo: unassigned at gcc dot gnu dot org
        ReportedBy: kgardas at objectsecurity dot com
 GCC build triplet: i386-pc-solaris2.11
  GCC host triplet: i386-pc-solaris2.11
GCC target triplet: i386-pc-solaris2.11


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


Index Nav: [Date Index] [Subject Index] [Author Index] [Thread Index]
Message Nav: [Date Prev] [Date Next] [Thread Prev] [Thread Next]