public inbox for gcc-bugs@sourceware.org
help / color / mirror / Atom feed
* [Bug ipa/64314] [5 Regression] ICE in record_reference,  at cgraphbuild.c:87
       [not found] <bug-64314-4@http.gcc.gnu.org/bugzilla/>
@ 2014-12-15 13:44 ` rguenth at gcc dot gnu.org
  2014-12-15 16:21 ` jakub at gcc dot gnu.org
                   ` (6 subsequent siblings)
  7 siblings, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu.org @ 2014-12-15 13:44 UTC (permalink / raw)
  To: gcc-bugs

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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Priority|P3                          |P1
                 CC|                            |hubicka at gcc dot gnu.org
          Component|c++                         |ipa
   Target Milestone|---                         |5.0


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

* [Bug ipa/64314] [5 Regression] ICE in record_reference,  at cgraphbuild.c:87
       [not found] <bug-64314-4@http.gcc.gnu.org/bugzilla/>
  2014-12-15 13:44 ` [Bug ipa/64314] [5 Regression] ICE in record_reference, at cgraphbuild.c:87 rguenth at gcc dot gnu.org
@ 2014-12-15 16:21 ` jakub at gcc dot gnu.org
  2015-01-14 23:54 ` larsbj at gullik dot net
                   ` (5 subsequent siblings)
  7 siblings, 0 replies; 8+ messages in thread
From: jakub at gcc dot gnu.org @ 2014-12-15 16:21 UTC (permalink / raw)
  To: gcc-bugs

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

Jakub Jelinek <jakub at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|UNCONFIRMED                 |NEW
   Last reconfirmed|                            |2014-12-15
                 CC|                            |jakub at gcc dot gnu.org,
                   |                            |jason at gcc dot gnu.org
     Ever confirmed|0                           |1

--- Comment #1 from Jakub Jelinek <jakub at gcc dot gnu.org> ---
Reduced testcase for -std=c++11:
class B {};
template <typename> using E = B;
struct F : E<int> { ~F(); };
struct C {
  struct D : F { D(int, F); };
  D d;
  C() : d(0, F()) {}
};
enum G {};
struct A { C a; };
struct {
  G b;
  A c[1];
} a {};

Started with r218653.


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

* [Bug ipa/64314] [5 Regression] ICE in record_reference,  at cgraphbuild.c:87
       [not found] <bug-64314-4@http.gcc.gnu.org/bugzilla/>
  2014-12-15 13:44 ` [Bug ipa/64314] [5 Regression] ICE in record_reference, at cgraphbuild.c:87 rguenth at gcc dot gnu.org
  2014-12-15 16:21 ` jakub at gcc dot gnu.org
@ 2015-01-14 23:54 ` larsbj at gullik dot net
  2015-01-15 12:55 ` [Bug c++/64314] " rguenth at gcc dot gnu.org
                   ` (4 subsequent siblings)
  7 siblings, 0 replies; 8+ messages in thread
From: larsbj at gullik dot net @ 2015-01-14 23:54 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #2 from Lars Gullik Bjønnes <larsbj at gullik dot net> ---
I still see this, but with current gcc5 the call stack has become a bit
deeper, instead of 5 calls to walk_tree_1 I now see 9 calls.
(with -std=gnu++14 in this case.)
>From gcc-bugs-return-473273-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org Thu Jan 15 00:05:57 2015
Return-Path: <gcc-bugs-return-473273-listarch-gcc-bugs=gcc.gnu.org@gcc.gnu.org>
Delivered-To: listarch-gcc-bugs@gcc.gnu.org
Received: (qmail 18153 invoked by alias); 15 Jan 2015 00:05:56 -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 18130 invoked by uid 48); 15 Jan 2015 00:05:50 -0000
From: "westondan at ca dot rr.com" <gcc-bugzilla@gcc.gnu.org>
To: gcc-bugs@gcc.gnu.org
Subject: [Bug c++/64608] New: Raw string delimiter fails to allow @ or $
Date: Thu, 15 Jan 2015 00:05:00 -0000
X-Bugzilla-Reason: CC
X-Bugzilla-Type: new
X-Bugzilla-Watch-Reason: None
X-Bugzilla-Product: gcc
X-Bugzilla-Component: c++
X-Bugzilla-Version: 4.8.2
X-Bugzilla-Keywords:
X-Bugzilla-Severity: minor
X-Bugzilla-Who: westondan at ca dot rr.com
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: bug_id short_desc product version bug_status bug_severity priority component assigned_to reporter
Message-ID: <bug-64608-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: 2015-01/txt/msg01267.txt.bz2
Content-length: 3634

https://gcc.gnu.org/bugzilla/show_bug.cgi?idd608

            Bug ID: 64608
           Summary: Raw string delimiter fails to allow @ or $
           Product: gcc
           Version: 4.8.2
            Status: UNCONFIRMED
          Severity: minor
          Priority: P3
         Component: c++
          Assignee: unassigned at gcc dot gnu.org
          Reporter: westondan at ca dot rr.com

gcc --std=c++11 -E fails to allow use of @ or $ in a raw string tag, even
though these conform to the standard (section 2.14.5), namely:
d-char-sequence:
  d-char
  d-char-sequence d-char
d-char:
  any member of the basic source character set except:
    space, the left parenthesis (, the right parenthesis ), the backslash \,
    and the control characters representing horizontal tab,
    vertical tab, form feed, and newline.


> cat go.cc
int main() {
  const char x[] = R"tag(good)tag";
#if 0
  const char y[] = R"t@g(bad)t@g";
  const char z[] = R"t$g(bad)t$g";
#endif
  return x[0];
}

> gcc -v -save-temps -E --std=c++11 go.cc
Using built-in specs.
COLLECT_GCC=gcc
Target: x86_64-linux-gnu
Configured with: ../src/configure -v --with-pkgversion='Ubuntu 4.8.2-19ubuntu1'
--with-bugurl=file:///usr/share/doc/gcc-4.8/README.Bugs
--enable-languages=c,c++,java,go,d,fortran,objc,obj-c++ --prefix=/usr
--program-suffix=-4.8 --enable-shared --enable-linker-build-id
--libexecdir=/usr/lib --without-included-gettext --enable-threads=posix
--with-gxx-include-dir=/usr/include/c++/4.8 --libdir=/usr/lib --enable-nls
--with-sysroot=/ --enable-clocale=gnu --enable-libstdcxx-debug
--enable-libstdcxx-time=yes --enable-gnu-unique-object --disable-libmudflap
--enable-plugin --with-system-zlib --disable-browser-plugin
--enable-java-awt=gtk --enable-gtk-cairo
--with-java-home=/usr/lib/jvm/java-1.5.0-gcj-4.8-amd64/jre --enable-java-home
--with-jvm-root-dir=/usr/lib/jvm/java-1.5.0-gcj-4.8-amd64
--with-jvm-jar-dir=/usr/lib/jvm-exports/java-1.5.0-gcj-4.8-amd64
--with-arch-directory=amd64 --with-ecj-jar=/usr/share/java/eclipse-ecj.jar
--enable-objc-gc --enable-multiarch --disable-werror --with-arch-32=i686
--with-abi=m64 --with-multilib-list=m32,m64,mx32 --with-tune=generic
--enable-checking=release --build=x86_64-linux-gnu --host=x86_64-linux-gnu
--target=x86_64-linux-gnu
Thread model: posix
gcc version 4.8.2 (Ubuntu 4.8.2-19ubuntu1)
COLLECT_GCC_OPTIONS='-v' '-save-temps' '-E' '-std=c++11' '-mtune=generic'
'-march=x86-64'
 /usr/lib/gcc/x86_64-linux-gnu/4.8/cc1plus -E -quiet -v -imultiarch
x86_64-linux-gnu -D_GNU_SOURCE go.cc -mtune=generic -march=x86-64 -std=c++11
-fpch-preprocess -fstack-protector -Wformat -Wformat-security
ignoring duplicate directory "/usr/include/x86_64-linux-gnu/c++/4.8"
ignoring nonexistent directory "/usr/local/include/x86_64-linux-gnu"
ignoring nonexistent directory
"/usr/lib/gcc/x86_64-linux-gnu/4.8/../../../../x86_64-linux-gnu/include"
#include "..." search starts here:
#include <...> search starts here:
 /usr/include/c++/4.8
 /usr/include/x86_64-linux-gnu/c++/4.8
 /usr/include/c++/4.8/backward
 /usr/lib/gcc/x86_64-linux-gnu/4.8/include
 /usr/local/include
 /usr/lib/gcc/x86_64-linux-gnu/4.8/include-fixed
 /usr/include/x86_64-linux-gnu
 /usr/include
End of search list.
# 1 "go.cc"
# 1 "<command-line>"
# 1 "/usr/include/stdc-predef.h" 1 3 4
# 1 "<command-line>" 2
# 1 "go.cc"
int main() {
go.cc:4:23: error: invalid character '@' in raw string delimiter
   const char y[] = R"t@g(bad)t@g";
                    ^
go.cc:5:23: error: invalid character '$' in raw string delimiter
   const char z[] = R"t$g(bad)t$g";
                    ^
  const char x[] = R"tag(good)tag";




  return x[0];
}


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

* [Bug c++/64314] [5 Regression] ICE in record_reference,  at cgraphbuild.c:87
       [not found] <bug-64314-4@http.gcc.gnu.org/bugzilla/>
                   ` (2 preceding siblings ...)
  2015-01-14 23:54 ` larsbj at gullik dot net
@ 2015-01-15 12:55 ` rguenth at gcc dot gnu.org
  2015-01-15 18:18 ` hubicka at gcc dot gnu.org
                   ` (3 subsequent siblings)
  7 siblings, 0 replies; 8+ messages in thread
From: rguenth at gcc dot gnu.org @ 2015-01-15 12:55 UTC (permalink / raw)
  To: gcc-bugs

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

Richard Biener <rguenth at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
          Component|ipa                         |c++

--- Comment #3 from Richard Biener <rguenth at gcc dot gnu.org> ---
We walk the initializer of 'a' which is

{.c={{.a=TARGET_EXPR <D.2291, <<< Unknown tree: aggr_init_expr
  4
  __comp_ctor 
  D.2291
  (struct C *) <<< Unknown tree: void_cst >>> >>>>}}}

and somehow expect we never reach a VAR_DECL when doing that.  What we visit
here is the TARGET_EXPR target and its use in the __comp_ctor call.

So the assert is somewhat bogus (but it certainly was designed to make
sure we capture every variable and function!).  We can restrict it
to catch global vars only (as otherwise varpool_node::get_create will
ICE anyway).

But then after fixing the above we'll ICE in output_constant ...

So it seems this is a frontend bug after all and TARGET_EXPRs shouldn't
appear here.


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

* [Bug c++/64314] [5 Regression] ICE in record_reference,  at cgraphbuild.c:87
       [not found] <bug-64314-4@http.gcc.gnu.org/bugzilla/>
                   ` (3 preceding siblings ...)
  2015-01-15 12:55 ` [Bug c++/64314] " rguenth at gcc dot gnu.org
@ 2015-01-15 18:18 ` hubicka at gcc dot gnu.org
  2015-01-22  2:12 ` jason at gcc dot gnu.org
                   ` (2 subsequent siblings)
  7 siblings, 0 replies; 8+ messages in thread
From: hubicka at gcc dot gnu.org @ 2015-01-15 18:18 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #4 from Jan Hubicka <hubicka at gcc dot gnu.org> ---
Yep, I do not see how target expr can work here.
The assert simply tests that in constructor all variables are wrapped within
ADDR_EXPR as taking an address of variable is the only way gimplified ctor can
reffer to other var.


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

* [Bug c++/64314] [5 Regression] ICE in record_reference,  at cgraphbuild.c:87
       [not found] <bug-64314-4@http.gcc.gnu.org/bugzilla/>
                   ` (4 preceding siblings ...)
  2015-01-15 18:18 ` hubicka at gcc dot gnu.org
@ 2015-01-22  2:12 ` jason at gcc dot gnu.org
  2015-01-23 16:31 ` jason at gcc dot gnu.org
  2015-01-23 16:37 ` jason at gcc dot gnu.org
  7 siblings, 0 replies; 8+ messages in thread
From: jason at gcc dot gnu.org @ 2015-01-22  2:12 UTC (permalink / raw)
  To: gcc-bugs

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

Jason Merrill <jason at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|NEW                         |ASSIGNED
           Assignee|unassigned at gcc dot gnu.org      |jason at gcc dot gnu.org


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

* [Bug c++/64314] [5 Regression] ICE in record_reference,  at cgraphbuild.c:87
       [not found] <bug-64314-4@http.gcc.gnu.org/bugzilla/>
                   ` (5 preceding siblings ...)
  2015-01-22  2:12 ` jason at gcc dot gnu.org
@ 2015-01-23 16:31 ` jason at gcc dot gnu.org
  2015-01-23 16:37 ` jason at gcc dot gnu.org
  7 siblings, 0 replies; 8+ messages in thread
From: jason at gcc dot gnu.org @ 2015-01-23 16:31 UTC (permalink / raw)
  To: gcc-bugs

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

--- Comment #5 from Jason Merrill <jason at gcc dot gnu.org> ---
Author: jason
Date: Fri Jan 23 16:30:00 2015
New Revision: 220047

URL: https://gcc.gnu.org/viewcvs?rev=220047&root=gcc&view=rev
Log:
    PR c++/64314
    PR c++/57510
    * typeck2.c (split_nonconstant_init_1): Remove a sub-CONSTRUCTOR
    that has been completely split out.

Added:
    trunk/gcc/testsuite/g++.dg/init/array38.C
Modified:
    trunk/gcc/cp/ChangeLog
    trunk/gcc/cp/typeck2.c


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

* [Bug c++/64314] [5 Regression] ICE in record_reference,  at cgraphbuild.c:87
       [not found] <bug-64314-4@http.gcc.gnu.org/bugzilla/>
                   ` (6 preceding siblings ...)
  2015-01-23 16:31 ` jason at gcc dot gnu.org
@ 2015-01-23 16:37 ` jason at gcc dot gnu.org
  7 siblings, 0 replies; 8+ messages in thread
From: jason at gcc dot gnu.org @ 2015-01-23 16:37 UTC (permalink / raw)
  To: gcc-bugs

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

Jason Merrill <jason at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
             Status|ASSIGNED                    |RESOLVED
         Resolution|---                         |FIXED

--- Comment #6 from Jason Merrill <jason at gcc dot gnu.org> ---
Fixed.


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

end of thread, other threads:[~2015-01-23 16:37 UTC | newest]

Thread overview: 8+ messages (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
     [not found] <bug-64314-4@http.gcc.gnu.org/bugzilla/>
2014-12-15 13:44 ` [Bug ipa/64314] [5 Regression] ICE in record_reference, at cgraphbuild.c:87 rguenth at gcc dot gnu.org
2014-12-15 16:21 ` jakub at gcc dot gnu.org
2015-01-14 23:54 ` larsbj at gullik dot net
2015-01-15 12:55 ` [Bug c++/64314] " rguenth at gcc dot gnu.org
2015-01-15 18:18 ` hubicka at gcc dot gnu.org
2015-01-22  2:12 ` jason at gcc dot gnu.org
2015-01-23 16:31 ` jason at gcc dot gnu.org
2015-01-23 16:37 ` jason at gcc dot gnu.org

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).