C/C++ 雑談 ID:rgKWO5cA

10名無しさん@Next2ch:2017/12/14(木) 20:50:27.09 ID:rgKWO5cA

C++14 では意図通り動いたコードが C++17 では無限再帰して落ちるようになった
ttps://gcc.gnu.org/bugzilla/show_bug.cgi?id=83345

struct Base
{
  virtual ~Base() {}
};

struct Proxy
{
  Proxy(const Base&) {}
};

struct Derived: Base
{
  operator Proxy()
  {
    return Proxy(*this);
  }

};

int main()
{
  Derived().operator Proxy();
}

11名無しさん@Next2ch:2017/12/14(木) 20:53:28.94 ID:rgKWO5cA

原因はおそらく return value optimization を必須にするために規格文面をあれこれいじったときの副作用
でもまだはっきりと理解できてない


このIDをNGリストに追加する

今後このIDの書き込みやスレッドを表示したくない場合、以下のボタンをクリックしてください。
NGリストに追加

レスを書き込む