https://gcc.gnu.org/bugzilla/show_bug.cgi?id=114103

--- Comment #9 from dave.anglin at bell dot net ---
On 2024-02-27 9:32 a.m., redi at gcc dot gnu.org wrote:
> Patch posted:
> https://gcc.gnu.org/pipermail/gcc-patches/2024-February/646619.html
Caused build error:

libtool: compile:  /home/dave/gnu/gcc/objdir64/./gcc/xgcc -shared-libgcc
-B/home
/dave/gnu/gcc/objdir64/./gcc -nostdinc++
-L/home/dave/gnu/gcc/objdir64/hppa64-hp
-hpux11.11/libstdc++-v3/src
-L/home/dave/gnu/gcc/objdir64/hppa64-hp-hpux11.11/li
bstdc++-v3/src/.libs
-L/home/dave/gnu/gcc/objdir64/hppa64-hp-hpux11.11/libstdc++
-v3/libsupc++/.libs -B/opt/gnu64/gcc/gcc-14/hppa64-hp-hpux11.11/bin/
-B/opt/gnu6
4/gcc/gcc-14/hppa64-hp-hpux11.11/lib/ -isystem
/opt/gnu64/gcc/gcc-14/hppa64-hp-h
pux11.11/include -isystem /opt/gnu64/gcc/gcc-14/hppa64-hp-hpux11.11/sys-include
-fno-checking -I/home/dave/gnu/gcc/gcc/libstdc++-v3/../libgcc 
-I/home/dave/gnu/gcc/objdir64/hppa64-hp-hpux11.11/libstdc++-v3/include/hppa64-hp-hpux11.11
 
-I/home/dave/gnu/gcc/objdir64/hppa64-hp-hpux11.11/libstdc++-v3/include
-I/home/dave/gnu/gcc/gcc/libstdc++-v3/libsupc++ -std=gnu++20 
-D_GLIBCXX_SHARED -fno-implicit-templates -Wall -Wextra -Wwrite-strings
-Wcast-qual -Wabi=2 -fdiagnostics-show-location=once -ffunction-sections 
-fdata-sections -frandom-seed=tzdb.lo -fimplicit-templates -O2 -g -I. -c
../../../../../gcc/libstdc++-v3/src/c++20/tzdb.cc  -DPIC 
-D_GLIBCXX_SHARED -o tzdb.o
../../../../../gcc/libstdc++-v3/src/c++20/tzdb.cc:654:9: error:
'atomic_signed_lock_free' does not name a type
   654 |         atomic_signed_lock_free counter{0};
       |         ^~~~~~~~~~~~~~~~~~~~~~~
../../../../../gcc/libstdc++-v3/src/c++20/tzdb.cc:706:18: error:
'atomic_signed_lock_free' was not declared in this scope; did you mean 
'atomic_is_lock_free'?
   706 |     RulesCounter<atomic_signed_lock_free> rules_counter;
       |                  ^~~~~~~~~~~~~~~~~~~~~~~
       |                  atomic_is_lock_free
../../../../../gcc/libstdc++-v3/src/c++20/tzdb.cc:706:41: error: template
argument 1 is invalid
   706 |     RulesCounter<atomic_signed_lock_free> rules_counter;
       |                                         ^
../../../../../gcc/libstdc++-v3/src/c++20/tzdb.cc: In member function 'void
std::chrono::time_zone::_Impl::RulesCounter<_Tp>::increment()':
../../../../../gcc/libstdc++-v3/src/c++20/tzdb.cc:658:11: error: 'counter' was
not declared in this scope; did you mean 'count'?
   658 |         { counter.fetch_add(1, memory_order::relaxed); }
       |           ^~~~~~~
       |           count
../../../../../gcc/libstdc++-v3/src/c++20/tzdb.cc: In member function 'void
std::chrono::time_zone::_Impl::RulesCounter<_Tp>::decrement()':
../../../../../gcc/libstdc++-v3/src/c++20/tzdb.cc:668:17: error: 'counter' was
not declared in this scope; did you mean 'count'?
   668 |           if (++counter == 0)
       |                 ^~~~~~~
       |                 count
../../../../../gcc/libstdc++-v3/src/c++20/tzdb.cc: In member function 'void
std::chrono::time_zone::_Impl::RulesCounter<_Tp>::lock()':
../../../../../gcc/libstdc++-v3/src/c++20/tzdb.cc:679:25: error: 'counter' was
not declared in this scope; did you mean 'count'?
   679 |           for (auto c = counter.load(memory_order::relaxed); c != 0;)
       |                         ^~~~~~~
       |                         count
../../../../../gcc/libstdc++-v3/src/c++20/tzdb.cc: In member function 'void
std::chrono::time_zone::_Impl::RulesCounter<_Tp>::unlock()':
../../../../../gcc/libstdc++-v3/src/c++20/tzdb.cc:697:24: error: 'counter' was
not declared in this scope; did you mean 'count'?
   697 |           if (auto c = counter.load(memory_order::relaxed); c < 0)
       |                        ^~~~~~~
       |                        count
../../../../../gcc/libstdc++-v3/src/c++20/tzdb.cc: In member function
'std::chrono::sys_info 
std::chrono::time_zone::_M_get_sys_info(std::chrono::sys_seconds) const':
../../../../../gcc/libstdc++-v3/src/c++20/tzdb.cc:969:32: error: request for
member 'decrement' in '((const 
std::chrono::time_zone*)this)->std::chrono::time_zone::_M_impl.std::unique_ptr<std::chrono::time_zone::_Impl>::operator->()->std::chrono::time_zone::_Impl::rules_counter',
 
which is of non-class type 'int'
   969 |         _M_impl->rules_counter.decrement();
       |                                ^~~~~~~~~
../../../../../gcc/libstdc++-v3/src/c++20/tzdb.cc: In function 'const
std::chrono::tzdb& std::chrono::reload_tzdb()':
../../../../../gcc/libstdc++-v3/src/c++20/tzdb.cc:1488:38: error: request for
member 'increment' in 
'impl.std::chrono::time_zone::_Impl::rules_counter', which is of non-class type
'int'
  1488 |                   impl.rules_counter.increment();
       |                                      ^~~~~~~~~
In file included from
/home/dave/gnu/gcc/objdir64/hppa64-hp-hpux11.11/libstdc++-v3/include/bits/atomic_wait.h:51,
                  from
/home/dave/gnu/gcc/objdir64/hppa64-hp-hpux11.11/libstdc++-v3/include/bits/atomic_base.h:42,
                  from
/home/dave/gnu/gcc/objdir64/hppa64-hp-hpux11.11/libstdc++-v3/include/atomic:50,
                  from ../../../../../gcc/libstdc++-v3/src/c++20/tzdb.cc:35:
/home/dave/gnu/gcc/objdir64/hppa64-hp-hpux11.11/libstdc++-v3/include/bits/std_mutex.h:
In instantiation of 
'std::lock_guard<_Mutex>::lock_guard(mutex_type&) [with _Mutex = int;
mutex_type = int]':
../../../../../gcc/libstdc++-v3/src/c++20/tzdb.cc:779:43:   required from here
../../../../../gcc/libstdc++-v3/src/c++20/tzdb.cc:1488:38: error: 779 |    
lock_guard lock(_M_impl->rules_counter);
../../../../../gcc/libstdc++-v3/src/c++20/tzdb.cc:1488:38: error:       |      
                                    ^
/home/dave/gnu/gcc/objdir64/hppa64-hp-hpux11.11/libstdc++-v3/include/bits/std_mutex.h:250:19:
error: request for member 'lock' in 
'((std::lock_guard<int>*)this)->std::lock_guard<int>::_M_device', which is of
non-class type 'std::lock_guard<int>::mutex_type' {aka 'int'}
   250 |       { _M_device.lock(); }
       |         ~~~~~~~~~~^~~~
/home/dave/gnu/gcc/objdir64/hppa64-hp-hpux11.11/libstdc++-v3/include/bits/std_mutex.h:
In instantiation of 
'std::lock_guard<_Mutex>::~lock_guard() [with _Mutex = int]':
../../../../../gcc/libstdc++-v3/src/c++20/tzdb.cc:779:43:   required from here
/home/dave/gnu/gcc/objdir64/hppa64-hp-hpux11.11/libstdc++-v3/include/bits/std_mutex.h:250:19:
error:   779 |     lock_guard 
lock(_M_impl->rules_counter);
/home/dave/gnu/gcc/objdir64/hppa64-hp-hpux11.11/libstdc++-v3/include/bits/std_mutex.h:250:19:
error:       
|                                           ^
/home/dave/gnu/gcc/objdir64/hppa64-hp-hpux11.11/libstdc++-v3/include/bits/std_mutex.h:257:19:
error: request for member 'unlock' in 
'((std::lock_guard<int>*)this)->std::lock_guard<int>::_M_device', which is of
non-class type 'std::lock_guard<int>::mutex_type' {aka 'int'}
   257 |       { _M_device.unlock(); }
       |         ~~~~~~~~~~^~~~~~
make[6]: *** [Makefile:754: tzdb.lo] Error 1

Reply via email to