f4af7d
diff --git a/doc/tar.texi b/doc/tar.texi
f4af7d
index db8f986..d70d113 100644
f4af7d
--- a/doc/tar.texi
f4af7d
+++ b/doc/tar.texi
f4af7d
@@ -7597,7 +7597,7 @@ The following table summarizes pattern-matching default values:
f4af7d
 
f4af7d
 @multitable @columnfractions .3 .7
f4af7d
 @headitem Members @tab Default settings
f4af7d
-@item Inclusion @tab @option{--no-wildcards --anchored --no-wildcards-match-slash}
f4af7d
+@item Inclusion @tab @option{--wildcards --anchored --wildcards-match-slash}
f4af7d
 @item Exclusion @tab @option{--wildcards --no-anchored --wildcards-match-slash}
f4af7d
 @end multitable
f4af7d
 
f4af7d
@@ -12038,6 +12038,9 @@ version of this document is available at
f4af7d
 @table @asis
f4af7d
 @item Use of globbing patterns when listing and extracting.
f4af7d
 
f4af7d
+Note: Following is true for original unpatched GNU tar.
f4af7d
+For compatibility reasons, the old behavior was preserved.
f4af7d
+
f4af7d
 Previous versions of GNU tar assumed shell-style globbing when
f4af7d
 extracting from or listing an archive.  For example:
f4af7d
 
f4af7d
diff --git a/src/names.c b/src/names.c
f4af7d
index ba4d509..3911f8c 100644
f4af7d
--- a/src/names.c
f4af7d
+++ b/src/names.c
f4af7d
@@ -966,10 +966,7 @@ collect_and_sort_names (void)
f4af7d
 
f4af7d
       if (name->found_count || name->directory)
f4af7d
 	continue;
f4af7d
-      if (name->matching_flags & EXCLUDE_WILDCARDS)
f4af7d
-	/* NOTE: EXCLUDE_ANCHORED is not relevant here */
f4af7d
-	/* FIXME: just skip regexps for now */
f4af7d
-	continue;
f4af7d
+
f4af7d
       chdir_do (name->change_dir);
f4af7d
 
f4af7d
       if (name->name[0] == 0)
f4af7d
diff --git a/src/tar.c b/src/tar.c
f4af7d
index 928cfdd..22d3db1 100644
f4af7d
--- a/src/tar.c
f4af7d
+++ b/src/tar.c
f4af7d
@@ -722,7 +722,7 @@ static struct argp_option options[] = {
f4af7d
   {"no-ignore-case", NO_IGNORE_CASE_OPTION, 0, 0,
f4af7d
    N_("case sensitive matching (default)"), GRID+1 },
f4af7d
   {"wildcards", WILDCARDS_OPTION, 0, 0,
f4af7d
-   N_("use wildcards (default for exclusion)"), GRID+1 },
f4af7d
+   N_("use wildcards (default)"), GRID+1 },
f4af7d
   {"no-wildcards", NO_WILDCARDS_OPTION, 0, 0,
f4af7d
    N_("verbatim string matching"), GRID+1 },
f4af7d
   {"no-wildcards-match-slash", NO_WILDCARDS_MATCH_SLASH_OPTION, 0, 0,
f4af7d
@@ -815,8 +815,7 @@ ARGMATCH_VERIFY (atime_preserve_args, atime_preserve_types);
f4af7d
 /* Wildcard matching settings */
f4af7d
 enum wildcards
f4af7d
   {
f4af7d
-    default_wildcards, /* For exclusion == enable_wildcards,
f4af7d
-			  for inclusion == disable_wildcards */
f4af7d
+    default_wildcards, /* enable_wildcards */
f4af7d
     disable_wildcards,
f4af7d
     enable_wildcards
f4af7d
   };
f4af7d
@@ -847,7 +846,7 @@ struct tar_args        /* Variables used during option parsing */
f4af7d
   | recursion_option)
f4af7d
 
f4af7d
 #define MAKE_INCL_OPTIONS(args) \
f4af7d
- ((((args)->wildcards == enable_wildcards) ? EXCLUDE_WILDCARDS : 0) \
f4af7d
+ ((((args)->wildcards != disable_wildcards) ? EXCLUDE_WILDCARDS : 0) \
f4af7d
   | (args)->include_anchored \
f4af7d
   | (args)->matching_flags \
f4af7d
   | recursion_option)
f4af7d
@@ -2347,7 +2346,7 @@ decode_options (int argc, char **argv)
f4af7d
 
f4af7d
   /* Warn about implicit use of the wildcards in command line arguments.
f4af7d
      See TODO */
f4af7d
-  warn_regex_usage = args.wildcards == default_wildcards;
f4af7d
+  warn_regex_usage = 0; /* args.wildcards == default_wildcards; */
f4af7d
 
f4af7d
   /* Derive option values and check option consistency.  */
f4af7d
 
f4af7d
diff --git a/tests/exclude01.at b/tests/exclude01.at
f4af7d
index 778a7fc..bd65ae0 100644
f4af7d
--- a/tests/exclude01.at
f4af7d
+++ b/tests/exclude01.at
f4af7d
@@ -59,6 +59,7 @@ testdir/dir2/file2
f4af7d
 testdir/dir3/
f4af7d
 NEXT
f4af7d
 testdir/dir1/*
f4af7d
+testdir/dir1/file1
f4af7d
 NEXT
f4af7d
 testdir/dir1/*
f4af7d
 NEXT