On Fri, Jun 26, 2015 at 7:40 AM, Patrick Palka patr...@parcs.ath.cx wrote:
Here is a more modest approach to fixing this PR. Instead of updating
current_template_parms with each newly processed template parameter,
this patch just updates it with a dummy parameter level once per
parameter
OK, thanks.
Jason
Here is a more modest approach to fixing this PR. Instead of updating
current_template_parms with each newly processed template parameter,
this patch just updates it with a dummy parameter level once per
parameter list. So now in tsubst(), to fix the reported ICE we just
have to avoid
On Wed, Jun 24, 2015 at 5:08 AM, Markus Trippelsdorf
mar...@trippelsdorf.de wrote:
On 2015.06.23 at 19:40 -0400, Patrick Palka wrote:
On Tue, Jun 23, 2015 at 12:38 AM, Jason Merrill ja...@redhat.com wrote:
On 06/15/2015 02:32 PM, Patrick Palka wrote:
On Mon, Jun 15, 2015 at 2:05 PM, Jason
On Tue, Jun 23, 2015 at 12:38 AM, Jason Merrill ja...@redhat.com wrote:
On 06/15/2015 02:32 PM, Patrick Palka wrote:
On Mon, Jun 15, 2015 at 2:05 PM, Jason Merrill ja...@redhat.com wrote:
Any reason not to use grow_tree_vec?
Doing so causes a lot of ICEs in the testsuite. I think it's
On 06/15/2015 02:32 PM, Patrick Palka wrote:
On Mon, Jun 15, 2015 at 2:05 PM, Jason Merrill ja...@redhat.com wrote:
Any reason not to use grow_tree_vec?
Doing so causes a lot of ICEs in the testsuite. I think it's because
grow_tree_vec invalidates the older parameter_vec which some trees may
On 06/11/2015 09:25 PM, Patrick Palka wrote:
+ parameter_vec = make_tree_vec
+ (TREE_VEC_LENGTH (TREE_VALUE (current_template_parms)) + 1);
+
+ for (int i = 0; i TREE_VEC_LENGTH (parameter_vec) - 1; i++)
+ TREE_VEC_ELT (parameter_vec, i)
+ = TREE_VEC_ELT
On Mon, Jun 15, 2015 at 2:05 PM, Jason Merrill ja...@redhat.com wrote:
On 06/11/2015 09:25 PM, Patrick Palka wrote:
+ parameter_vec = make_tree_vec
+ (TREE_VEC_LENGTH (TREE_VALUE (current_template_parms)) + 1);
+
+ for (int i = 0; i TREE_VEC_LENGTH (parameter_vec) - 1; i++)
The crux of the issue causing PR 30044 is that, in the middle of
processing a template parameter list, current_template_parms is not
up-to-date. This causes problems particularly when we attempt to
instantiate a type that's defined within the very parameter list we are
processing. Of course,