This is really a duplication of bug 897372, which compared FFc and SFC, as SFC compiles the attached form just fine. The generated code is much smaller. Talking with Martin, I get the impression that FFC does not use the information UFL provides about the internal structure of the different sub expressions. I got the impression that FFC lump the whole expression into a large string. Subdividing this string is probably suboptimal compared to using the information already stored in UFL.
This is really a duplication of bug 897372, which compared FFc and SFC, as SFC compiles the attached form just fine. The generated code is much smaller. Talking with Martin, I get the impression that FFC does not use the information UFL provides about the internal structure of the different sub expressions. I got the impression that FFC lump the whole expression into a large string. Subdividing this string is probably suboptimal compared to using the information already stored in UFL.