I know this is not a bug so it's debatable whether it should be called broken. Let me call it a broken design.
[Edit] And there's another workaround that allows you to avoid using two indexes. You can use text_pattern_ops and use regular expressions for all comparisons, even for equality. This solution may have other performance drawbacks. I'm not sure.