The hack that was previously applied to CGBitmapContextCreateWithData() is now extended to another function, dispatch_data_create().
This function accepts a callback block, and the analyzer erroneously assumes that this callback may free up some data, which results in being unable to detect a leak of the dispatch_data_t object. In fact, the callback only frees the buffer that is passed into the function, but the returned object should be released separately unless in ARC mode.
Looks like there is a typo here ('MARCOS' vs. 'MACROS')?