[Bug c++/101343] ICE in tsubst_copy, at cp/pt.c:15732

marxin at gcc dot gnu.org gcc-bugzilla@gcc.gnu.org
Mon Jul 12 11:05:40 GMT 2021


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

Martin Liška <marxin at gcc dot gnu.org> changed:

           What    |Removed                     |Added
----------------------------------------------------------------------------
           Keywords|needs-reduction             |

--- Comment #3 from Martin Liška <marxin at gcc dot gnu.org> ---
Reduced test-case:

template <typename, typename> using ElementIdArray = int;
template <int> struct QStaticStringData;
struct GraphModelImpl;
struct __uniq_ptr_impl {
  struct _Ptr {
    using type = GraphModelImpl *;
  };
  using pointer = _Ptr::type;
};
struct unique_ptr {
  using pointer = __uniq_ptr_impl::pointer;
  pointer operator->();
};
struct GraphModel {
  unique_ptr _;
  void buildVisualisations();
} __trans_tmp_2;
template <typename> struct VisualisationsBuilder {
  VisualisationsBuilder(GraphModel, ElementIdArray<int, int>);
  void build() {
    [](auto) {
      enum { Size };
      QStaticStringData<Size> qstring_literal;
    };
  }
};
using NodeVisuals = int;
struct GraphModelImpl {
  NodeVisuals _mappedNodeVisuals;
};
void GraphModel::buildVisualisations() {
  VisualisationsBuilder<int> nodeVisualisationsBuilder(__trans_tmp_2,
                                                       _->_mappedNodeVisuals);
  nodeVisualisationsBuilder.build();
}


More information about the Gcc-bugs mailing list