+/* Return a suffix of the file NAME that is a relative file name.
+ Warn about `..' in file names. But return NAME if the user wants
+ absolute file names. */
+static char const *
+relativize (char const *name)
+{
+ if (! absolute_names_option)
+ {
+ {
+ static int warned_once;
+ if (! warned_once && contains_dot_dot (name))
+ {
+ warned_once = 1;
+ WARN ((0, 0, _("Member names contain `..'")));
+ }
+ }
+
+ {
+ size_t prefix_len = FILESYSTEM_PREFIX_LEN (name);
+
+ while (ISSLASH (name[prefix_len]))
+ prefix_len++;
+
+ if (prefix_len)
+ {
+ static int warned_once;
+ if (!warned_once)
+ {
+ warned_once = 1;
+ WARN ((0, 0, _("Removing leading `%.*s' from member names"),
+ (int) prefix_len, name));
+ }
+ name += prefix_len;
+ }
+ }
+ }
+
+ return name;
+}
+\f