compiler: fix infinite recursion in string constant evaluation.
authorian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 16 Apr 2012 23:05:40 +0000 (23:05 +0000)
committerian <ian@138bc75d-0d04-0410-961f-82ee72b054a4>
Mon, 16 Apr 2012 23:05:40 +0000 (23:05 +0000)
commitaf6b489a1f4656d3922fbce571f0d1ec8fe293ec
tree2e167b8be082bf80ff042e1cedcf1a1f32f13286
parent308fdd1f75d8f7da33469a670021f91a0ca4893b
compiler: fix infinite recursion in string constant evaluation.

Fixes compilation of incorrect code:
    const f, g = g, f
    func S() []byte { return []byte(f) }

The problem was already handled for numerical constants.

Part of issue 3186 (go).

git-svn-id: svn+ssh://gcc.gnu.org/svn/gcc/trunk@186511 138bc75d-0d04-0410-961f-82ee72b054a4
gcc/go/gofrontend/expressions.cc