diff options
7 files changed, 679 insertions, 522 deletions
diff --git a/clang/include/clang/Analysis/ObjCRetainCount.h b/clang/include/clang/Analysis/ObjCRetainCount.h index 9f5f249db84..9dff1ea12ae 100644 --- a/clang/include/clang/Analysis/ObjCRetainCount.h +++ b/clang/include/clang/Analysis/ObjCRetainCount.h @@ -65,6 +65,9 @@ enum ArgEffect { /// if CFRetain has been called on the argument. IncRef, + /// Used to mark an argument as collectible in GC mode, currently a noop. + MakeCollectable, + /// The argument is a pointer to a retain-counted object; on exit, the new /// value of the pointer is a +0 value or NULL. UnretainedOutParameter, diff --git a/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountChecker.cpp b/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountChecker.cpp index a0ffe302fab..89b487aa014 100644 --- a/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountChecker.cpp +++ b/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountChecker.cpp @@ -581,6 +581,8 @@ RetainCountChecker::updateSymbol(ProgramStateRef state, SymbolRef sym, case DecRefMsgAndStopTrackingHard: E = IgnoreRetainMsg ? StopTracking : DecRefAndStopTrackingHard; break; + case MakeCollectable: + E = DoNothing; } // Handle all use-after-releases. @@ -593,8 +595,9 @@ RetainCountChecker::updateSymbol(ProgramStateRef state, SymbolRef sym, switch (E) { case DecRefMsg: case IncRefMsg: + case MakeCollectable: case DecRefMsgAndStopTrackingHard: - llvm_unreachable("DecRefMsg/IncRefMsg already converted"); + llvm_unreachable("DecRefMsg/IncRefMsg/MakeCollectable already converted"); case UnretainedOutParameter: case RetainedOutParameter: diff --git a/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountSummaries.cpp b/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountSummaries.cpp index d5d56e395c2..77699cc2c73 100644 --- a/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountSummaries.cpp +++ b/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountSummaries.cpp @@ -78,6 +78,10 @@ static bool isAutorelease(const FunctionDecl *FD, StringRef FName) { FName.endswith_lower("autorelease"); } +static bool isMakeCollectable(StringRef FName) { + return FName.contains_lower("MakeCollectable"); +} + const RetainSummary * RetainSummaryManager::generateSummary(const FunctionDecl *FD, bool &AllowAnnotations) { @@ -111,6 +115,11 @@ RetainSummaryManager::generateSummary(const FunctionDecl *FD, // Part of: <rdar://problem/7299394> and <rdar://problem/11282706>. // This will be addressed better with IPA. return getPersistentStopSummary(); + } else if(FName == "NSMakeCollectable") { + // Handle: id NSMakeCollectable(CFTypeRef) + AllowAnnotations = false; + return RetTy->isObjCIdType() ? getUnarySummary(FT, cfmakecollectable) + : getPersistentStopSummary(); } else if (FName == "CFPlugInInstanceCreate") { return getPersistentSummary(RetEffect::MakeNoRet()); } else if (FName == "IORegistryEntrySearchCFProperty" || @@ -207,6 +216,9 @@ RetainSummaryManager::generateSummary(const FunctionDecl *FD, AllowAnnotations = false; return getUnarySummary(FT, cfautorelease); + } else if (isMakeCollectable(FName)) { + AllowAnnotations = false; + return getUnarySummary(FT, cfmakecollectable); } else { return getCFCreateGetRuleSummary(FD); } @@ -301,7 +313,6 @@ RetainSummaryManager::getFunctionSummary(const FunctionDecl *FD) { // Summary creation for functions (largely uses of Core Foundation). //===----------------------------------------------------------------------===// - static ArgEffect getStopTrackingHardEquivalent(ArgEffect E) { switch (E) { case DoNothing: @@ -309,6 +320,7 @@ static ArgEffect getStopTrackingHardEquivalent(ArgEffect E) { case DecRefBridgedTransferred: case IncRef: case IncRefMsg: + case MakeCollectable: case UnretainedOutParameter: case RetainedOutParameter: case MayEscape: @@ -458,14 +470,17 @@ bool RetainSummaryManager::canEval(const CallExpr *CE, FName = FName.substr(FName.find_first_not_of('_')); QualType ResultTy = CE->getCallReturnType(Ctx); - if (ResultTy->isPointerType()) { + if (ResultTy->isObjCIdType()) { + return II->isStr("NSMakeCollectable"); + } else if (ResultTy->isPointerType()) { // Handle: (CF|CG|CV)Retain // CFAutorelease // It's okay to be a little sloppy here. if (cocoa::isRefType(ResultTy, "CF", FName) || cocoa::isRefType(ResultTy, "CG", FName) || cocoa::isRefType(ResultTy, "CV", FName)) - return isRetain(FD, FName) || isAutorelease(FD, FName); + return isRetain(FD, FName) || isAutorelease(FD, FName) || + isMakeCollectable(FName); if (FD->getDefinition()) { bool out = isTrustedReferenceCountImplementation(FD->getDefinition()); @@ -495,6 +510,7 @@ RetainSummaryManager::getUnarySummary(const FunctionType* FT, case cfretain: Effect = IncRef; break; case cfrelease: Effect = DecRef; break; case cfautorelease: Effect = Autorelease; break; + case cfmakecollectable: Effect = MakeCollectable; break; } ScratchArgs = AF.add(ScratchArgs, 0, Effect); diff --git a/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountSummaries.h b/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountSummaries.h index 3161b9c2803..dd56a448589 100644 --- a/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountSummaries.h +++ b/clang/lib/StaticAnalyzer/Checkers/RetainCountChecker/RetainCountSummaries.h @@ -315,7 +315,7 @@ class RetainSummaryManager { /// data in ScratchArgs. ArgEffects getArgEffects(); - enum UnaryFuncKind { cfretain, cfrelease, cfautorelease }; + enum UnaryFuncKind { cfretain, cfrelease, cfautorelease, cfmakecollectable }; const RetainSummary *getUnarySummary(const FunctionType* FT, UnaryFuncKind func); diff --git a/clang/test/Analysis/Inputs/expected-plists/retain-release-path-notes.m.plist b/clang/test/Analysis/Inputs/expected-plists/retain-release-path-notes.m.plist index d102e3b45a9..a2dafa98262 100644 --- a/clang/test/Analysis/Inputs/expected-plists/retain-release-path-notes.m.plist +++ b/clang/test/Analysis/Inputs/expected-plists/retain-release-path-notes.m.plist @@ -7,7 +7,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>44</integer> + <key>line</key><integer>47</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -15,12 +15,12 @@ <array> <array> <dict> - <key>line</key><integer>44</integer> + <key>line</key><integer>47</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>44</integer> + <key>line</key><integer>47</integer> <key>col</key><integer>37</integer> <key>file</key><integer>0</integer> </dict> @@ -40,12 +40,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>44</integer> + <key>line</key><integer>47</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>44</integer> + <key>line</key><integer>47</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> @@ -53,12 +53,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>45</integer> + <key>line</key><integer>48</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>45</integer> + <key>line</key><integer>48</integer> <key>col</key><integer>8</integer> <key>file</key><integer>0</integer> </dict> @@ -70,7 +70,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>45</integer> + <key>line</key><integer>48</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -78,12 +78,12 @@ <array> <array> <dict> - <key>line</key><integer>45</integer> + <key>line</key><integer>48</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>45</integer> + <key>line</key><integer>48</integer> <key>col</key><integer>8</integer> <key>file</key><integer>0</integer> </dict> @@ -107,7 +107,7 @@ <key>issue_hash_function_offset</key><string>1</string> <key>location</key> <dict> - <key>line</key><integer>45</integer> + <key>line</key><integer>48</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -119,7 +119,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>49</integer> + <key>line</key><integer>52</integer> <key>col</key><integer>22</integer> <key>file</key><integer>0</integer> </dict> @@ -127,12 +127,12 @@ <array> <array> <dict> - <key>line</key><integer>49</integer> + <key>line</key><integer>52</integer> <key>col</key><integer>22</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>49</integer> + <key>line</key><integer>52</integer> <key>col</key><integer>40</integer> <key>file</key><integer>0</integer> </dict> @@ -152,12 +152,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>49</integer> + <key>line</key><integer>52</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>49</integer> + <key>line</key><integer>52</integer> <key>col</key><integer>11</integer> <key>file</key><integer>0</integer> </dict> @@ -165,12 +165,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>50</integer> + <key>line</key><integer>53</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>50</integer> + <key>line</key><integer>53</integer> <key>col</key><integer>8</integer> <key>file</key><integer>0</integer> </dict> @@ -182,7 +182,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>50</integer> + <key>line</key><integer>53</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -190,12 +190,12 @@ <array> <array> <dict> - <key>line</key><integer>50</integer> + <key>line</key><integer>53</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>50</integer> + <key>line</key><integer>53</integer> <key>col</key><integer>8</integer> <key>file</key><integer>0</integer> </dict> @@ -219,7 +219,7 @@ <key>issue_hash_function_offset</key><string>1</string> <key>location</key> <dict> - <key>line</key><integer>50</integer> + <key>line</key><integer>53</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -231,7 +231,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>54</integer> + <key>line</key><integer>57</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -239,12 +239,12 @@ <array> <array> <dict> - <key>line</key><integer>54</integer> + <key>line</key><integer>57</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>54</integer> + <key>line</key><integer>57</integer> <key>col</key><integer>35</integer> <key>file</key><integer>0</integer> </dict> @@ -264,12 +264,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>54</integer> + <key>line</key><integer>57</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>54</integer> + <key>line</key><integer>57</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> @@ -277,12 +277,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>55</integer> + <key>line</key><integer>58</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>55</integer> + <key>line</key><integer>58</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -294,7 +294,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>55</integer> + <key>line</key><integer>58</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -302,24 +302,24 @@ <array> <array> <dict> - <key>line</key><integer>55</integer> + <key>line</key><integer>58</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>55</integer> + <key>line</key><integer>58</integer> <key>col</key><integer>17</integer> <key>file</key><integer>0</integer> </dict> </array> <array> <dict> - <key>line</key><integer>55</integer> + <key>line</key><integer>58</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>55</integer> + <key>line</key><integer>58</integer> <key>col</key><integer>9</integer> <key>file</key><integer>0</integer> </dict> @@ -339,12 +339,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>55</integer> + <key>line</key><integer>58</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>55</integer> + <key>line</key><integer>58</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -352,12 +352,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>56</integer> + <key>line</key><integer>59</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>56</integer> + <key>line</key><integer>59</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -369,7 +369,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>56</integer> + <key>line</key><integer>59</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -377,24 +377,24 @@ <array> <array> <dict> - <key>line</key><integer>56</integer> + <key>line</key><integer>59</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>56</integer> + <key>line</key><integer>59</integer> <key>col</key><integer>17</integer> <key>file</key><integer>0</integer> </dict> </array> <array> <dict> - <key>line</key><integer>56</integer> + <key>line</key><integer>59</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>56</integer> + <key>line</key><integer>59</integer> <key>col</key><integer>9</integer> <key>file</key><integer>0</integer> </dict> @@ -414,12 +414,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>56</integer> + <key>line</key><integer>59</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>56</integer> + <key>line</key><integer>59</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -427,12 +427,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>57</integer> + <key>line</key><integer>60</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>57</integer> + <key>line</key><integer>60</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -444,7 +444,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>57</integer> + <key>line</key><integer>60</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -452,24 +452,24 @@ <array> <array> <dict> - <key>line</key><integer>57</integer> + <key>line</key><integer>60</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>57</integer> + <key>line</key><integer>60</integer> <key>col</key><integer>18</integer> <key>file</key><integer>0</integer> </dict> </array> <array> <dict> - <key>line</key><integer>57</integer> + <key>line</key><integer>60</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>57</integer> + <key>line</key><integer>60</integer> <key>col</key><integer>9</integer> <key>file</key><integer>0</integer> </dict> @@ -489,12 +489,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>57</integer> + <key>line</key><integer>60</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>57</integer> + <key>line</key><integer>60</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -502,12 +502,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>58</integer> + <key>line</key><integer>61</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>58</integer> + <key>line</key><integer>61</integer> <key>col</key><integer>8</integer> <key>file</key><integer>0</integer> </dict> @@ -519,7 +519,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>58</integer> + <key>line</key><integer>61</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -527,12 +527,12 @@ <array> <array> <dict> - <key>line</key><integer>58</integer> + <key>line</key><integer>61</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>58</integer> + <key>line</key><integer>61</integer> <key>col</key><integer>8</integer> <key>file</key><integer>0</integer> </dict> @@ -556,7 +556,7 @@ <key>issue_hash_function_offset</key><string>1</string> <key>location</key> <dict> - <key>line</key><integer>58</integer> + <key>line</key><integer>61</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -568,7 +568,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>62</integer> + <key>line</key><integer>65</integer> <key>col</key><integer>19</integer> <key>file</key><integer>0</integer> </dict> @@ -576,12 +576,12 @@ <array> <array> <dict> - <key>line</key><integer>62</integer> + <key>line</key><integer>65</integer> <key>col</key><integer>19</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>62</integer> + <key>line</key><integer>65</integer> <key>col</key><integer>31</integer> <key>file</key><integer>0</integer> </dict> @@ -601,12 +601,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>62</integer> + <key>line</key><integer>65</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>62</integer> + <key>line</key><integer>65</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> @@ -614,12 +614,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>63</integer> + <key>line</key><integer>66</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>63</integer> + <key>line</key><integer>66</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -631,7 +631,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>63</integer> + <key>line</key><integer>66</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -639,24 +639,24 @@ <array> <array> <dict> - <key>line</key><integer>63</integer> + <key>line</key><integer>66</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>63</integer> + <key>line</key><integer>66</integer> <key>col</key><integer>17</integer> <key>file</key><integer>0</integer> </dict> </array> <array> <dict> - <key>line</key><integer>63</integer> + <key>line</key><integer>66</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>63</integer> + <key>line</key><integer>66</integer> <key>col</key><integer>9</integer> <key>file</key><integer>0</integer> </dict> @@ -676,12 +676,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>63</integer> + <key>line</key><integer>66</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>63</integer> + <key>line</key><integer>66</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -689,12 +689,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>64</integer> + <key>line</key><integer>67</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>64</integer> + <key>line</key><integer>67</integer> <key>col</key><integer>8</integer> <key>file</key><integer>0</integer> </dict> @@ -706,7 +706,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>64</integer> + <key>line</key><integer>67</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -714,12 +714,12 @@ <array> <array> <dict> - <key>line</key><integer>64</integer> + <key>line</key><integer>67</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>64</integer> + <key>line</key><integer>67</integer> <key>col</key><integer>8</integer> <key>file</key><integer>0</integer> </dict> @@ -743,7 +743,7 @@ <key>issue_hash_function_offset</key><string>1</string> <key>location</key> <dict> - <key>line</key><integer>64</integer> + <key>line</key><integer>67</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -755,7 +755,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>68</integer> + <key>line</key><integer>71</integer> <key>col</key><integer>22</integer> <key>file</key><integer>0</integer> </dict> @@ -763,12 +763,12 @@ <array> <array> <dict> - <key>line</key><integer>68</integer> + <key>line</key><integer>71</integer> <key>col</key><integer>22</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>68</integer> + <key>line</key><integer>71</integer> <key>col</key><integer>37</integer> <key>file</key><integer>0</integer> </dict> @@ -788,12 +788,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>68</integer> + <key>line</key><integer>71</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>68</integer> + <key>line</key><integer>71</integer> <key>col</key><integer>11</integer> <key>file</key><integer>0</integer> </dict> @@ -801,12 +801,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>69</integer> + <key>line</key><integer>72</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>69</integer> + <key>line</key><integer>72</integer> <key>col</key><integer>10</integer> <key>file</key><integer>0</integer> </dict> @@ -818,7 +818,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>69</integer> + <key>line</key><integer>72</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -826,24 +826,24 @@ <array> <array> <dict> - <key>line</key><integer>69</integer> + <key>line</key><integer>72</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>69</integer> + <key>line</key><integer>72</integer> <key>col</key><integer>18</integer> <key>file</key><integer>0</integer> </dict> </array> <array> <dict> - <key>line</key><integer>69</integer> + <key>line</key><integer>72</integer> <key>col</key><integer>12</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>69</integer> + <key>line</key><integer>72</integer> <key>col</key><integer>17</integer> <key>file</key><integer>0</integer> </dict> @@ -863,12 +863,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>69</integer> + <key>line</key><integer>72</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>69</integer> + <key>line</key><integer>72</integer> <key>col</key><integer>10</integer> <key>file</key><integer>0</integer> </dict> @@ -876,12 +876,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>70</integer> + <key>line</key><integer>73</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>70</integer> + <key>line</key><integer>73</integer> <key>col</key><integer>8</integer> <key>file</key><integer>0</integer> </dict> @@ -893,7 +893,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>70</integer> + <key>line</key><integer>73</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -901,12 +901,12 @@ <array> <array> <dict> - <key>line</key><integer>70</integer> + <key>line</key><integer>73</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>70</integer> + <key>line</key><integer>73</integer> <key>col</key><integer>8</integer> <key>file</key><integer>0</integer> </dict> @@ -930,7 +930,7 @@ <key>issue_hash_function_offset</key><string>1</string> <key>location</key> <dict> - <key>line</key><integer>70</integer> + <key>line</key><integer>73</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -942,7 +942,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>74</integer> + <key>line</key><integer>77</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -950,12 +950,12 @@ <array> <array> <dict> - <key>line</key><integer>74</integer> + <key>line</key><integer>77</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>74</integer> + <key>line</key><integer>77</integer> <key>col</key><integer>37</integer> <key>file</key><integer>0</integer> </dict> @@ -975,12 +975,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>74</integer> + <key>line</key><integer>77</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>74</integer> + <key>line</key><integer>77</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> @@ -988,12 +988,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>75</integer> + <key>line</key><integer>78</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>75</integer> + <key>line</key><integer>78</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -1005,7 +1005,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>75</integer> + <key>line</key><integer>78</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -1013,24 +1013,24 @@ <array> <array> <dict> - <key>line</key><integer>75</integer> + <key>line</key><integer>78</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>75</integer> + <key>line</key><integer>78</integer> <key>col</key><integer>18</integer> <key>file</key><integer>0</integer> </dict> </array> <array> <dict> - <key>line</key><integer>75</integer> + <key>line</key><integer>78</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>75</integer> + <key>line</key><integer>78</integer> <key>col</key><integer>9</integer> <key>file</key><integer>0</integer> </dict> @@ -1050,12 +1050,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>75</integer> + <key>line</key><integer>78</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>75</integer> + <key>line</key><integer>78</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -1063,12 +1063,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>76</integer> + <key>line</key><integer>79</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>76</integer> + <key>line</key><integer>79</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -1080,7 +1080,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>76</integer> + <key>line</key><integer>79</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -1088,12 +1088,12 @@ <array> <array> <dict> - <key>line</key><integer>76</integer> + <key>line</key><integer>79</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>76</integer> + <key>line</key><integer>79</integer> <key>col</key><integer>9</integer> <key>file</key><integer>0</integer> </dict> @@ -1117,7 +1117,7 @@ <key>issue_hash_function_offset</key><string>3</string> <key>location</key> <dict> - <key>line</key><integer>76</integer> + <key>line</key><integer>79</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -1129,7 +1129,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>80</integer> + <key>line</key><integer>83</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -1137,12 +1137,12 @@ <array> <array> <dict> - <key>line</key><integer>80</integer> + <key>line</key><integer>83</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>80</integer> + <key>line</key><integer>83</integer> <key>col</key><integer>37</integer> <key>file</key><integer>0</integer> </dict> @@ -1162,12 +1162,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>80</integer> + <key>line</key><integer>83</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>80</integer> + <key>line</key><integer>83</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> @@ -1175,12 +1175,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>81</integer> + <key>line</key><integer>84</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>81</integer> + <key>line</key><integer>84</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -1192,7 +1192,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>81</integer> + <key>line</key><integer>84</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -1200,24 +1200,24 @@ <array> <array> <dict> - <key>line</key><integer>81</integer> + <key>line</key><integer>84</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>81</integer> + <key>line</key><integer>84</integer> <key>col</key><integer>18</integer> <key>file</key><integer>0</integer> </dict> </array> <array> <dict> - <key>line</key><integer>81</integer> + <key>line</key><integer>84</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>81</integer> + <key>line</key><integer>84</integer> <key>col</key><integer>9</integer> <key>file</key><integer>0</integer> </dict> @@ -1237,12 +1237,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>81</integer> + <key>line</key><integer>84</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>81</integer> + <key>line</key><integer>84</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -1250,12 +1250,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>82</integer> + <key>line</key><integer>85</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>82</integer> + <key>line</key><integer>85</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -1267,7 +1267,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>82</integer> + <key>line</key><integer>85</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -1275,12 +1275,12 @@ <array> <array> <dict> - <key>line</key><integer>82</integer> + <key>line</key><integer>85</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>82</integer> + <key>line</key><integer>85</integer> <key>col</key><integer>9</integer> <key>file</key><integer>0</integer> </dict> @@ -1304,7 +1304,7 @@ <key>issue_hash_function_offset</key><string>3</string> <key>location</key> <dict> - <key>line</key><integer>82</integer> + <key>line</key><integer>85</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -1316,7 +1316,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>86</integer> + <key>line</key><integer>89</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -1324,12 +1324,12 @@ <array> <array> <dict> - <key>line</key><integer>86</integer> + <key>line</key><integer>89</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>86</integer> + <key>line</key><integer>89</integer> <key>col</key><integer>37</integer> <key>file</key><integer>0</integer> </dict> @@ -1349,12 +1349,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>86</integer> + <key>line</key><integer>89</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>86</integer> + <key>line</key><integer>89</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> @@ -1362,12 +1362,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>87</integer> + <key>line</key><integer>90</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>87</integer> + <key>line</key><integer>90</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -1379,7 +1379,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>87</integer> + <key>line</key><integer>90</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -1387,24 +1387,24 @@ <array> <array> <dict> - <key>line</key><integer>87</integer> + <key>line</key><integer>90</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>87</integer> + <key>line</key><integer>90</integer> <key>col</key><integer>22</integer> <key>file</key><integer>0</integer> </dict> </array> <array> <dict> - <key>line</key><integer>87</integer> + <key>line</key><integer>90</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>87</integer> + <key>line</key><integer>90</integer> <key>col</key><integer>9</integer> <key>file</key><integer>0</integer> </dict> @@ -1424,12 +1424,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>87</integer> + <key>line</key><integer>90</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>87</integer> + <key>line</key><integer>90</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -1437,12 +1437,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>88</integer> + <key>line</key><integer>91</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>88</integer> + <key>line</key><integer>91</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -1454,7 +1454,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>88</integer> + <key>line</key><integer>91</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -1462,24 +1462,24 @@ <array> <array> <dict> - <key>line</key><integer>88</integer> + <key>line</key><integer>91</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>88</integer> + <key>line</key><integer>91</integer> <key>col</key><integer>22</integer> <key>file</key><integer>0</integer> </dict> </array> <array> <dict> - <key>line</key><integer>88</integer> + <key>line</key><integer>91</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>88</integer> + <key>line</key><integer>91</integer> <key>col</key><integer>9</integer> <key>file</key><integer>0</integer> </dict> @@ -1499,12 +1499,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>88</integer> + <key>line</key><integer>91</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>88</integer> + <key>line</key><integer>91</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -1512,12 +1512,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>89</integer> + <key>line</key><integer>92</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>89</integer> + <key>line</key><integer>92</integer> <key>col</key><integer>8</integer> <key>file</key><integer>0</integer> </dict> @@ -1529,7 +1529,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>89</integer> + <key>line</key><integer>92</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -1537,12 +1537,12 @@ <array> <array> <dict> - <key>line</key><integer>89</integer> + <key>line</key><integer>92</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>89</integer> + <key>line</key><integer>92</integer> <key>col</key><integer>8</integer> <key>file</key><integer>0</integer> </dict> @@ -1566,7 +1566,7 @@ <key>issue_hash_function_offset</key><string>4</string> <key>location</key> <dict> - <key>line</key><integer>89</integer> + <key>line</key><integer>92</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -1578,7 +1578,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>93</integer> + <key>line</key><integer>96</integer> <key>col</key><integer>19</integer> <key>file</key><integer>0</integer> </dict> @@ -1586,12 +1586,12 @@ <array> <array> <dict> - <key>line</key><integer>93</integer> + <key>line</key><integer>96</integer> <key>col</key><integer>19</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>93</integer> + <key>line</key><integer>96</integer> <key>col</key><integer>31</integer> <key>file</key><integer>0</integer> </dict> @@ -1611,12 +1611,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>93</integer> + <key>line</key><integer>96</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>93</integer> + <key>line</key><integer>96</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> @@ -1624,12 +1624,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>94</integer> + <key>line</key><integer>97</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>94</integer> + <key>line</key><integer>97</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -1641,7 +1641,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>94</integer> + <key>line</key><integer>97</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -1649,24 +1649,24 @@ <array> <array> <dict> - <key>line</key><integer>94</integer> + <key>line</key><integer>97</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>94</integer> + <key>line</key><integer>97</integer> <key>col</key><integer>22</integer> <key>file</key><integer>0</integer> </dict> </array> <array> <dict> - <key>line</key><integer>94</integer> + <key>line</key><integer>97</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>94</integer> + <key>line</key><integer>97</integer> <key>col</key><integer>9</integer> <key>file</key><integer>0</integer> </dict> @@ -1686,12 +1686,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>94</integer> + <key>line</key><integer>97</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>94</integer> + <key>line</key><integer>97</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -1699,12 +1699,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>95</integer> + <key>line</key><integer>98</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>95</integer> + <key>line</key><integer>98</integer> <key>col</key><integer>8</integer> <key>file</key><integer>0</integer> </dict> @@ -1716,7 +1716,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>95</integer> + <key>line</key><integer>98</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -1724,12 +1724,12 @@ <array> <array> <dict> - <key>line</key><integer>95</integer> + <key>line</key><integer>98</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>95</integer> + <key>line</key><integer>98</integer> <key>col</key><integer>8</integer> <key>file</key><integer>0</integer> </dict> @@ -1753,7 +1753,119 @@ <key>issue_hash_function_offset</key><string>3</string> <key>location</key> <dict> - <key>line</key><integer>95</integer> + <key>line</key><integer>98</integer> + <key>col</key><integer>3</integer> + <key>file</key><integer>0</integer> + </dict> + </dict> + <dict> + <key>path</key> + <array> + <dict> + <key>kind</key><string>event</string> + <key>location</key> + <dict> + <key>line</key><integer>102</integer> + <key>col</key><integer>22</integer> + <key>file</key><integer>0</integer> + </dict> + <key>ranges</key> + <array> + <array> + <dict> + <key>line</key><integer>102</integer> + <key>col</key><integer>22</integer> + <key>file</key><integer>0</integer> + </dict> + <dict> + <key>line</key><integer>102</integer> + <key>col</key><integer>40</integer> + <key>file</key><integer>0</integer> + </dict> + </array> + </array> + <key>depth</key><integer>0</integer> + <key>extended_message</key> + <string>Call to function 'CFCreateSomething' returns a Core Foundation object of type CFTypeRef with a +1 retain count</string> + <key>message</key> + <string>Call to function 'CFCreateSomething' returns a Core Foundation object of type CFTypeRef with a +1 retain count</string> + </dict> + <dict> + <key>kind</key><string>control</string> + <key>edges</key> + <array> + <dict> + <key>start</key> + <array> + <dict> + <key>line</key><integer>102</integer> + <key>col</key><integer>3</integer> + <key>file</key><integer>0</integer> + </dict> + <dict> + <key>line</key><integer>102</integer> + <key>col</key><integer>11</integer> + <key>file</key><integer>0</integer> + </dict> + </array> + <key>end</key> + <array> + <dict> + <key>line</key><integer>105</integer> + <key>col</key><integer>3</integer> + <key>file</key><integer>0</integer> + </dict> + <dict> + <key>line</key><integer>105</integer> + <key>col</key><integer>8</integer> + <key>file</key><integer>0</integer> + </dict> + </array> + </dict> + </array> + </dict> + <dict> + <key>kind</key><string>event</string> + <key>location</key> + <dict> + <key>line</key><integer>105</integer> + <key>col</key><integer>3</integer> + <key>file</key><integer>0</integer> + </dict> + <key>ranges</key> + <array> + <array> + <dict> + <key>line</key><integer>105</integer> + <key>col</key><integer>3</integer> + <key>file</key><integer>0</integer> + </dict> + <dict> + <key>line</key><integer>105</integer> + <key>col</key><integer>8</integer> + <key>file</key><integer>0</integer> + </dict> + </array> + </array> + <key>depth</key><integer>0</integer> + <key>extended_message</key> + <string>Object leaked: object allocated and stored into 'leaked' is not referenced later in this execution path and has a retain count of +1</string> + <key>message</key> + <string>Object leaked: object allocated and stored into 'leaked' is not referenced later in this execution path and has a retain count of +1</string> + </dict> + </array> + <key>description</key><string>Potential leak of an object stored into 'leaked'</string> + <key>category</key><string>Memory (Core Foundation/Objective-C)</string> + <key>type</key><string>Leak</string> + <key>check_name</key><string>osx.cocoa.RetainCount</string> + <!-- This hash is experimental and going to change! --> + <key>issue_hash_content_of_line_in_context</key><string>3f08690fae9687c29bb23b7a7cb7995b</string> + <key>issue_context_kind</key><string>function</string> + <key>issue_context</key><string>makeCollectableIgnored</string> + <key>issue_hash_function_offset</key><string>1</string> + <key>location</key> + <dict> + <key>line</key><integer>105</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -1765,7 +1877,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>99</integer> + <key>line</key><integer>109</integer> <key>col</key><integer>22</integer> <key>file</key><integer>0</integer> </dict> @@ -1773,12 +1885,12 @@ <array> <array> <dict> - <key>line</key><integer>99</integer> + <key>line</key><integer>109</integer> <key>col</key><integer>22</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>99</integer> + <key>line</key><integer>109</integer> <key>col</key><integer>37</integer> <key>file</key><integer>0</integer> </dict> @@ -1798,12 +1910,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>99</integer> + <key>line</key><integer>109</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>99</integer> + <key>line</key><integer>109</integer> <key>col</key><integer>11</integer> <key>file</key><integer>0</integer> </dict> @@ -1811,12 +1923,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>100</integer> + <key>line</key><integer>110</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>100</integer> + <key>line</key><integer>110</integer> <key>col</key><integer>8</integer> <key>file</key><integer>0</integer> </dict> @@ -1828,7 +1940,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>100</integer> + <key>line</key><integer>110</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -1836,24 +1948,24 @@ <array> <array> <dict> - <key>line</key><integer>100</integer> + <key>line</key><integer>110</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>100</integer> + <key>line</key><integer>110</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> </array> <array> <dict> - <key>line</key><integer>100</integer> + <key>line</key><integer>110</integer> <key>col</key><integer>10</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>100</integer> + <key>line</key><integer>110</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -1869,7 +1981,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>100</integer> + <key>line</key><integer>110</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -1877,12 +1989,12 @@ <array> <array> <dict> - <key>line</key><integer>100</integer> + <key>line</key><integer>110</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>100</integer> + <key>line</key><integer>110</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -1906,7 +2018,7 @@ <key>issue_hash_function_offset</key><string>2</string> <key>location</key> <dict> - <key>line</key><integer>100</integer> + <key>line</key><integer>110</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -1918,7 +2030,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>104</integer> + <key>line</key><integer>114</integer> <key>col</key><integer>22</integer> <key>file</key><integer>0</integer> </dict> @@ -1926,12 +2038,12 @@ <array> <array> <dict> - <key>line</key><integer>104</integer> + <key>line</key><integer>114</integer> <key>col</key><integer>22</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>104</integer> + <key>line</key><integer>114</integer> <key>col</key><integer>40</integer> <key>file</key><integer>0</integer> </dict> @@ -1951,12 +2063,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>104</integer> + <key>line</key><integer>114</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>104</integer> + <key>line</key><integer>114</integer> <key>col</key><integer>11</integer> <key>file</key><integer>0</integer> </dict> @@ -1964,12 +2076,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>105</integer> + <key>line</key><integer>115</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>105</integer> + <key>line</key><integer>115</integer> <key>col</key><integer>8</integer> <key>file</key><integer>0</integer> </dict> @@ -1981,7 +2093,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>105</integer> + <key>line</key><integer>115</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -1989,24 +2101,24 @@ <array> <array> <dict> - <key>line</key><integer>105</integer> + <key>line</key><integer>115</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>105</integer> + <key>line</key><integer>115</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> </array> <array> <dict> - <key>line</key><integer>105</integer> + <key>line</key><integer>115</integer> <key>col</key><integer>10</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>105</integer> + <key>line</key><integer>115</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -2022,7 +2134,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>105</integer> + <key>line</key><integer>115</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -2030,12 +2142,12 @@ <array> <array> <dict> - <key>line</key><integer>105</integer> + <key>line</key><integer>115</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>105</integer> + <key>line</key><integer>115</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -2059,7 +2171,7 @@ <key>issue_hash_function_offset</key><string>1</string> <key>location</key> <dict> - <key>line</key><integer>105</integer> + <key>line</key><integer>115</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -2071,7 +2183,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>110</integer> + <key>line</key><integer>120</integer> <key>col</key><integer>20</integer> <key>file</key><integer>0</integer> </dict> @@ -2079,12 +2191,12 @@ <array> <array> <dict> - <key>line</key><integer>110</integer> + <key>line</key><integer>120</integer> <key>col</key><integer>20</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>110</integer> + <key>line</key><integer>120</integer> <key>col</key><integer>32</integer> <key>file</key><integer>0</integer> </dict> @@ -2104,12 +2216,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>110</integer> + <key>line</key><integer>120</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>110</integer> + <key>line</key><integer>120</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> @@ -2117,12 +2229,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>111</integer> + <key>line</key><integer>121</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>111</integer> + <key>line</key><integer>121</integer> <key>col</key><integer>8</integer> <key>file</key><integer>0</integer> </dict> @@ -2134,7 +2246,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>111</integer> + <key>line</key><integer>121</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -2142,24 +2254,24 @@ <array> <array> <dict> - <key>line</key><integer>111</integer> + <key>line</key><integer>121</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>111</integer> + <key>line</key><integer>121</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> </array> <array> <dict> - <key>line</key><integer>111</integer> + <key>line</key><integer>121</integer> <key>col</key><integer>10</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>111</integer> + <key>line</key><integer>121</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -2175,7 +2287,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>111</integer> + <key>line</key><integer>121</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -2183,12 +2295,12 @@ <array> <array> <dict> - <key>line</key><integer>111</integer> + <key>line</key><integer>121</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>111</integer> + <key>line</key><integer>121</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -2212,7 +2324,7 @@ <key>issue_hash_function_offset</key><string>2</string> <key>location</key> <dict> - <key>line</key><integer>111</integer> + <key>line</key><integer>121</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -2224,7 +2336,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>115</integer> + <key>line</key><integer>125</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -2232,12 +2344,12 @@ <array> <array> <dict> - <key>line</key><integer>115</integer> + <key>line</key><integer>125</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>115</integer> + <key>line</key><integer>125</integer> <key>col</key><integer>18</integer> <key>file</key><integer>0</integer> </dict> @@ -2257,12 +2369,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>115</integer> + <key>line</key><integer>125</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>115</integer> + <key>line</key><integer>125</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> @@ -2270,12 +2382,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>116</integer> + <key>line</key><integer>126</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>116</integer> + <key>line</key><integer>126</integer> <key>col</key><integer>8</integer> <key>file</key><integer>0</integer> </dict> @@ -2287,7 +2399,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>116</integer> + <key>line</key><integer>126</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -2295,24 +2407,24 @@ <array> <array> <dict> - <key>line</key><integer>116</integer> + <key>line</key><integer>126</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>116</integer> + <key>line</key><integer>126</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> </array> <array> <dict> - <key>line</key><integer>116</integer> + <key>line</key><integer>126</integer> <key>col</key><integer>10</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>116</integer> + <key>line</key><integer>126</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -2328,7 +2440,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>116</integer> + <key>line</key><integer>126</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -2336,12 +2448,12 @@ <array> <array> <dict> - <key>line</key><integer>116</integer> + <key>line</key><integer>126</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>116</integer> + <key>line</key><integer>126</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -2365,7 +2477,7 @@ <key>issue_hash_function_offset</key><string>2</string> <key>location</key> <dict> - <key>line</key><integer>116</integer> + <key>line</key><integer>126</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -2377,7 +2489,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>120</integer> + <key>line</key><integer>130</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -2385,12 +2497,12 @@ <array> <array> <dict> - <key>line</key><integer>120</integer> + <key>line</key><integer>130</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>120</integer> + <key>line</key><integer>130</integer> <key>col</key><integer>18</integer> <key>file</key><integer>0</integer> </dict> @@ -2410,12 +2522,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>120</integer> + <key>line</key><integer>130</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>120</integer> + <key>line</key><integer>130</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> @@ -2423,12 +2535,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>121</integer> + <key>line</key><integer>131</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>121</integer> + <key>line</key><integer>131</integer> <key>col</key><integer>8</integer> <key>file</key><integer>0</integer> </dict> @@ -2440,7 +2552,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>121</integer> + <key>line</key><integer>131</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -2448,24 +2560,24 @@ <array> <array> <dict> - <key>line</key><integer>121</integer> + <key>line</key><integer>131</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>121</integer> + <key>line</key><integer>131</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> </array> <array> <dict> - <key>line</key><integer>121</integer> + <key>line</key><integer>131</integer> <key>col</key><integer>10</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>121</integer> + <key>line</key><integer>131</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -2481,7 +2593,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>121</integer> + <key>line</key><integer>131</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -2489,12 +2601,12 @@ <array> <array> <dict> - <key>line</key><integer>121</integer> + <key>line</key><integer>131</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>121</integer> + <key>line</key><integer>131</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -2518,7 +2630,7 @@ <key>issue_hash_function_offset</key><string>2</string> <key>location</key> <dict> - <key>line</key><integer>121</integer> + <key>line</key><integer>131</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -2530,7 +2642,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>125</integer> + <key>line</key><integer>135</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -2538,12 +2650,12 @@ <array> <array> <dict> - <key>line</key><integer>125</integer> + <key>line</key><integer>135</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>125</integer> + <key>line</key><integer>135</integer> <key>col</key><integer>32</integer> <key>file</key><integer>0</integer> </dict> @@ -2563,12 +2675,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>125</integer> + <key>line</key><integer>135</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>125</integer> + <key>line</key><integer>135</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> @@ -2576,12 +2688,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>126</integer> + <key>line</key><integer>136</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>126</integer> + <key>line</key><integer>136</integer> <key>col</key><integer>8</integer> <key>file</key><integer>0</integer> </dict> @@ -2593,7 +2705,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>126</integer> + <key>line</key><integer>136</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -2601,24 +2713,24 @@ <array> <array> <dict> - <key>line</key><integer>126</integer> + <key>line</key><integer>136</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>126</integer> + <key>line</key><integer>136</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> </array> <array> <dict> - <key>line</key><integer>126</integer> + <key>line</key><integer>136</integer> <key>col</key><integer>10</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>126</integer> + <key>line</key><integer>136</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -2634,7 +2746,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>126</integer> + <key>line</key><integer>136</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -2642,12 +2754,12 @@ <array> <array> <dict> - <key>line</key><integer>126</integer> + <key>line</key><integer>136</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>126</integer> + <key>line</key><integer>136</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -2671,7 +2783,7 @@ <key>issue_hash_function_offset</key><string>1</string> <key>location</key> <dict> - <key>line</key><integer>126</integer> + <key>line</key><integer>136</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -2683,7 +2795,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>130</integer> + <key>line</key><integer>140</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -2691,12 +2803,12 @@ <array> <array> <dict> - <key>line</key><integer>130</integer> + <key>line</key><integer>140</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>130</integer> + <key>line</key><integer>140</integer> <key>col</key><integer>32</integer> <key>file</key><integer>0</integer> </dict> @@ -2716,12 +2828,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>130</integer> + <key>line</key><integer>140</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>130</integer> + <key>line</key><integer>140</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> @@ -2729,12 +2841,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>131</integer> + <key>line</key><integer>141</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>131</integer> + <key>line</key><integer>141</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -2746,7 +2858,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>131</integer> + <key>line</key><integer>141</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -2754,24 +2866,24 @@ <array> <array> <dict> - <key>line</key><integer>131</integer> + <key>line</key><integer>141</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>131</integer> + <key>line</key><integer>141</integer> <key>col</key><integer>22</integer> <key>file</key><integer>0</integer> </dict> </array> <array> <dict> - <key>line</key><integer>131</integer> + <key>line</key><integer>141</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>131</integer> + <key>line</key><integer>141</integer> <key>col</key><integer>9</integer> <key>file</key><integer>0</integer> </dict> @@ -2791,12 +2903,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>131</integer> + <key>line</key><integer>141</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>131</integer> + <key>line</key><integer>141</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -2804,12 +2916,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>132</integer> + <key>line</key><integer>142</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>132</integer> + <key>line</key><integer>142</integer> <key>col</key><integer>8</integer> <key>file</key><integer>0</integer> </dict> @@ -2821,7 +2933,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>132</integer> + <key>line</key><integer>142</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -2829,12 +2941,12 @@ <array> <array> <dict> - <key>line</key><integer>132</integer> + <key>line</key><integer>142</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>132</integer> + <key>line</key><integer>142</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -2858,7 +2970,7 @@ <key>issue_hash_function_offset</key><string>3</string> <key>location</key> <dict> - <key>line</key><integer>132</integer> + <key>line</key><integer>142</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -2870,7 +2982,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>160</integer> + <key>line</key><integer>170</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -2878,12 +2990,12 @@ <array> <array> <dict> - <key>line</key><integer>160</integer> + <key>line</key><integer>170</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>160</integer> + <key>line</key><integer>170</integer> <key>col</key><integer>16</integer> <key>file</key><integer>0</integer> </dict> @@ -2903,12 +3015,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>160</integer> + <key>line</key><integer>170</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>160</integer> + <key>line</key><integer>170</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> @@ -2916,12 +3028,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>161</integer> + <key>line</key><integer>171</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>161</integer> + <key>line</key><integer>171</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -2933,7 +3045,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>161</integer> + <key>line</key><integer>171</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -2941,12 +3053,12 @@ <array> <array> <dict> - <key>line</key><integer>161</integer> + <key>line</key><integer>171</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>161</integer> + <key>line</key><integer>171</integer> <key>col</key><integer>9</integer> <key>file</key><integer>0</integer> </dict> @@ -2970,7 +3082,7 @@ <key>issue_hash_function_offset</key><string>2</string> <key>location</key> <dict> - <key>line</key><integer>161</integer> + <key>line</key><integer>171</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -2982,7 +3094,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>165</integer> + <key>line</key><integer>175</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -2990,12 +3102,12 @@ <array> <array> <dict> - <key>line</key><integer>165</integer> + <key>line</key><integer>175</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>165</integer> + <key>line</key><integer>175</integer> <key>col</key><integer>18</integer> <key>file</key><integer>0</integer> </dict> @@ -3015,12 +3127,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>165</integer> + <key>line</key><integer>175</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>165</integer> + <key>line</key><integer>175</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> @@ -3028,12 +3140,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>166</integer> + <key>line</key><integer>176</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>166</integer> + <key>line</key><integer>176</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -3045,7 +3157,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>166</integer> + <key>line</key><integer>176</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -3053,12 +3165,12 @@ <array> <array> <dict> - <key>line</key><integer>166</integer> + <key>line</key><integer>176</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>166</integer> + <key>line</key><integer>176</integer> <key>col</key><integer>9</integer> <key>file</key><integer>0</integer> </dict> @@ -3082,7 +3194,7 @@ <key>issue_hash_function_offset</key><string>2</string> <key>location</key> <dict> - <key>line</key><integer>166</integer> + <key>line</key><integer>176</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -3094,7 +3206,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>170</integer> + <key>line</key><integer>180</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -3102,12 +3214,12 @@ <array> <array> <dict> - <key>line</key><integer>170</integer> + <key>line</key><integer>180</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>170</integer> + <key>line</key><integer>180</integer> <key>col</key><integer>20</integer> <key>file</key><integer>0</integer> </dict> @@ -3127,12 +3239,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>170</integer> + <key>line</key><integer>180</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>170</integer> + <key>line</key><integer>180</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> @@ -3140,12 +3252,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>171</integer> + <key>line</key><integer>181</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>171</integer> + <key>line</key><integer>181</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -3157,7 +3269,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>171</integer> + <key>line</key><integer>181</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -3165,12 +3277,12 @@ <array> <array> <dict> - <key>line</key><integer>171</integer> + <key>line</key><integer>181</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>171</integer> + <key>line</key><integer>181</integer> <key>col</key><integer>9</integer> <key>file</key><integer>0</integer> </dict> @@ -3194,7 +3306,7 @@ <key>issue_hash_function_offset</key><string>2</string> <key>location</key> <dict> - <key>line</key><integer>171</integer> + <key>line</key><integer>181</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -3206,7 +3318,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>175</integer> + <key>line</key><integer>185</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -3214,12 +3326,12 @@ <array> <array> <dict> - <key>line</key><integer>175</integer> + <key>line</key><integer>185</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>175</integer> + <key>line</key><integer>185</integer> <key>col</key><integer>20</integer> <key>file</key><integer>0</integer> </dict> @@ -3239,12 +3351,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>175</integer> + <key>line</key><integer>185</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>175</integer> + <key>line</key><integer>185</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> @@ -3252,12 +3364,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>176</integer> + <key>line</key><integer>186</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>176</integer> + <key>line</key><integer>186</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -3269,7 +3381,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>176</integer> + <key>line</key><integer>186</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -3277,12 +3389,12 @@ <array> <array> <dict> - <key>line</key><integer>176</integer> + <key>line</key><integer>186</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>176</integer> + <key>line</key><integer>186</integer> <key>col</key><integer>9</integer> <key>file</key><integer>0</integer> </dict> @@ -3306,7 +3418,7 @@ <key>issue_hash_function_offset</key><string>2</string> <key>location</key> <dict> - <key>line</key><integer>176</integer> + <key>line</key><integer>186</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -3318,7 +3430,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>180</integer> + <key>line</key><integer>190</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -3326,12 +3438,12 @@ <array> <array> <dict> - <key>line</key><integer>180</integer> + <key>line</key><integer>190</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>180</integer> + <key>line</key><integer>190</integer> <key>col</key><integer>27</integer> <key>file</key><integer>0</integer> </dict> @@ -3351,12 +3463,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>180</integer> + <key>line</key><integer>190</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>180</integer> + <key>line</key><integer>190</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> @@ -3364,12 +3476,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>181</integer> + <key>line</key><integer>191</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>181</integer> + <key>line</key><integer>191</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -3381,7 +3493,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>181</integer> + <key>line</key><integer>191</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -3389,12 +3501,12 @@ <array> <array> <dict> - <key>line</key><integer>181</integer> + <key>line</key><integer>191</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>181</integer> + <key>line</key><integer>191</integer> <key>col</key><integer>9</integer> <key>file</key><integer>0</integer> </dict> @@ -3418,7 +3530,7 @@ <key>issue_hash_function_offset</key><string>2</string> <key>location</key> <dict> - <key>line</key><integer>181</integer> + <key>line</key><integer>191</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -3434,12 +3546,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>216</integer> + <key>line</key><integer>226</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>216</integer> + <key>line</key><integer>226</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> @@ -3447,12 +3559,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>216</integer> + <key>line</key><integer>226</integer> <key>col</key><integer>11</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>216</integer> + <key>line</key><integer>226</integer> <key>col</key><integer>11</integer> <key>file</key><integer>0</integer> </dict> @@ -3464,7 +3576,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>216</integer> + <key>line</key><integer>226</integer> <key>col</key><integer>11</integer> <key>file</key><integer>0</integer> </dict> @@ -3472,12 +3584,12 @@ <array> <array> <dict> - <key>line</key><integer>216</integer> + <key>line</key><integer>226</integer> <key>col</key><integer>11</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>216</integer> + <key>line</key><integer>226</integer> <key>col</key><integer>23</integer> <key>file</key><integer>0</integer> </dict> @@ -3493,7 +3605,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>216</integer> + <key>line</key><integer>226</integer> <key>col</key><integer>10</integer> <key>file</key><integer>0</integer> </dict> @@ -3501,12 +3613,12 @@ <array> <array> <dict> - <key>line</key><integer>216</integer> + <key>line</key><integer>226</integer> <key>col</key><integer>10</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>216</integer> + <key>line</key><integer>226</integer> <key>col</key><integer>30</integer> <key>file</key><integer>0</integer> </dict> @@ -3522,7 +3634,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>196</integer> + <key>line</key><integer>206</integer> <key>col</key><integer>1</integer> <key>file</key><integer>0</integer> </dict> @@ -3540,12 +3652,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>196</integer> + <key>line</key><integer>206</integer> <key>col</key><integer>1</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>196</integer> + <key>line</key><integer>206</integer> <key>col</key><integer>1</integer> <key>file</key><integer>0</integer> </dict> @@ -3553,12 +3665,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>197</integer> + <key>line</key><integer>207</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>197</integer> + <key>line</key><integer>207</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> @@ -3574,12 +3686,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>197</integer> + <key>line</key><integer>207</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>197</integer> + <key>line</key><integer>207</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> @@ -3587,12 +3699,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>197</integer> + <key>line</key><integer>207</integer> <key>col</key><integer>7</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>197</integer> + <key>line</key><integer>207</integer> <key>col</key><integer>10</integer> <key>file</key><integer>0</integer> </dict> @@ -3604,7 +3716,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>197</integer> + <key>line</key><integer>207</integer> <key>col</key><integer>7</integer> <key>file</key><integer>0</integer> </dict> @@ -3612,12 +3724,12 @@ <array> <array> <dict> - <key>line</key><integer>197</integer> + <key>line</key><integer>207</integer> <key>col</key><integer>7</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>197</integer> + <key>line</key><integer>207</integer> <key>col</key><integer>10</integer> <key>file</key><integer>0</integer> </dict> @@ -3637,12 +3749,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>197</integer> + <key>line</key><integer>207</integer> <key>col</key><integer>7</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>197</integer> + <key>line</key><integer>207</integer> <key>col</key><integer>10</integer> <key>file</key><integer>0</integer> </dict> @@ -3650,12 +3762,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>199</integer> + <key>line</key><integer>209</integer> <key>col</key><integer>5</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>199</integer> + <key>line</key><integer>209</integer> <key>col</key><integer>10</integer> <key>file</key><integer>0</integer> </dict> @@ -3667,7 +3779,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>216</integer> + <key>line</key><integer>226</integer> <key>col</key><integer>10</integer> <key>file</key><integer>0</integer> </dict> @@ -3675,12 +3787,12 @@ <array> <array> <dict> - <key>line</key><integer>216</integer> + <key>line</key><integer>226</integer> <key>col</key><integer>10</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>216</integer> + <key>line</key><integer>226</integer> <key>col</key><integer>30</integer> <key>file</key><integer>0</integer> </dict> @@ -3700,12 +3812,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>216</integer> + <key>line</key><integer>226</integer> <key>col</key><integer>10</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>216</integer> + <key>line</key><integer>226</integer> <key>col</key><integer>10</integer> <key>file</key><integer>0</integer> </dict> @@ -3713,12 +3825,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>216</integer> + <key>line</key><integer>226</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>216</integer> + <key>line</key><integer>226</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> @@ -3730,7 +3842,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>216</integer> + <key>line</key><integer>226</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -3738,12 +3850,12 @@ <array> <array> <dict> - <key>line</key><integer>216</integer> + <key>line</key><integer>226</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>216</integer> + <key>line</key><integer>226</integer> <key>col</key><integer>6</integer> <key>file</key><integer>0</integer> </dict> @@ -3767,7 +3879,7 @@ <key>issue_hash_function_offset</key><string>2</string> <key>location</key> <dict> - <key>line</key><integer>216</integer> + <key>line</key><integer>226</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -3783,12 +3895,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>216</integer> + <key>line</key><integer>226</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>216</integer> + <key>line</key><integer>226</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> @@ -3796,12 +3908,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>222</integer> + <key>line</key><integer>232</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>222</integer> + <key>line</key><integer>232</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> @@ -3817,12 +3929,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>222</integer> + <key>line</key><integer>232</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>222</integer> + <key>line</key><integer>232</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> @@ -3830,12 +3942,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>222</integer> + <key>line</key><integer>232</integer> <key>col</key><integer>10</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>222</integer> + <key>line</key><integer>232</integer> <key>col</key><integer>10</integer> <key>file</key><integer>0</integer> </dict> @@ -3847,7 +3959,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>222</integer> + <key>line</key><integer>232</integer> <key>col</key><integer>10</integer> <key>file</key><integer>0</integer> </dict> @@ -3855,12 +3967,12 @@ <array> <array> <dict> - <key>line</key><integer>222</integer> + <key>line</key><integer>232</integer> <key>col</key><integer>10</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>222</integer> + <key>line</key><integer>232</integer> <key>col</key><integer>30</integer> <key>file</key><integer>0</integer> </dict> @@ -3876,7 +3988,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>204</integer> + <key>line</key><integer>214</integer> <key>col</key><integer>1</integer> <key>file</key><integer>0</integer> </dict> @@ -3894,12 +4006,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>204</integer> + <key>line</key><integer>214</integer> <key>col</key><integer>1</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>204</integer> + <key>line</key><integer>214</integer> <key>col</key><integer>1</integer> <key>file</key><integer>0</integer> </dict> @@ -3907,12 +4019,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>205</integer> + <key>line</key><integer>215</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>205</integer> + <key>line</key><integer>215</integer> <key>col</key><integer>6</integer> <key>file</key><integer>0</integer> </dict> @@ -3924,7 +4036,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>205</integer> + <key>line</key><integer>215</integer> <key>col</key><integer>10</integer> <key>file</key><integer>0</integer> </dict> @@ -3932,12 +4044,12 @@ <array> <array> <dict> - <key>line</key><integer>205</integer> + <key>line</key><integer>215</integer> <key>col</key><integer>10</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>205</integer> + <key>line</key><integer>215</integer> <key>col</key><integer>21</integer> <key>file</key><integer>0</integer> </dict> @@ -3957,12 +4069,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>205</integer> + <key>line</key><integer>215</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>205</integer> + <key>line</key><integer>215</integer> <key>col</key><integer>6</integer> <key>file</key><integer>0</integer> </dict> @@ -3970,12 +4082,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>206</integer> + <key>line</key><integer>216</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>206</integer> + <key>line</key><integer>216</integer> <key>col</key><integer>8</integer> <key>file</key><integer>0</integer> </dict> @@ -3987,7 +4099,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>222</integer> + <key>line</key><integer>232</integer> <key>col</key><integer>10</integer> <key>file</key><integer>0</integer> </dict> @@ -3995,12 +4107,12 @@ <array> <array> <dict> - <key>line</key><integer>222</integer> + <key>line</key><integer>232</integer> <key>col</key><integer>10</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>222</integer> + <key>line</key><integer>232</integer> <key>col</key><integer>30</integer> <key>file</key><integer>0</integer> </dict> @@ -4020,12 +4132,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>222</integer> + <key>line</key><integer>232</integer> <key>col</key><integer>10</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>222</integer> + <key>line</key><integer>232</integer> <key>col</key><integer>10</integer> <key>file</key><integer>0</integer> </dict> @@ -4033,12 +4145,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>222</integer> + <key>line</key><integer>232</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>222</integer> + <key>line</key><integer>232</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> @@ -4054,12 +4166,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>222</integer> + <key>line</key><integer>232</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>222</integer> + <key>line</key><integer>232</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> @@ -4067,12 +4179,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>227</integer> + <key>line</key><integer>237</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>227</integer> + <key>line</key><integer>237</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> @@ -4088,12 +4200,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>227</integer> + <key>line</key><integer>237</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>227</integer> + <key>line</key><integer>237</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> @@ -4101,12 +4213,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>227</integer> + <key>line</key><integer>237</integer> <key>col</key><integer>11</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>227</integer> + <key>line</key><integer>237</integer> <key>col</key><integer>11</integer> <key>file</key><integer>0</integer> </dict> @@ -4118,7 +4230,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>227</integer> + <key>line</key><integer>237</integer> <key>col</key><integer>11</integer> <key>file</key><integer>0</integer> </dict> @@ -4126,12 +4238,12 @@ <array> <array> <dict> - <key>line</key><integer>227</integer> + <key>line</key><integer>237</integer> <key>col</key><integer>11</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>227</integer> + <key>line</key><integer>237</integer> <key>col</key><integer>23</integer> <key>file</key><integer>0</integer> </dict> @@ -4155,7 +4267,7 @@ <key>issue_hash_function_offset</key><string>8</string> <key>location</key> <dict> - <key>line</key><integer>227</integer> + <key>line</key><integer>237</integer> <key>col</key><integer>11</integer> <key>file</key><integer>0</integer> </dict> @@ -4167,7 +4279,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>237</integer> + <key>line</key><integer>247</integer> <key>col</key><integer>22</integer> <key>file</key><integer>0</integer> </dict> @@ -4175,12 +4287,12 @@ <array> <array> <dict> - <key>line</key><integer>237</integer> + <key>line</key><integer>247</integer> <key>col</key><integer>22</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>237</integer> + <key>line</key><integer>247</integer> <key>col</key><integer>40</integer> <key>file</key><integer>0</integer> </dict> @@ -4200,12 +4312,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>237</integer> + <key>line</key><integer>247</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>237</integer> + <key>line</key><integer>247</integer> <key>col</key><integer>11</integer> <key>file</key><integer>0</integer> </dict> @@ -4213,12 +4325,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>238</integer> + <key>line</key><integer>248</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>238</integer> + <key>line</key><integer>248</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -4230,7 +4342,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>238</integer> + <key>line</key><integer>248</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -4238,24 +4350,24 @@ <array> <array> <dict> - <key>line</key><integer>238</integer> + <key>line</key><integer>248</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>238</integer> + <key>line</key><integer>248</integer> <key>col</key><integer>23</integer> <key>file</key><integer>0</integer> </dict> </array> <array> <dict> - <key>line</key><integer>238</integer> + <key>line</key><integer>248</integer> <key>col</key><integer>17</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>238</integer> + <key>line</key><integer>248</integer> <key>col</key><integer>22</integer> <key>file</key><integer>0</integer> </dict> @@ -4275,12 +4387,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>238</integer> + <key>line</key><integer>248</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>238</integer> + <key>line</key><integer>248</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -4288,12 +4400,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>239</integer> + <key>line</key><integer>249</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>239</integer> + <key>line</key><integer>249</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -4305,7 +4417,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>239</integer> + <key>line</key><integer>249</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -4313,24 +4425,24 @@ <array> <array> <dict> - <key>line</key><integer>239</integer> + <key>line</key><integer>249</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>239</integer> + <key>line</key><integer>249</integer> <key>col</key><integer>23</integer> <key>file</key><integer>0</integer> </dict> </array> <array> <dict> - <key>line</key><integer>239</integer> + <key>line</key><integer>249</integer> <key>col</key><integer>17</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>239</integer> + <key>line</key><integer>249</integer> <key>col</key><integer>22</integer> <key>file</key><integer>0</integer> </dict> @@ -4350,12 +4462,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>239</integer> + <key>line</key><integer>249</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>239</integer> + <key>line</key><integer>249</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -4363,12 +4475,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>240</integer> + <key>line</key><integer>250</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>240</integer> + <key>line</key><integer>250</integer> <key>col</key><integer>8</integer> <key>file</key><integer>0</integer> </dict> @@ -4380,7 +4492,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>240</integer> + <key>line</key><integer>250</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -4388,12 +4500,12 @@ <array> <array> <dict> - <key>line</key><integer>240</integer> + <key>line</key><integer>250</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>240</integer> + <key>line</key><integer>250</integer> <key>col</key><integer>8</integer> <key>file</key><integer>0</integer> </dict> @@ -4417,7 +4529,7 @@ <key>issue_hash_function_offset</key><string>4</string> <key>location</key> <dict> - <key>line</key><integer>240</integer> + <key>line</key><integer>250</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -4429,7 +4541,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>244</integer> + <key>line</key><integer>254</integer> <key>col</key><integer>22</integer> <key>file</key><integer>0</integer> </dict> @@ -4437,12 +4549,12 @@ <array> <array> <dict> - <key>line</key><integer>244</integer> + <key>line</key><integer>254</integer> <key>col</key><integer>22</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>244</integer> + <key>line</key><integer>254</integer> <key>col</key><integer>37</integer> <key>file</key><integer>0</integer> </dict> @@ -4462,12 +4574,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>244</integer> + <key>line</key><integer>254</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>244</integer> + <key>line</key><integer>254</integer> <key>col</key><integer>11</integer> <key>file</key><integer>0</integer> </dict> @@ -4475,12 +4587,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>245</integer> + <key>line</key><integer>255</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>245</integer> + <key>line</key><integer>255</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -4492,7 +4604,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>245</integer> + <key>line</key><integer>255</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -4500,24 +4612,24 @@ <array> <array> <dict> - <key>line</key><integer>245</integer> + <key>line</key><integer>255</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>245</integer> + <key>line</key><integer>255</integer> <key>col</key><integer>23</integer> <key>file</key><integer>0</integer> </dict> </array> <array> <dict> - <key>line</key><integer>245</integer> + <key>line</key><integer>255</integer> <key>col</key><integer>17</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>245</integer> + <key>line</key><integer>255</integer> <key>col</key><integer>22</integer> <key>file</key><integer>0</integer> </dict> @@ -4537,12 +4649,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>245</integer> + <key>line</key><integer>255</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>245</integer> + <key>line</key><integer>255</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -4550,12 +4662,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>246</integer> + <key>line</key><integer>256</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>246</integer> + <key>line</key><integer>256</integer> <key>col</key><integer>8</integer> <key>file</key><integer>0</integer> </dict> @@ -4567,7 +4679,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>246</integer> + <key>line</key><integer>256</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -4575,12 +4687,12 @@ <array> <array> <dict> - <key>line</key><integer>246</integer> + <key>line</key><integer>256</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>246</integer> + <key>line</key><integer>256</integer> <key>col</key><integer>8</integer> <key>file</key><integer>0</integer> </dict> @@ -4604,7 +4716,7 @@ <key>issue_hash_function_offset</key><string>3</string> <key>location</key> <dict> - <key>line</key><integer>246</integer> + <key>line</key><integer>256</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -4616,7 +4728,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>250</integer> + <key>line</key><integer>260</integer> <key>col</key><integer>22</integer> <key>file</key><integer>0</integer> </dict> @@ -4624,12 +4736,12 @@ <array> <array> <dict> - <key>line</key><integer>250</integer> + <key>line</key><integer>260</integer> <key>col</key><integer>22</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>250</integer> + <key>line</key><integer>260</integer> <key>col</key><integer>37</integer> <key>file</key><integer>0</integer> </dict> @@ -4649,12 +4761,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>250</integer> + <key>line</key><integer>260</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>250</integer> + <key>line</key><integer>260</integer> <key>col</key><integer>11</integer> <key>file</key><integer>0</integer> </dict> @@ -4662,12 +4774,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>251</integer> + <key>line</key><integer>261</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>251</integer> + <key>line</key><integer>261</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -4679,7 +4791,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>251</integer> + <key>line</key><integer>261</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -4687,24 +4799,24 @@ <array> <array> <dict> - <key>line</key><integer>251</integer> + <key>line</key><integer>261</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>251</integer> + <key>line</key><integer>261</integer> <key>col</key><integer>23</integer> <key>file</key><integer>0</integer> </dict> </array> <array> <dict> - <key>line</key><integer>251</integer> + <key>line</key><integer>261</integer> <key>col</key><integer>17</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>251</integer> + <key>line</key><integer>261</integer> <key>col</key><integer>22</integer> <key>file</key><integer>0</integer> </dict> @@ -4724,12 +4836,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>251</integer> + <key>line</key><integer>261</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>251</integer> + <key>line</key><integer>261</integer> <key>col</key><integer>15</integer> <key>file</key><integer>0</integer> </dict> @@ -4737,12 +4849,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>252</integer> + <key>line</key><integer>262</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>252</integer> + <key>line</key><integer>262</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -4754,7 +4866,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>252</integer> + <key>line</key><integer>262</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -4762,24 +4874,24 @@ <array> <array> <dict> - <key>line</key><integer>252</integer> + <key>line</key><integer>262</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>252</integer> + <key>line</key><integer>262</integer> <key>col</key><integer>26</integer> <key>file</key><integer>0</integer> </dict> </array> <array> <dict> - <key>line</key><integer>252</integer> + <key>line</key><integer>262</integer> <key>col</key><integer>4</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>252</integer> + <key>line</key><integer>262</integer> <key>col</key><integer>13</integer> <key>file</key><integer>0</integer> </dict> @@ -4799,12 +4911,12 @@ <key>start</key> <array> <dict> - <key>line</key><integer>252</integer> + <key>line</key><integer>262</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>252</integer> + <key>line</key><integer>262</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -4812,12 +4924,12 @@ <key>end</key> <array> <dict> - <key>line</key><integer>253</integer> + <key>line</key><integer>263</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>253</integer> + <key>line</key><integer>263</integer> <key>col</key><integer>8</integer> <key>file</key><integer>0</integer> </dict> @@ -4829,7 +4941,7 @@ <key>kind</key><string>event</string> <key>location</key> <dict> - <key>line</key><integer>253</integer> + <key>line</key><integer>263</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> @@ -4837,12 +4949,12 @@ <array> <array> <dict> - <key>line</key><integer>253</integer> + <key>line</key><integer>263</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> <dict> - <key>line</key><integer>253</integer> + <key>line</key><integer>263</integer> <key>col</key><integer>8</integer> <key>file</key><integer>0</integer> </dict> @@ -4866,7 +4978,7 @@ <key>issue_hash_function_offset</key><string>4</string> <key>location</key> <dict> - <key>line</key><integer>253</integer> + <key>line</key><integer>263</integer> <key>col</key><integer>3</integer> <key>file</key><integer>0</integer> </dict> diff --git a/clang/test/Analysis/retain-release-path-notes.m b/clang/test/Analysis/retain-release-path-notes.m index 2dc314953fd..77bab069314 100644 --- a/clang/test/Analysis/retain-release-path-notes.m +++ b/clang/test/Analysis/retain-release-path-notes.m @@ -36,6 +36,9 @@ CFTypeRef CFRetain(CFTypeRef); void CFRelease(CFTypeRef); CFTypeRef CFAutorelease(CFTypeRef __attribute__((cf_consumed))); +id NSMakeCollectable(CFTypeRef); +CFTypeRef CFMakeCollectable(CFTypeRef); + CFTypeRef CFCreateSomething(); CFTypeRef CFGetSomething(); @@ -95,6 +98,13 @@ void autoreleaseUnowned (Foo *foo) { return; // expected-warning{{Object autoreleased too many times}} expected-note{{Object was autoreleased but has a +0 retain count}} } +void makeCollectableIgnored() { + CFTypeRef leaked = CFCreateSomething(); // expected-note{{Call to function 'CFCreateSomething' returns a Core Foundation object of type CFTypeRef with a +1 retain count}} + CFMakeCollectable(leaked); + NSMakeCollectable(leaked); + return; // expected-warning{{leak}} expected-note{{Object leaked: object allocated and stored into 'leaked' is not referenced later in this execution path and has a retain count of +1}} +} + CFTypeRef CFCopyRuleViolation () { CFTypeRef object = CFGetSomething(); // expected-note{{Call to function 'CFGetSomething' returns a Core Foundation object of type CFTypeRef with a +0 retain count}} return object; // expected-warning{{Object with a +0 retain count returned to caller where a +1 (owning) retain count is expected}} expected-note{{Object returned to caller with a +0 retain count}} expected-note{{Object with a +0 retain count returned to caller where a +1 (owning) retain count is expected}} diff --git a/clang/test/Analysis/retain-release.m b/clang/test/Analysis/retain-release.m index 2e5b576d247..4694d6ca615 100644 --- a/clang/test/Analysis/retain-release.m +++ b/clang/test/Analysis/retain-release.m @@ -318,6 +318,9 @@ extern CGColorSpaceRef CGColorSpaceCreateDeviceRGB(void); + (id)array; @end +// This is how NSMakeCollectable is declared in the OS X 10.8 headers. +id NSMakeCollectable(CFTypeRef __attribute__((cf_consumed))) __attribute__((ns_returns_retained)); + typedef const struct __CFUUID * CFUUIDRef; extern @@ -2073,6 +2076,16 @@ void rdar11400885(int y) } } +id makeCollectableNonLeak() { + extern CFTypeRef CFCreateSomething(); + + CFTypeRef object = CFCreateSomething(); // +1 + CFRetain(object); // +2 + id objCObject = NSMakeCollectable(object); // +2 + [objCObject release]; // +1 + return [objCObject autorelease]; // +0 +} + void consumeAndStopTracking(id NS_CONSUMED obj, void (^callback)(void)); void CFConsumeAndStopTracking(CFTypeRef CF_CONSUMED obj, void (^callback)(void)); |