I'm not convinced there is a "why" other than "that's what happens". Feel
free to file an issue.

-rob


On Wed, Jun 22, 2016 at 1:29 PM, Evan Digby <evandi...@gmail.com> wrote:

> Hi Rob,
>
> Thanks! I'm using 1.6. I guess my question wasn't too clear now that I
> read it back.
>
> The question isn't why I can redefine. More specifically, my question is
> why redefining by parsing an empty string returns an error on Execute.
>
> Why can't we redefine a template as empty string? If that's expected, why
> would it not return an error when parsing and not executing?
>
> I think the "same base template" info from my original post is a red
> herring, because I imagine it's not "redefining" if they're not part of the
> same tree somehow.
>
> Thanks again,
>
> Evan
>
> On Wednesday, 22 June 2016 13:22:09 UTC-7, Rob 'Commander' Pike wrote:
>>
>> You don't say what version of Go you are running, but as of Go 1.6,
>> templates can be redefined, which supports the new 'block' feature.
>>
>> You are redefining a template, which used to be an error but is not any
>> more.
>>
>> -rob
>>
>>
>> On Wed, Jun 22, 2016 at 1:13 PM, Evan Digby <evan...@gmail.com> wrote:
>>
>>> I'm noticing that if I accidentally create a second template with the
>>> same name but no content there is no error reported when I "parse" it, but
>>> then when I attempt to execute it I do see an error:
>>>
>>> https://play.golang.org/p/Rj3433vvju
>>>
>>> Is this expected behaviour? Why wouldn't it simply return an error from
>>> the Parse call?
>>>
>>> The key is the second template must have no content. The following does
>>> not return an error on execute:
>>>
>>> https://play.golang.org/p/O5xv5rS-cg (both have content)
>>> https://play.golang.org/p/kaoVWRunrP (only the second has content)
>>>
>>> I have also noticed that this isn't an issue if they are not all based
>>> from the same template:
>>>
>>> https://play.golang.org/p/iLoHokX4uy
>>> https://play.golang.org/p/T07Z9rvfmW
>>>
>>> The inconsistency in behaviour between the examples listed is a bit
>>> confusing. If there truly is expected that the one case that does error our
>>> on execute should error out, and not the others, I believe that the error
>>> makes more sense (and could be easily caught) on the Parse call, not the
>>> execute call.
>>>
>>> Can someone provide some insight into why this might legitimately be
>>> behaving this way?
>>>
>>> Thank you!
>>>
>>>
>>>
>>>
>>> --
>>> You received this message because you are subscribed to the Google
>>> Groups "golang-nuts" group.
>>> To unsubscribe from this group and stop receiving emails from it, send
>>> an email to golang-nuts...@googlegroups.com.
>>> For more options, visit https://groups.google.com/d/optout.
>>>
>>
>> --
> You received this message because you are subscribed to the Google Groups
> "golang-nuts" group.
> To unsubscribe from this group and stop receiving emails from it, send an
> email to golang-nuts+unsubscr...@googlegroups.com.
> For more options, visit https://groups.google.com/d/optout.
>

-- 
You received this message because you are subscribed to the Google Groups 
"golang-nuts" group.
To unsubscribe from this group and stop receiving emails from it, send an email 
to golang-nuts+unsubscr...@googlegroups.com.
For more options, visit https://groups.google.com/d/optout.

Reply via email to