title: incompatible block pointer types initializing 'void(^)(struct ALAssetsGroup *, BOOL *)'with an expression of type
body: <p>I saw several people on SO have been using this code successfully.  But I got the incompatible block pointer error:</p>
  
  <p>Incompatible block pointer types initializing </p>
  
  <pre><code>void(^)(struct ALAssetsGroup *, BOOL *)
  </code></pre>
  
  <p>with an expression of type </p>
  
  <pre><code>void(^)(ALAsset *, NSUInteger, BOOL *)
  </code></pre>
  
  <p>Any hints?  (EDIT with complete code)</p>
  
  <pre><code>    ALAssetsLibrary *library =[[ALAssetsLibrary alloc]init];
      void (^assetEnumerator)(struct ALAsset *, NSUInteger, BOOL *) = ^(ALAsset *result, NSUInteger index, BOOL *stop){
      if(result != NULL) {
                  NSLog(@"See Asset: %@", result);
  
              }
          };
  
      void (^assetGroupEnumerator)(struct ALAssetsGroup *, BOOL *) =  ^(ALAssetsGroup *group, BOOL *stop) {
              if(group != nil) {NSLog(@"dont See Asset: ");
                  [group enumerateAssetsUsingBlock:assetEnumerator];
              }
          };
  
      [library enumerateGroupsWithTypes:ALAssetsGroupAlbum
                                 usingBlock:assetGroupEnumerator
                               failureBlock: ^(NSError *error) {
                                   NSLog(@"Failure");
                               }];
  </code></pre>
  
  <p><img src="https://i.stack.imgur.com/a2lZB.png" alt="enter image description here"></p>