[Bug c++/69889] New: [6 Regression] ICE: in assign_temp, at function.c:961

2016-02-21 Thread bbannier+gcc_bugs at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69889

Bug ID: 69889
   Summary: [6 Regression] ICE: in assign_temp, at function.c:961
   Product: gcc
   Version: 6.0
Status: UNCONFIRMED
  Severity: normal
  Priority: P3
 Component: c++
  Assignee: unassigned at gcc dot gnu.org
  Reporter: bbannier+gcc_bugs at gmail dot com
  Target Milestone: ---

I see an internal compiler error with the following code (reduced from actual
production code that passes with g++-5.3.0).

% cat log.ii
template  struct Tag {
  static void fp() { f()(0); }
  static F f() {}
};

struct Dispatch {
  template  Dispatch(F&&) : f(Tag::fp) {}
  void (*f)();
};

struct Empty { Empty(Empty&&); };

struct Value {
  Value();
  template  Value(U);
  void call(Dispatch);
  Empty e;
};

struct EmptyValue {
  EmptyValue(EmptyValue&&);
  EmptyValue();
};

struct User {
  User() {
Value().call([](Value) { return EmptyValue(); });
  }
};

User user;


% g++ --std=c++11 -S log.ii
log.ii: In static member function ‘static EmptyValue
User::User()_FUN(Value)’:
log.ii:27:51: internal compiler error: in assign_temp, at function.c:961
 Value().call([](Value) { return EmptyValue(); });
   ^

log.ii:27:51: internal compiler error: Abort trap: 6
g++: internal compiler error: Abort trap: 6 (program cc1plus)
Please submit a full bug report,
with preprocessed source if appropriate.
See <http://gcc.gnu.org/bugs.html> for instructions.

[Bug c++/69851] [6 Regression] ICE: in assign_temp, at function.c:961

2016-02-21 Thread bbannier+gcc_bugs at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69851

--- Comment #8 from Benjamin Bannier  ---
Thanks for the fast turn-around, that patch fixed the original issue like
expected. I encountered another similar issue in the same code base which still
causes an ICE, see 69889.

[Bug c++/69889] [6 Regression] ICE: in assign_temp, at function.c:961

2016-02-27 Thread bbannier+gcc_bugs at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=69889

--- Comment #7 from Benjamin Bannier  ---
Thanks for taking care of this so quickly. I currently do not observe any more
ICEs from that codebase.

[Bug c++/80829] Use of constexpr constructors with base type instantiation fails compilation

2017-05-19 Thread bbannier+gcc_bugs at gmail dot com
https://gcc.gnu.org/bugzilla/show_bug.cgi?id=80829

--- Comment #1 from Benjamin Bannier  ---
We believe this code is legal C++11 (AFAICT no explicit restrictions on
implicit conversions of `constexpr` vars), and was compiling successfully with
e.g., 6.3, so we strongly suspect a GCC regression.