diff --git a/TODO b/TODO
index 248972fc2072f8c7d8441cb40673d9c403f203bf..1d175e0fa9f0d22251863095c492300c7d5a8937 100644
--- a/TODO
+++ b/TODO
@@ -1,3 +1,7 @@
+* have a better defsystem form verifier - see lp#1007335
+* have a function verify-strict-asd that can verify a asd is pure lp#541562
+  Then if it passes, use load-strict-asd.
+  If not, optionally issue a warning. Start migrating people toward that.
 * have with-input-file use the encodings mechanism?
 * have a single test .asd that tests as many features as possible, use it for upgrade test.
 * implement deferred warnings support on abcl, allegro, clisp, cmucl, lispworks, scl)
diff --git a/test/test-version.script b/test/test-version.script
index 869496cca3dae70d3766aaaa09e9d8aa1aa6b042..0da057dc8dd0c4df33d9b0f7e971a608355f06d6 100644
--- a/test/test-version.script
+++ b/test/test-version.script
@@ -1,5 +1,18 @@
 ;;; -*- Lisp -*-
 
+(DBG "Check that there is an ASDF version that correctly parses to a non-empty list")
+(assert (consp (parse-version (asdf-version) 'error)))
+(DBG "Check that ASDF is newer than 1.234")
+(assert-compare (version<= "1.234" (asdf-version)))
+(DBG "Check that ASDF is not a compatible replacement for 1.234")
+(assert (not (version-compatible-p (asdf-version) "1.234")))
+
+(DBG "Check that asdf.asd is not registered and we're using a fallback system")
+(defparameter *asdf* (find-system :asdf))
+(assert-equal nil (system-source-directory *asdf*))
+(DBG "Check that the fallback system bears the current asdf version")
+(assert-equal (asdf-version) (component-version *asdf*))
+
 (def-test-system :versioned-system-1
   :pathname #.*test-directory*
   :version "1.0")