public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug c++/59681] New: SVN 197248 adding N3582 support broke Boost.Regex with -std=c++1y
@ 2014-01-05  3:56 pab at pabigot dot com
  2014-01-05  4:35 ` [Bug c++/59681] " pinskia at gcc dot gnu.org
                   ` (2 more replies)
  0 siblings, 3 replies; 4+ messages in thread
From: pab at pabigot dot com @ 2014-01-05  3:56 UTC (permalink / raw)
  To: gcc-bugs

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

            Bug ID: 59681
           Summary: SVN 197248 adding N3582 support broke Boost.Regex with
                    -std=c++1y
           Product: gcc
           Version: 4.9.0
            Status: UNCONFIRMED
          Severity: normal
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: pab at pabigot dot com

In this commit 
http://gcc.gnu.org/viewcvs/gcc/trunk/gcc/cp/parser.c?r1=197248&r2=197247&pathrev=197248
the first diff (line 4109 of c/parser.c) fixed a problem where the
return value from finish_parenthesized_expr() was discarded.  As a side
effect, this small program:

#include <boost/regex.hpp>
const boost::regex e("AB");

produces these diagnostics with gcc -std=c++1y and Boost 1.55:

llc[45]$ /usr/local/gcc/bin/g++ --version
g++ (GCC) 4.9.0 20140104 (experimental)
Copyright (C) 2014 Free Software Foundation, Inc.
This is free software; see the source for copying conditions.  There is NO
warranty; not even for MERCHANTABILITY or FITNESS FOR A PARTICULAR PURPOSE.

llc[46]$ /usr/local/gcc/bin/g++ -std=c++1y -c /tmp/bre.cc 
In file included from
/usr/local/gcc-20140104/include/boost/regex/v4/regex.hpp:70:0,
                 from /usr/local/gcc-20140104/include/boost/regex.hpp:31,
                 from /tmp/bre.cc:1:
/usr/local/gcc-20140104/include/boost/regex/v4/basic_regex_creator.hpp: In
member function ‘boost::re_detail::re_literal*
boost::re_detail::basic_regex_creator<charT, traits>::append_literal(charT)’:
/usr/local/gcc-20140104/include/boost/regex/v4/basic_regex_creator.hpp:349:24:
error: lvalue required as increment operand
       ++(result->length);
                        ^
In file included from
/usr/local/gcc-20140104/include/boost/regex/v4/regex.hpp:73:0,
                 from /usr/local/gcc-20140104/include/boost/regex.hpp:31,
                 from /tmp/bre.cc:1:
/usr/local/gcc-20140104/include/boost/regex/v4/basic_regex_parser.hpp: In
member function ‘bool boost::re_detail::basic_regex_parser<charT,
traits>::parse_repeat(std::size_t, std::size_t)’:
/usr/local/gcc-20140104/include/boost/regex/v4/basic_regex_parser.hpp:974:21:
error: lvalue required as decrement operand
       --(lit->length);
                     ^
llc[47]$

The problem goes away if that line of the patch is reverted, but since
the change appears to be correct there's some other problem somewhere.
>From gcc-bugs-return-439069-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Sun Jan 05 04:33:05 2014
Return-Path: <gcc-bugs-return-439069-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 18166 invoked by alias); 5 Jan 2014 04:33:04 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 14233 invoked by uid 48); 5 Jan 2014 04:32:58 -0000
From: "pinskia at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug target/59679] gcc version 4.7.3 and gcc version 4.5.3 cause an unaligned access exception on NetBSD/Alpha
Date: Sun, 05 Jan 2014 04:33:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: target
X-Bugzilla-Version: 4.7.3
X-Bugzilla-Keywords:
X-Bugzilla-Severity: normal
X-Bugzilla-Who: pinskia at gcc dot gnu.org
X-Bugzilla-Status: WAITING
X-Bugzilla-Priority: P3
X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org
X-Bugzilla-Target-Milestone: ---
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields: cf_gcctarget bug_status cf_reconfirmed_on component everconfirmed bug_severity
Message-ID: <bug-59679-4-MjtvGa9aVS@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-59679-4@http.gcc.gnu.org/bugzilla/>
References: <bug-59679-4@http.gcc.gnu.org/bugzilla/>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/
Auto-Submitted: auto-generated
MIME-Version: 1.0
X-SW-Source: 2014-01/txt/msg00211.txt.bz2
Content-length: 1102

http://gcc.gnu.org/bugzilla/show_bug.cgi?idY679

Andrew Pinski <pinskia at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Target|                            |alpha-netbsd
             Status|UNCONFIRMED                 |WAITING
   Last reconfirmed|                            |2014-01-05
          Component|c                           |target
     Ever confirmed|0                           |1
           Severity|critical                    |normal

--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
This looks more like a bug in perl sources.  Can you attach the preprocessed
source for scope.c?

The big question is how is ARG0_PTR defined?  GCC must be assuming the
alignment is 64bits for some reason.  This needs the preprocessed source to see
why the alignment is being done incorrectly.  Maybe ARG0_PTR was assigned from
a long long pointer.

In C, once you assign it to a pointer of bigger alignment and it is not
aligned, the code is undefined.


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Bug c++/59681] SVN 197248 adding N3582 support broke Boost.Regex with -std=c++1y
  2014-01-05  3:56 [Bug c++/59681] New: SVN 197248 adding N3582 support broke Boost.Regex with -std=c++1y pab at pabigot dot com
@ 2014-01-05  4:35 ` pinskia at gcc dot gnu.org
  2014-01-05  8:58 ` redi at gcc dot gnu.org
  2014-01-24 11:32 ` paolo.carlini at oracle dot com
  2 siblings, 0 replies; 4+ messages in thread
From: pinskia at gcc dot gnu.org @ 2014-01-05  4:35 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #1 from Andrew Pinski <pinskia at gcc dot gnu.org> ---
Is (a) an lvalue still?  I don't remember the C++ rules to tell you the truth.


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Bug c++/59681] SVN 197248 adding N3582 support broke Boost.Regex with -std=c++1y
  2014-01-05  3:56 [Bug c++/59681] New: SVN 197248 adding N3582 support broke Boost.Regex with -std=c++1y pab at pabigot dot com
  2014-01-05  4:35 ` [Bug c++/59681] " pinskia at gcc dot gnu.org
@ 2014-01-05  8:58 ` redi at gcc dot gnu.org
  2014-01-24 11:32 ` paolo.carlini at oracle dot com
  2 siblings, 0 replies; 4+ messages in thread
From: redi at gcc dot gnu.org @ 2014-01-05  8:58 UTC (permalink / raw)
  To: gcc-bugs

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

Jonathan Wakely <redi at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2014-01-05
     Ever confirmed|0                           |1

--- Comment #2 from Jonathan Wakely <redi at gcc dot gnu.org> ---
[expr.prim.general] p6 says:

A parenthesized expression is a primary expression whose type and value are
identical to those of the enclosed expression. The presence of parentheses does
not affect whether the expression is an lvalue. The parenthesized expression can
be used in exactly the same contexts as those where the enclosed expression
can be used, and with the same meaning, except as otherwise indicated.
>From gcc-bugs-return-439073-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Sun Jan 05 12:09:18 2014
Return-Path: <gcc-bugs-return-439073-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 15807 invoked by alias); 5 Jan 2014 12:09:17 -0000
Mailing-List: contact gcc-bugs-help@gcc.gnu.org; run by ezmlm
Precedence: bulk
List-Id: <gcc-bugs.gcc.gnu.org>
List-Archive: <http://gcc.gnu.org/ml/gcc-bugs/>
List-Post: <mailto:gcc-bugs@gcc.gnu.org>
List-Help: <mailto:gcc-bugs-help@gcc.gnu.org>
Sender: gcc-bugs-owner@gcc.gnu.org
Delivered-To: mailing list gcc-bugs@gcc.gnu.org
Received: (qmail 15786 invoked by uid 48); 5 Jan 2014 12:09:12 -0000
From: "janus at gcc dot gnu.org" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug fortran/59678] Segmentation fault on equalizing variables of a complex derived data type
Date: Sun, 05 Jan 2014 12:09:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: changed
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: fortran
X-Bugzilla-Version: 4.8.1
X-Bugzilla-Keywords:
X-Bugzilla-Severity: normal
X-Bugzilla-Who: janus at gcc dot gnu.org
X-Bugzilla-Status: UNCONFIRMED
X-Bugzilla-Priority: P3
X-Bugzilla-Assigned-To: unassigned at gcc dot gnu.org
X-Bugzilla-Target-Milestone: ---
X-Bugzilla-Flags:
X-Bugzilla-Changed-Fields: cc
Message-ID: <bug-59678-4-wrpWYSwC84@http.gcc.gnu.org/bugzilla/>
In-Reply-To: <bug-59678-4@http.gcc.gnu.org/bugzilla/>
References: <bug-59678-4@http.gcc.gnu.org/bugzilla/>
Content-Type: text/plain; charset="UTF-8"
Content-Transfer-Encoding: 7bit
X-Bugzilla-URL: http://gcc.gnu.org/bugzilla/
Auto-Submitted: auto-generated
MIME-Version: 1.0
X-SW-Source: 2014-01/txt/msg00215.txt.bz2
Content-length: 425

http://gcc.gnu.org/bugzilla/show_bug.cgi?idY678

janus at gcc dot gnu.org changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |janus at gcc dot gnu.org

--- Comment #1 from janus at gcc dot gnu.org ---
Could you please try to set up a self-contained test case (as small as
possible)?


^ permalink raw reply	[flat|nested] 4+ messages in thread

* [Bug c++/59681] SVN 197248 adding N3582 support broke Boost.Regex with -std=c++1y
  2014-01-05  3:56 [Bug c++/59681] New: SVN 197248 adding N3582 support broke Boost.Regex with -std=c++1y pab at pabigot dot com
  2014-01-05  4:35 ` [Bug c++/59681] " pinskia at gcc dot gnu.org
  2014-01-05  8:58 ` redi at gcc dot gnu.org
@ 2014-01-24 11:32 ` paolo.carlini at oracle dot com
  2 siblings, 0 replies; 4+ messages in thread
From: paolo.carlini at oracle dot com @ 2014-01-24 11:32 UTC (permalink / raw)
  To: gcc-bugs

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

Paolo Carlini <paolo.carlini at oracle dot com> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
                 CC|                            |jason at gcc dot gnu.org

--- Comment #4 from Paolo Carlini <paolo.carlini at oracle dot com> ---
Let's add Jason in CC.


^ permalink raw reply	[flat|nested] 4+ messages in thread

end of thread, other threads:[~2014-01-24 11:32 UTC | newest]

Thread overview: 4+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2014-01-05  3:56 [Bug c++/59681] New: SVN 197248 adding N3582 support broke Boost.Regex with -std=c++1y pab at pabigot dot com
2014-01-05  4:35 ` [Bug c++/59681] " pinskia at gcc dot gnu.org
2014-01-05  8:58 ` redi at gcc dot gnu.org
2014-01-24 11:32 ` paolo.carlini at oracle dot com

This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).