diff --git a/NEWS b/NEWS
index 873fcde..ef67c77 100644
--- a/NEWS
+++ b/NEWS
@@ -23,7 +23,7 @@ GNU Autoconf NEWS - User visible changes.
    ignore-nolog, stdout-nolog, and stderr-nolog.
 
 ** The following documented autotest macros are new:
-   AT_CHECK_UNQUOTED
+   AT_CHECK_UNQUOTED  AT_FAIL_IF  AT_SKIP_IF
 
 ** The following documented m4sugar macros are new:
    m4_argn  m4_copy_force  m4_default_nblank  m4_default_nblank_quoted
@@ -75,9 +75,6 @@ GNU Autoconf NEWS - User visible changes.
 ** Autotest testsuites do not attempt to write startup error messages
    to the log file before that is opened (regression introduced in 2.63).
 
-** The following Autotest macros are new:
-   AT_SKIP_IF  AT_FAIL_IF
-
 ** Configure scripts now use shell functions.  This feature leads to
    smaller configure files and faster execution.
 
diff --git a/doc/autoconf.texi b/doc/autoconf.texi
index 6772827..b0d7e11 100644
--- a/doc/autoconf.texi
+++ b/doc/autoconf.texi
@@ -22665,7 +22665,7 @@ Writing Testsuites
 @var{shell-condition} could emit any kind of output you should instead
 use @command{AT_CHECK} like
 @example
-AT_CHECK([@var{shell-condition}] || exit 99)
+AT_CHECK([@var{shell-condition} || exit 99])
 @end example
 @noindent
 so that such output is properly recorded in the @file{testsuite.log}
@@ -22685,7 +22685,7 @@ Writing Testsuites
 @var{shell-condition} could emit any kind of output you should instead
 use @command{AT_CHECK} like
 @example
-AT_CHECK([@var{shell-condition}] || exit 77)
+AT_CHECK([@var{shell-condition} || exit 77])
 @end example
 so that such output is properly recorded in the @file{testsuite.log}
 file.
diff --git a/lib/autotest/general.m4 b/lib/autotest/general.m4
index d7370a9..7fada01 100644
--- a/lib/autotest/general.m4
+++ b/lib/autotest/general.m4
@@ -1782,7 +1782,7 @@ m4_divert_push([TEST_SCRIPT])dnl
 
 # AT_FAIL_IF(SHELL-EXPRESSION)
 # -----------------------------
-# Set up the test to be expected to fail if SHELL-EXPRESSION evaluates to
+# Make the test die with hard failure if SHELL-EXPRESSION evaluates to
 # true (exitcode = 0).
 _AT_DEFINE_SETUP([AT_FAIL_IF],
 [dnl
@@ -1797,8 +1797,8 @@ m4_case([$1],
 
 # AT_SKIP_IF(SHELL-EXPRESSION)
 # -----------------------------
-# Set up the test to be expected to fail if SHELL-EXPRESSION evaluates to
-# true (exitcode = 0).
+# Skip the rest of the group if SHELL-EXPRESSION evaluates to true
+# (exitcode = 0).
 _AT_DEFINE_SETUP([AT_SKIP_IF],
 [dnl
 dnl Try to limit the amount of conditionals that we emit.
@@ -2149,4 +2149,4 @@ $at_traceon; }
 m4_define([_AT_CHECK_EXIT],
 [m4_define([AT_ingroup])]dnl
 [AS_ECHO(_AT_LINE_ESCAPED) >"$at_check_line_file"
-m4_ifval([$1], [$1 && ])at_fn_check_skip $2])# _AT_CHECK_EXIT
+m4_ifval([$1], [($1) && ])at_fn_check_skip $2 "$at_srcdir/AT_LINE"])# _AT_CHECK_EXIT
diff --git a/tests/autotest.at b/tests/autotest.at
index d6bf58d..0063c4a 100644
--- a/tests/autotest.at
+++ b/tests/autotest.at
@@ -184,11 +184,6 @@ AT_CHECK_AT_SYNTAX([AT@&t@_CHECK without AT@&t@_SETUP],
 AT_CHECK([:])
 ]], [AT@&t@_CHECK: missing AT@&t@_SETUP detected])
 
-AT_CHECK_AT_SYNTAX([AT@&t@_CHECK without AT@&t@_SETUP],
-[[AT_INIT([incomplete test suite])
-AT_CHECK([:])
-]], [AT@&t@_CHECK: missing AT@&t@_SETUP detected])
-
 AT_CHECK_AT_SYNTAX([AT@&t@_DATA without AT@&t@_SETUP],
 [[AT_INIT([incomplete test suite])
 AT_DATA([file])
