reference, declarationdefinition
definition → references, declarations, derived classes, virtual overrides
reference to multiple definitions → definitions
unreferenced

References

tools/clang/lib/Frontend/Rewrite/RewriteModernObjC.cpp
 1693   ConvertSourceLocationToLineDirective(ForEachLoc, buf);
 1694   buf += "{\n\t";
 1705     buf += elementTypeAsString;
 1706     buf += " ";
 1708     buf += elementName;
 1709     buf += ";\n\t";
 1724   buf += "struct __objcFastEnumerationState enumState = { 0 };\n\t";
 1726   buf += "id __rw_items[16];\n\t";
 1728   buf += "id l_collection = (id)";
 1743   ReplaceText(startLoc, startCollectionBuf - startBuf, buf);
 1748   buf = ";\n\t";
 1761   buf += "_WIN_NSUInteger limit =\n\t\t";
 1762   SynthCountByEnumWithState(buf);
 1763   buf += ";\n\t";
 1772   buf += "if (limit) {\n\t";
 1773   buf += "unsigned long startMutations = *enumState.mutationsPtr;\n\t";
 1774   buf += "do {\n\t\t";
 1775   buf += "unsigned long counter = 0;\n\t\t";
 1776   buf += "do {\n\t\t\t";
 1777   buf += "if (startMutations != *enumState.mutationsPtr)\n\t\t\t\t";
 1778   buf += "objc_enumerationMutation(l_collection);\n\t\t\t";
 1779   buf += elementName;
 1780   buf += " = (";
 1781   buf += elementTypeAsString;
 1782   buf += ")enumState.itemsPtr[counter++];";
 1784   ReplaceText(lparenLoc, 1, buf);
 1797   buf = ";\n\t";
 1798   buf += "__continue_label_";
 1799   buf += utostr(ObjCBcLabelNo.back());
 1800   buf += ": ;";
 1801   buf += "\n\t\t";
 1802   buf += "} while (counter < limit);\n\t";
 1803   buf += "} while ((limit = ";
 1804   SynthCountByEnumWithState(buf);
 1805   buf += "));\n\t";
 1806   buf += elementName;
 1807   buf += " = ((";
 1808   buf += elementTypeAsString;
 1809   buf += ")0);\n\t";
 1810   buf += "__break_label_";
 1811   buf += utostr(ObjCBcLabelNo.back());
 1812   buf += ": ;\n\t";
 1813   buf += "}\n\t";
 1814   buf += "else\n\t\t";
 1815   buf += elementName;
 1816   buf += " = ((";
 1817   buf += elementTypeAsString;
 1818   buf += ")0);\n\t";
 1819   buf += "}\n";
 1825     InsertText(endBodyLoc, buf);
 1838     InsertText(endBodyLoc, buf);