                 [ third \ slot = ]
             } 1&&
         ]
+
+        ! Remove [ ... \ cdecl ]
+        [
+            { [ length 3 = ] [ last \ cdecl = ] } 1&&
+        ]
     } 1|| ;
 
 : all-callables ( def -- seq )
-    [ callable? ] deep-filter ;
+    [ { [ callable? ] [ ignore-def? not ] } 1&& ] deep-filter ;
 
 : (load-definitions) ( word def hash -- )
     [ all-callables ] dip '[ _ push-at ] with each ;

: reload-definitions ( -- )
    ! Load lintable and non-ignored definitions
    lintable-words load-definitions
    [ drop ignore-def? not ] assoc-filter

    ! Remove words that are their own definition
    [ [ [ def>> ] [ 1quotation ] bi = not ] filter ] assoc-map

! Copyright (C) 2007, 2008 Doug Coleman.
! See http://factorcode.org/license.txt for BSD license.

USING: accessors alien arrays assocs classes
classes.tuple.private combinators.short-circuit fry hashtables
io kernel kernel.private locals.backend make math namespaces
prettyprint quotations sequences sequences.deep shuffle
slots.private vectors vocabs words words.alias ;

IN: lint

<PRIVATE
