title: Controller parameter is undefined in my directive link function
body: <p>I'm trying to do something very simple, using the controller parameter of the link function for my directive, but it's being passed as 'undefined'.  Can anyone tell me what I'm missing?</p>
  
  <p>The HTML:</p>
  
  <pre><code>    &lt;div ng-app="myApp"&gt;
          &lt;div ng-controller="SampleCtrl" my-form &gt;
              &lt;p&gt; Click count: {{ count }} &lt;/p&gt;               
          &lt;/div&gt;  
      &lt;/div&gt;
  </code></pre>
  
  <p>The Javascript:</p>
  
  <pre><code>myApp.controller('SampleCtrl', function($scope){    
      $scope.count = 0;
  
      this.init = function(val) {
          $scope.count = val;
      }   
  });
  
  
  myApp.directive('myForm', function() {    
      var linkFn = function(scope, elem, attrs, ctrl) {
  
          ctrl.init(17); //Error here.  ctrl is undefined
  
          elem.bind('click', function() {
              scope.$apply(function(){                
                  scope.count++;
              });
          });     
      };
  
      return linkFn;
  });
  </code></pre>