The Go frontend is currently supposed to use C++98. This patch by Than McIntosh removes a range based for loop that snuck in recently. This fixes PR 90669. Bootstrapped and ran Go testsuite on x86_64-pc-linux-gnu. Committed to mainline.
Ian
Index: gcc/go/gofrontend/MERGE =================================================================== --- gcc/go/gofrontend/MERGE (revision 271669) +++ gcc/go/gofrontend/MERGE (working copy) @@ -1,4 +1,4 @@ -3995d545f1e112c682753f342eaef0877551a649 +84b8000c32f671c6cc89df1290ed6e0170308644 The first line of this file holds the git revision number of the last merge done from the gofrontend repository. Index: gcc/go/gofrontend/types.cc =================================================================== --- gcc/go/gofrontend/types.cc (revision 271669) +++ gcc/go/gofrontend/types.cc (working copy) @@ -2802,8 +2802,13 @@ Ptrmask::symname() const // Redirect the bits vector to the digest, and update the prefix. prefix = "X"; - for (char c : digest) - shabits.push_back((unsigned char) c); + for (std::string::const_iterator p = digest.begin(); + p != digest.end(); + ++p) + { + unsigned char c = *p; + shabits.push_back(c); + } bits = &shabits; }