View Issue Details

IDProjectCategoryView StatusLast Update
0000671GCC - GNU C CompilerBugpublic2020-08-24 03:07
Reporterkomh Assigned Topsmedley  
PrioritynormalSeverityminorReproducibilityalways
Status closedResolutionfixed 
Summary0000671: gcc 7.1 regressions
DescriptionHi/2.

I'm trying to use gcc 7.1. However, it fails my some C++11 regression tests.

For example,

  1. std::thread, std::async. For this, see https://github.com/psmedley/gcc/commit/e012188309ff098911c960c2b44472aa99239cb1.

  2. std::stol(). For this, see https://github.com/psmedley/gcc/commit/fef1630c35955e6352f9734b43d20758ce7508be. In addition, _GLIBCXX_USE_C99_STDLIB

 is not defined.
 
  3. std::max_align_t. For this, see https://github.com/psmedley/gcc/commit/21e0dd64d12d316004faedd38125e06872dd937a.

If you are interested in my gcc regression test suite, you can get it here:

  https://github.com/komh/gcctest

I eagerly want to use gcc710 because VLC now requires gcc5+.
TagsNo tags attached.

Activities

psmedley

2017-12-16 07:37

administrator   ~0003156

1) should have already been included, so was 2) with the exception of _GLIBCXX_USE_C99_STDLIB, 3) is being added now.

Building 7.2.0 as I write...

psmedley

2017-12-16 09:14

administrator   ~0003157

Out of time for testing today, but please try http://smedley.id.au/tmp/gcc-7.2.0-os2-20171216.zip

Tellie

2017-12-22 19:39

reporter   ~0003158

Hi Paul

I get this now with 720

c++ -O2 -c -o arg_parser.o arg_parser.cc
In file included from c:/usr/local720/include/c++/7.2.0/bits/cxxabi_init_exception.h:38:0,
                 from c:/usr/local720/include/c++/7.2.0/bits/exception_ptr.h:38,
                 from c:/usr/local720/include/c++/7.2.0/exception:142,
                 from c:/usr/local720/include/c++/7.2.0/new:40,
                 from c:/usr/local720/include/c++/7.2.0/ext/new_allocator.h:33,
                 from C:/usr/local720/include/c++/7.2.0/i686-pc-os2-emx/bits/c++allocator.h:33,
                 from c:/usr/local720/include/c++/7.2.0/bits/allocator.h:46,
                 from c:/usr/local720/include/c++/7.2.0/string:41,
                 from arg_parser.cc:21:
c:/usr/include/stddef.h:98:3: error: conflicting declaration 'typedef struct max_align_t max_align_t'
 } max_align_t;
   ^~~~~~~~~~~
In file included from C:/usr/local720/include/c++/7.2.0/i686-pc-os2-emx/bits/c++config.h:533:0,
                 from c:/usr/local720/include/c++/7.2.0/cstring:41,
                 from arg_parser.cc:20:
C:/usr/local720/include/c++/7.2.0/i686-pc-os2-emx/bits/os_defines.h:47:3: note: previous declaration as 'typedef struct max_align_t max_align_t'
 } max_align_t;
   ^~~~~~~~~~~
make: *** [arg_parser.o] Error 1

komh

2017-12-23 05:50

reporter   ~0003159

@Telie, are you using rpm environment ? Anyway, #ifdef guard and definition seems to be needed for max_align_t in os_define.h.

psmedley

2017-12-23 08:09

administrator   ~0003160

Try replacing os_defines.h with the one at http://smedley.id.au/tmp/os_defines.h

Tellie

2017-12-23 09:52

reporter   ~0003161

Hi Paul,

This works :)

Issue History

Date Modified Username Field Change
2017-12-05 13:54 komh New Issue
2017-12-16 07:37 psmedley Note Added: 0003156
2017-12-16 09:14 psmedley Note Added: 0003157
2017-12-22 19:39 Tellie Note Added: 0003158
2017-12-23 05:50 komh Note Added: 0003159
2017-12-23 08:09 psmedley Note Added: 0003160
2017-12-23 09:52 Tellie Note Added: 0003161
2017-12-28 04:16 psmedley Assigned To => psmedley
2017-12-28 04:16 psmedley Status new => assigned
2017-12-28 04:16 psmedley Status assigned => resolved
2017-12-28 04:16 psmedley Resolution open => fixed
2020-08-24 03:07 psmedley Status resolved => closed