I'm wondering if anyone else is seeing this:
it looks to me like the "Responsible caller" value in the allocation summary is misleading, and randomly dropping to stack frames. for example, right now i'm looking at a summary that has these three lines (among others):
Retain -[Solution initWithContentsOfURL:]
Retain -[Solution init]
Release -[Solution init]
seems line 2 and three match, right? think again. if you look at the full stack frames for each, you see this:
0 Fire -[Solution init] /Users/mh/Code/Fire/SharedProjectSystem/Solution.cs:0
1 Fire -[Solution initWithContentsOfURL:] /Users/mh/Code/Fire/SharedProjectSystem/Solution.cs:85
2 Fire +[Solution solutionWithContentsOfURL:] /Users/mh/Code/Fire/SharedProjectSystem/Solution.cs:664
3 Fire -[SolutionDocument readFromURL:] /Users/mh/Code/Fire/SharedCoreApp/SolutionDocument.cs:70
4 Fire -[SolutionDocument readFromURL:ofType:error:] /Users/mh/Code/Fire/SharedCoreApp/SolutionDocument.NSDocument.cs:78
5 AppKit -[NSDocument _initForURL:withContentsOfURL:ofType:error:]
0 Fire +[BroadcastManager subscribe:toBroadcast:block:object:] \__windows_drive__c\ci\b\elements\916\source\rtl2\source/broadcasts.swift:107
1 Fire -[Solution init] /Users/mh/Code/Fire/SharedProjectSystem/Solution.cs:75
2 Fire -[Solution initWithContentsOfURL:] /Users/mh/Code/Fire/SharedProjectSystem/Solution.cs:85
3 Fire +[Solution solutionWithContentsOfURL:] /Users/mh/Code/Fire/SharedProjectSystem/Solution.cs:664
4 Fire -[SolutionDocument readFromURL:] /Users/mh/Code/Fire/SharedCoreApp/SolutionDocument.cs:70
5 Fire -[SolutionDocument readFromURL:ofType:error:] /Users/mh/Code/Fire/SharedCoreApp/SolutionDocument.NSDocument.cs:78
6 AppKit -[NSDocument _initForURL:withContentsOfURL:ofType:error:]
1 Fire -[Solution init] /Users/mh/Code/Fire/SharedProjectSystem/Solution.cs:0
2 Fire -[Solution initWithContentsOfURL:] /Users/mh/Code/Fire/SharedProjectSystem/Solution.cs:85
3 Fire +[Solution solutionWithContentsOfURL:] /Users/mh/Code/Fire/SharedProjectSystem/Solution.cs:664
4 Fire -[SolutionDocument readFromURL:] /Users/mh/Code/Fire/SharedCoreApp/SolutionDocument.cs:70
5 Fire -[SolutionDocument readFromURL:ofType:error:] /Users/mh/Code/Fire/SharedCoreApp/SolutionDocument.NSDocument.cs:78
6 AppKit -[NSDocument _initForURL:withContentsOfURL:ofType:error:]
turns out, in fact #1 and #3 match up — but the table view is misleading because Instruments decided to drop the top "init" frame from #1 and the top "[BroadcastManager subscribe:toBroadcast:block:object:]" frame from #2.
what's going on here? what logic is Instruments using to determine whether to drop a frame from being "responsible" or not?