Hi. Thanks for the analysis. I guess this isn't the right forum for this
discussion, but I'll put it here anyway. The reason I think the "if" and
"else" text and the preceding whitespace should be considered to lie
outside their block is that this is how cc-mode works. Consider the
C code equivalent to the Python code in the bug report:
void f(void)
{
if(1)
{
11;
}
else if(2)
{
22;
}
else if(3)
{
33;
}
else if(4)
{
44;
}
else
{
5;
}
return 0;
}
Here (hs-hide-block) hides the if/else blocks ONLY if the point is
inside the {}. Otherwise, the whole f() is hidden.