[Bug libstdc++/68323] chrono reference to ‘literals’ namespace is ambiguous when using gnu-versioned-namespace

2016-10-03 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68323

Jonathan Wakely  changed:

   What|Removed |Added

 Status|ASSIGNED|RESOLVED
 Resolution|--- |FIXED
   Target Milestone|--- |5.5

--- Comment #6 from Jonathan Wakely  ---
Fixed for 5.5, 6.3 and 7.0

[Bug libstdc++/68323] chrono reference to ‘literals’ namespace is ambiguous when using gnu-versioned-namespace

2016-10-03 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68323

--- Comment #5 from Jonathan Wakely  ---
Author: redi
Date: Mon Oct  3 14:42:06 2016
New Revision: 240720

URL: https://gcc.gnu.org/viewcvs?rev=240720=gcc=rev
Log:
Fix libstdc++ versioned namespace build

PR libstdc++/68323
PR libstdc++/77794
* config/abi/pre/gnu-versioned-namespace.ver: Add export for
__cxa_thread_atexit.
* include/Makefile.am: Add 
* include/Makefile.in: Regenerate.
* src/filesystem/Makefile.in: Likewise.
* include.bits/basic_string.h: Fix nesting of versioned namespaces.
* include/bits/c++config: Declare versioned namespaces for literals.
* include/bits/regex.h (basic_regex, match_results): Add workarounds
for PR c++/59256.
* include/bits/uniform_int_dist.h: Fix nesting of versioned namespace.
* include/std/chrono: Likewise.
* include/std/complex: Likewise.
* include/experimental/fs_fwd.h: Declare versioned namespace.
* include/experimental/lfts_config.h: Declare versioned namespaces.
* include/experimental/algorithm: Include
.
* include/experimental/any: Likewise.
* include/experimental/chrono: Likewise.
* include/experimental/functional: Likewise.
* include/experimental/optional: Likewise.
* include/experimental/ratio: Likewise.
* include/experimental/system_error: Likewise.
* include/experimental/tuple: Likewise.
* include/experimental/type_traits: Likewise.
* include/experimental/string_view: Likewise. Fix nesting of
versioned namespaces.
* include/experimental/string_view.tcc: Reopen inline namespace for
non-inline function definitions.
* testsuite/17_intro/using_namespace_std_exp_neg.cc: New test.
* testsuite/20_util/duration/literals/range.cc: Adjust dg-error line.
* testsuite/experimental/any/misc/any_cast_neg.cc: Likewise.
* testsuite/ext/profile/mutex_extensions_neg.cc: Likewise.

Added:
branches/gcc-5-branch/libstdc++-v3/include/experimental/lfts_config.h
  - copied, changed from r240693,
branches/gcc-5-branch/libstdc++-v3/include/experimental/chrono
   
branches/gcc-5-branch/libstdc++-v3/testsuite/17_intro/using_namespace_std_exp_neg.cc
Modified:
branches/gcc-5-branch/libstdc++-v3/ChangeLog
   
branches/gcc-5-branch/libstdc++-v3/config/abi/pre/gnu-versioned-namespace.ver
branches/gcc-5-branch/libstdc++-v3/include/Makefile.am
branches/gcc-5-branch/libstdc++-v3/include/Makefile.in
branches/gcc-5-branch/libstdc++-v3/include/bits/basic_string.h
branches/gcc-5-branch/libstdc++-v3/include/bits/c++config
branches/gcc-5-branch/libstdc++-v3/include/bits/regex.h
branches/gcc-5-branch/libstdc++-v3/include/bits/uniform_int_dist.h
branches/gcc-5-branch/libstdc++-v3/include/experimental/algorithm
branches/gcc-5-branch/libstdc++-v3/include/experimental/any
branches/gcc-5-branch/libstdc++-v3/include/experimental/chrono
branches/gcc-5-branch/libstdc++-v3/include/experimental/fs_fwd.h
branches/gcc-5-branch/libstdc++-v3/include/experimental/functional
branches/gcc-5-branch/libstdc++-v3/include/experimental/optional
branches/gcc-5-branch/libstdc++-v3/include/experimental/ratio
branches/gcc-5-branch/libstdc++-v3/include/experimental/string_view
branches/gcc-5-branch/libstdc++-v3/include/experimental/string_view.tcc
branches/gcc-5-branch/libstdc++-v3/include/experimental/system_error
branches/gcc-5-branch/libstdc++-v3/include/experimental/tuple
branches/gcc-5-branch/libstdc++-v3/include/experimental/type_traits
branches/gcc-5-branch/libstdc++-v3/include/std/chrono
branches/gcc-5-branch/libstdc++-v3/include/std/complex
branches/gcc-5-branch/libstdc++-v3/src/filesystem/Makefile.in
   
branches/gcc-5-branch/libstdc++-v3/testsuite/20_util/duration/literals/range.cc
   
branches/gcc-5-branch/libstdc++-v3/testsuite/experimental/any/misc/any_cast_neg.cc
   
branches/gcc-5-branch/libstdc++-v3/testsuite/ext/profile/mutex_extensions_neg.cc

[Bug libstdc++/68323] chrono reference to ‘literals’ namespace is ambiguous when using gnu-versioned-namespace

2016-10-03 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68323

--- Comment #4 from Jonathan Wakely  ---
Author: redi
Date: Mon Oct  3 14:36:22 2016
New Revision: 240719

URL: https://gcc.gnu.org/viewcvs?rev=240719=gcc=rev
Log:
Fix libstdc++ versioned namespace build

PR libstdc++/68323
PR libstdc++/77794
* config/abi/pre/gnu-versioned-namespace.ver: Add exports for
__cxa_thread_atexit and __gnu_cxx::__freeres.
* include/Makefile.am: Add 
* include/Makefile.in: Regenerate.
* include.bits/basic_string.h: Fix nesting of versioned namespaces.
* include/bits/c++config: Declare versioned namespaces for literals.
* include/bits/regex.h (basic_regex, match_results): Add workarounds
for PR c++/59256.
* include/bits/uniform_int_dist.h: Fix nesting of versioned namespace.
* include/std/chrono: Likewise.
* include/std/complex: Likewise.
* include/experimental/bits/fs_fwd.h: Declare versioned namespace.
* include/experimental/bits/lfts_config.h: Declare versioned
namespaces.
* include/experimental/algorithm: Include
.
* include/experimental/any: Likewise.
* include/experimental/bits/erase_if.h: Likewise.
* include/experimental/chrono: Likewise.
* include/experimental/functional: Likewise.
* include/experimental/memory_resource: Likewise.
* include/experimental/optional: Likewise.
* include/experimental/propagate_const: Likewise.
* include/experimental/random: Likewise.
* include/experimental/ratio: Likewise.
* include/experimental/system_error: Likewise.
* include/experimental/tuple: Likewise.
* include/experimental/type_traits: Likewise.
* include/experimental/utility: Likewise.
* include/experimental/string_view: Likewise. Fix nesting of
versioned namespaces.
* include/experimental/bits/string_view.tcc: Reopen inline namespace
for non-inline function definitions.
* testsuite/17_intro/using_namespace_std_exp_neg.cc: New test.
* testsuite/20_util/duration/literals/range.cc: Adjust dg-error line.
* testsuite/experimental/any/misc/any_cast_neg.cc: Likewise.
* testsuite/experimental/propagate_const/assignment/move_neg.cc:
Likewise.
* testsuite/experimental/propagate_const/cons/move_neg.cc: Likewise.
* testsuite/experimental/propagate_const/requirements2.cc: Likewise.
* testsuite/experimental/propagate_const/requirements3.cc: Likewise.
* testsuite/experimental/propagate_const/requirements4.cc: Likewise.
* testsuite/experimental/propagate_const/requirements5.cc: Likewise.
* testsuite/ext/profile/mutex_extensions_neg.cc: Likewise.

Added:
   
branches/gcc-6-branch/libstdc++-v3/testsuite/17_intro/using_namespace_std_exp_neg.cc
Modified:
branches/gcc-6-branch/libstdc++-v3/ChangeLog
branches/gcc-6-branch/libstdc++-v3/include/bits/regex.h

[Bug libstdc++/68323] chrono reference to ‘literals’ namespace is ambiguous when using gnu-versioned-namespace

2016-10-03 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68323

--- Comment #3 from Jonathan Wakely  ---
Author: redi
Date: Mon Oct  3 14:35:28 2016
New Revision: 240714

URL: https://gcc.gnu.org/viewcvs?rev=240714=gcc=rev
Log:
Fix libstdc++ versioned namespace build

PR libstdc++/68323
PR libstdc++/77794
* config/abi/pre/gnu-versioned-namespace.ver: Add exports for
__cxa_thread_atexit and __gnu_cxx::__freeres.
* include/Makefile.am: Add 
* include/Makefile.in: Regenerate.
* include.bits/basic_string.h: Fix nesting of versioned namespaces.
* include/bits/c++config: Declare versioned namespaces for literals.
* include/bits/regex.h (basic_regex, match_results): Add workarounds
for PR c++/59256.
* include/bits/uniform_int_dist.h: Fix nesting of versioned namespace.
* include/std/chrono: Likewise.
* include/std/complex: Likewise.
* include/std/string_view: Likewise.
* include/std/variant: Likewise. Add workaround for PR c++/59256.
* include/experimental/bits/fs_fwd.h: Declare versioned namespace.
* include/experimental/bits/lfts_config.h: Declare versioned
namespaces.
* include/experimental/algorithm: Include
.
* include/experimental/any: Likewise.
* include/experimental/bits/erase_if.h: Likewise.
* include/experimental/chrono: Likewise.
* include/experimental/functional: Likewise.
* include/experimental/memory_resource: Likewise.
* include/experimental/optional: Likewise.
* include/experimental/propagate_const: Likewise.
* include/experimental/random: Likewise.
* include/experimental/ratio: Likewise.
* include/experimental/system_error: Likewise.
* include/experimental/tuple: Likewise.
* include/experimental/type_traits: Likewise.
* include/experimental/utility: Likewise.
* include/experimental/string_view: Likewise. Fix nesting of
versioned namespaces.
* include/experimental/bits/string_view.tcc: Reopen inline namespace
for non-inline function definitions.
* testsuite/17_intro/using_namespace_std_exp_neg.cc: New test.
* testsuite/20_util/duration/literals/range.cc: Adjust dg-error line.
* testsuite/experimental/any/misc/any_cast_neg.cc: Likewise.
* testsuite/experimental/propagate_const/assignment/move_neg.cc:
Likewise.
* testsuite/experimental/propagate_const/cons/move_neg.cc: Likewise.
* testsuite/experimental/propagate_const/requirements2.cc: Likewise.
* testsuite/experimental/propagate_const/requirements3.cc: Likewise.
* testsuite/experimental/propagate_const/requirements4.cc: Likewise.
* testsuite/experimental/propagate_const/requirements5.cc: Likewise.
* testsuite/ext/profile/mutex_extensions_neg.cc: Likewise.

Added:
trunk/libstdc++-v3/include/experimental/bits/lfts_config.h
  - copied, changed from r240711,
trunk/libstdc++-v3/include/experimental/bits/erase_if.h
trunk/libstdc++-v3/testsuite/17_intro/using_namespace_std_exp_neg.cc
Modified:
trunk/libstdc++-v3/ChangeLog
trunk/libstdc++-v3/config/abi/pre/gnu-versioned-namespace.ver
trunk/libstdc++-v3/include/Makefile.am
trunk/libstdc++-v3/include/Makefile.in
trunk/libstdc++-v3/include/bits/basic_string.h
trunk/libstdc++-v3/include/bits/c++config
trunk/libstdc++-v3/include/bits/regex.h
trunk/libstdc++-v3/include/bits/uniform_int_dist.h
trunk/libstdc++-v3/include/experimental/algorithm
trunk/libstdc++-v3/include/experimental/any
trunk/libstdc++-v3/include/experimental/bits/erase_if.h
trunk/libstdc++-v3/include/experimental/bits/fs_fwd.h
trunk/libstdc++-v3/include/experimental/bits/string_view.tcc
trunk/libstdc++-v3/include/experimental/chrono
trunk/libstdc++-v3/include/experimental/functional
trunk/libstdc++-v3/include/experimental/memory_resource
trunk/libstdc++-v3/include/experimental/optional
trunk/libstdc++-v3/include/experimental/propagate_const
trunk/libstdc++-v3/include/experimental/random
trunk/libstdc++-v3/include/experimental/ratio
trunk/libstdc++-v3/include/experimental/string_view
trunk/libstdc++-v3/include/experimental/system_error
trunk/libstdc++-v3/include/experimental/tuple
trunk/libstdc++-v3/include/experimental/type_traits
trunk/libstdc++-v3/include/experimental/utility
trunk/libstdc++-v3/include/std/chrono
trunk/libstdc++-v3/include/std/complex
trunk/libstdc++-v3/include/std/string_view
trunk/libstdc++-v3/include/std/variant
trunk/libstdc++-v3/testsuite/20_util/duration/literals/range.cc
trunk/libstdc++-v3/testsuite/experimental/any/misc/any_cast_neg.cc
   
trunk/libstdc++-v3/testsuite/experimental/propagate_const/assignment/move_neg.cc
trunk/libstdc++-v3/testsuite/experimental/propagate_const/cons/move_neg.cc

[Bug libstdc++/68323] chrono reference to ‘literals’ namespace is ambiguous when using gnu-versioned-namespace

2016-09-30 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68323

Jonathan Wakely  changed:

   What|Removed |Added

 Status|NEW |ASSIGNED
   Assignee|unassigned at gcc dot gnu.org  |redi at gcc dot gnu.org

--- Comment #2 from Jonathan Wakely  ---
Working on this along with PR 77794

[Bug libstdc++/68323] chrono reference to ‘literals’ namespace is ambiguous when using gnu-versioned-namespace

2015-11-13 Thread redi at gcc dot gnu.org
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=68323

Jonathan Wakely  changed:

   What|Removed |Added

 Status|UNCONFIRMED |NEW
   Last reconfirmed||2015-11-13
 Ever confirmed|0   |1

--- Comment #1 from Jonathan Wakely  ---
(In reply to Daniel Morilha from comment #0)
> /home/y/lib/gcc/x86_64-redhat-linux/5.2.0/include/c++/chrono:873:19: error:
> reference to ‘literals’ is ambiguous
>using namespace literals::chrono_literals;
>^
> /home/y/lib/gcc/x86_64-redhat-linux/5.2.0/include/c++/chrono:788:3: note:
> candidates are: namespace std::literals { }

Ah, I think we should have a __7 in there.

> /home/y/lib/gcc/x86_64-redhat-linux/5.2.0/include/c++/bits/basic_string.h:
> 5547:3: note: namespace std::__7::literals { }

And the __7 there might be in the wrong place.