aboutsummaryrefslogtreecommitdiff
diff options
context:
space:
mode:
authorJonathan Wakely <jwakely@redhat.com>2023-02-10 23:16:15 +0000
committerJonathan Wakely <jwakely@redhat.com>2024-06-11 13:35:08 +0100
commit4d257dac0adecc7ce6b1b871cd5e99ae75f0688f (patch)
treecc4c580977b090656597a7a87afd40fc7d7299f9
parent5f885bd5f435ea05ad18d28860b3f22c7705d967 (diff)
downloadgcc-4d257dac0adecc7ce6b1b871cd5e99ae75f0688f.zip
gcc-4d257dac0adecc7ce6b1b871cd5e99ae75f0688f.tar.gz
gcc-4d257dac0adecc7ce6b1b871cd5e99ae75f0688f.tar.bz2
libstdc++: Fix uses of non-reserved names in headers
The non-reserved names 'val' and 'dest' were being used in our headers but haven't been added to the 17_intro/names.cc test. That's because they are used by <asm-generic/posix_types.h> and <netinet/tcp.h> respecitvely on glibc-based systems. libstdc++-v3/ChangeLog: * include/bits/fs_ops.h (create_directory): Use reserved name for parameter. * include/bits/regex_automaton.h (_State_base::_M_print): Likewise. * include/bits/regex_automaton.tcc(_State_base::_M_print): Likewise. * include/bits/regex_scanner.tcc(_Scanner::_M_print): Likewise. * include/experimental/bits/fs_ops.h (create_directory): Likewise. * include/std/mutex (timed_mutex::_M_clocklock): Likewise. (recursive_timed_mutex:_M_clocklock): Likewise. * libsupc++/cxxabi_init_exception.h (__cxa_init_primary_exception): Likewise. * testsuite/17_intro/names.cc: Add checks. (cherry picked from commit dc79eba72b4d16180e500eba336f511a485a8496)
-rw-r--r--libstdc++-v3/include/bits/fs_ops.h4
-rw-r--r--libstdc++-v3/include/bits/regex_automaton.h2
-rw-r--r--libstdc++-v3/include/bits/regex_automaton.tcc18
-rw-r--r--libstdc++-v3/include/bits/regex_scanner.tcc60
-rw-r--r--libstdc++-v3/include/experimental/bits/fs_ops.h4
-rw-r--r--libstdc++-v3/include/std/mutex8
-rw-r--r--libstdc++-v3/libsupc++/cxxabi_init_exception.h5
-rw-r--r--libstdc++-v3/testsuite/17_intro/names.cc21
8 files changed, 70 insertions, 52 deletions
diff --git a/libstdc++-v3/include/bits/fs_ops.h b/libstdc++-v3/include/bits/fs_ops.h
index 1ae8fe1..e85eb98 100644
--- a/libstdc++-v3/include/bits/fs_ops.h
+++ b/libstdc++-v3/include/bits/fs_ops.h
@@ -90,8 +90,8 @@ namespace filesystem
bool create_directory(const path& __p);
bool create_directory(const path& __p, error_code& __ec) noexcept;
- bool create_directory(const path& __p, const path& attributes);
- bool create_directory(const path& __p, const path& attributes,
+ bool create_directory(const path& __p, const path& __attributes);
+ bool create_directory(const path& __p, const path& __attributes,
error_code& __ec) noexcept;
void create_directory_symlink(const path& __to, const path& __new_symlink);
diff --git a/libstdc++-v3/include/bits/regex_automaton.h b/libstdc++-v3/include/bits/regex_automaton.h
index 44bde42..1bafaff 100644
--- a/libstdc++-v3/include/bits/regex_automaton.h
+++ b/libstdc++-v3/include/bits/regex_automaton.h
@@ -110,7 +110,7 @@ namespace __detail
#ifdef _GLIBCXX_DEBUG
std::ostream&
- _M_print(std::ostream& ostr) const;
+ _M_print(std::ostream& __ostr) const;
// Prints graphviz dot commands for state.
std::ostream&
diff --git a/libstdc++-v3/include/bits/regex_automaton.tcc b/libstdc++-v3/include/bits/regex_automaton.tcc
index caaf3c4..bce378f 100644
--- a/libstdc++-v3/include/bits/regex_automaton.tcc
+++ b/libstdc++-v3/include/bits/regex_automaton.tcc
@@ -36,34 +36,34 @@ namespace __detail
{
#ifdef _GLIBCXX_DEBUG
inline std::ostream&
- _State_base::_M_print(std::ostream& ostr) const
+ _State_base::_M_print(std::ostream& __ostr) const
{
switch (_M_opcode)
{
case _S_opcode_alternative:
case _S_opcode_repeat:
- ostr << "alt next=" << _M_next << " alt=" << _M_alt;
+ __ostr << "alt next=" << _M_next << " alt=" << _M_alt;
break;
case _S_opcode_subexpr_begin:
- ostr << "subexpr begin next=" << _M_next << " index=" << _M_subexpr;
+ __ostr << "subexpr begin next=" << _M_next << " index=" << _M_subexpr;
break;
case _S_opcode_subexpr_end:
- ostr << "subexpr end next=" << _M_next << " index=" << _M_subexpr;
+ __ostr << "subexpr end next=" << _M_next << " index=" << _M_subexpr;
break;
case _S_opcode_backref:
- ostr << "backref next=" << _M_next << " index=" << _M_backref_index;
+ __ostr << "backref next=" << _M_next << " index=" << _M_backref_index;
break;
case _S_opcode_match:
- ostr << "match next=" << _M_next;
+ __ostr << "match next=" << _M_next;
break;
case _S_opcode_accept:
- ostr << "accept next=" << _M_next;
+ __ostr << "accept next=" << _M_next;
break;
default:
- ostr << "unknown next=" << _M_next;
+ __ostr << "unknown next=" << _M_next;
break;
}
- return ostr;
+ return __ostr;
}
// Prints graphviz dot commands for state.
diff --git a/libstdc++-v3/include/bits/regex_scanner.tcc b/libstdc++-v3/include/bits/regex_scanner.tcc
index 2a1745b..8b4d6e2 100644
--- a/libstdc++-v3/include/bits/regex_scanner.tcc
+++ b/libstdc++-v3/include/bits/regex_scanner.tcc
@@ -484,98 +484,98 @@ namespace __detail
template<typename _CharT>
std::ostream&
_Scanner<_CharT>::
- _M_print(std::ostream& ostr)
+ _M_print(std::ostream& __ostr)
{
switch (_M_token)
{
case _S_token_anychar:
- ostr << "any-character\n";
+ __ostr << "any-character\n";
break;
case _S_token_backref:
- ostr << "backref\n";
+ __ostr << "backref\n";
break;
case _S_token_bracket_begin:
- ostr << "bracket-begin\n";
+ __ostr << "bracket-begin\n";
break;
case _S_token_bracket_neg_begin:
- ostr << "bracket-neg-begin\n";
+ __ostr << "bracket-neg-begin\n";
break;
case _S_token_bracket_end:
- ostr << "bracket-end\n";
+ __ostr << "bracket-end\n";
break;
case _S_token_char_class_name:
- ostr << "char-class-name \"" << _M_value << "\"\n";
+ __ostr << "char-class-name \"" << _M_value << "\"\n";
break;
case _S_token_closure0:
- ostr << "closure0\n";
+ __ostr << "closure0\n";
break;
case _S_token_closure1:
- ostr << "closure1\n";
+ __ostr << "closure1\n";
break;
case _S_token_collsymbol:
- ostr << "collsymbol \"" << _M_value << "\"\n";
+ __ostr << "collsymbol \"" << _M_value << "\"\n";
break;
case _S_token_comma:
- ostr << "comma\n";
+ __ostr << "comma\n";
break;
case _S_token_dup_count:
- ostr << "dup count: " << _M_value << "\n";
+ __ostr << "dup count: " << _M_value << "\n";
break;
case _S_token_eof:
- ostr << "EOF\n";
+ __ostr << "EOF\n";
break;
case _S_token_equiv_class_name:
- ostr << "equiv-class-name \"" << _M_value << "\"\n";
+ __ostr << "equiv-class-name \"" << _M_value << "\"\n";
break;
case _S_token_interval_begin:
- ostr << "interval begin\n";
+ __ostr << "interval begin\n";
break;
case _S_token_interval_end:
- ostr << "interval end\n";
+ __ostr << "interval end\n";
break;
case _S_token_line_begin:
- ostr << "line begin\n";
+ __ostr << "line begin\n";
break;
case _S_token_line_end:
- ostr << "line end\n";
+ __ostr << "line end\n";
break;
case _S_token_opt:
- ostr << "opt\n";
+ __ostr << "opt\n";
break;
case _S_token_or:
- ostr << "or\n";
+ __ostr << "or\n";
break;
case _S_token_ord_char:
- ostr << "ordinary character: \"" << _M_value << "\"\n";
+ __ostr << "ordinary character: \"" << _M_value << "\"\n";
break;
case _S_token_subexpr_begin:
- ostr << "subexpr begin\n";
+ __ostr << "subexpr begin\n";
break;
case _S_token_subexpr_no_group_begin:
- ostr << "no grouping subexpr begin\n";
+ __ostr << "no grouping subexpr begin\n";
break;
case _S_token_subexpr_lookahead_begin:
- ostr << "lookahead subexpr begin\n";
+ __ostr << "lookahead subexpr begin\n";
break;
case _S_token_subexpr_end:
- ostr << "subexpr end\n";
+ __ostr << "subexpr end\n";
break;
case _S_token_unknown:
- ostr << "-- unknown token --\n";
+ __ostr << "-- unknown token --\n";
break;
case _S_token_oct_num:
- ostr << "oct number " << _M_value << "\n";
+ __ostr << "oct number " << _M_value << "\n";
break;
case _S_token_hex_num:
- ostr << "hex number " << _M_value << "\n";
+ __ostr << "hex number " << _M_value << "\n";
break;
case _S_token_quoted_class:
- ostr << "quoted class " << "\\" << _M_value << "\n";
+ __ostr << "quoted class " << "\\" << _M_value << "\n";
break;
default:
_GLIBCXX_DEBUG_ASSERT(false);
}
- return ostr;
+ return __ostr;
}
#endif
diff --git a/libstdc++-v3/include/experimental/bits/fs_ops.h b/libstdc++-v3/include/experimental/bits/fs_ops.h
index e37dc9a..64089e2 100644
--- a/libstdc++-v3/include/experimental/bits/fs_ops.h
+++ b/libstdc++-v3/include/experimental/bits/fs_ops.h
@@ -98,8 +98,8 @@ inline namespace v1
bool create_directory(const path& __p);
bool create_directory(const path& __p, error_code& __ec) noexcept;
- bool create_directory(const path& __p, const path& attributes);
- bool create_directory(const path& __p, const path& attributes,
+ bool create_directory(const path& __p, const path& __attributes);
+ bool create_directory(const path& __p, const path& __attributes,
error_code& __ec) noexcept;
void create_directory_symlink(const path& __to, const path& __new_symlink);
diff --git a/libstdc++-v3/include/std/mutex b/libstdc++-v3/include/std/mutex
index b9590bb..48fcaa9 100644
--- a/libstdc++-v3/include/std/mutex
+++ b/libstdc++-v3/include/std/mutex
@@ -288,8 +288,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
#if _GLIBCXX_USE_PTHREAD_MUTEX_CLOCKLOCK
bool
- _M_clocklock(clockid_t clockid, const __gthread_time_t& __ts)
- { return !pthread_mutex_clocklock(&_M_mutex, clockid, &__ts); }
+ _M_clocklock(clockid_t __clockid, const __gthread_time_t& __ts)
+ { return !pthread_mutex_clocklock(&_M_mutex, __clockid, &__ts); }
#endif
};
@@ -363,8 +363,8 @@ _GLIBCXX_BEGIN_NAMESPACE_VERSION
#ifdef _GLIBCXX_USE_PTHREAD_MUTEX_CLOCKLOCK
bool
- _M_clocklock(clockid_t clockid, const __gthread_time_t& __ts)
- { return !pthread_mutex_clocklock(&_M_mutex, clockid, &__ts); }
+ _M_clocklock(clockid_t __clockid, const __gthread_time_t& __ts)
+ { return !pthread_mutex_clocklock(&_M_mutex, __clockid, &__ts); }
#endif
};
diff --git a/libstdc++-v3/libsupc++/cxxabi_init_exception.h b/libstdc++-v3/libsupc++/cxxabi_init_exception.h
index d4a0392..a6c5bf9 100644
--- a/libstdc++-v3/libsupc++/cxxabi_init_exception.h
+++ b/libstdc++-v3/libsupc++/cxxabi_init_exception.h
@@ -67,8 +67,9 @@ namespace __cxxabiv1
// Initialize exception (this is a GNU extension)
__cxa_refcounted_exception*
- __cxa_init_primary_exception(void *object, std::type_info *tinfo,
- void (_GLIBCXX_CDTOR_CALLABI *dest) (void *)) _GLIBCXX_NOTHROW;
+ __cxa_init_primary_exception(void *__object, std::type_info *__tinfo,
+ void (_GLIBCXX_CDTOR_CALLABI *__dest) (void *))
+ _GLIBCXX_NOTHROW;
}
} // namespace __cxxabiv1
diff --git a/libstdc++-v3/testsuite/17_intro/names.cc b/libstdc++-v3/testsuite/17_intro/names.cc
index 8c6cd45..2bcebb4 100644
--- a/libstdc++-v3/testsuite/17_intro/names.cc
+++ b/libstdc++-v3/testsuite/17_intro/names.cc
@@ -28,7 +28,7 @@
#define F (
#define G (
#define H (
-#define I (
+// <complex.h> defines I
#define J (
#define K (
#define L (
@@ -106,9 +106,18 @@
#endif
#define z (
+#define attributes (
+#define bin_op (
+#define clockid (
#define func (
-#define tmp (
+#define max_val (
+#define min_val (
+#define object (
+#define ostr (
+#define policy (
#define sz (
+#define tinfo (
+#define tmp (
#define token (
#define value_t (
@@ -147,6 +156,7 @@
#define Alloc Alloc is not a reserved name
#define BinaryFunction1 BinaryFunction1 is not a reserved name
#define BinaryFunction2 BinaryFunction2 is not a reserved name
+#define BinaryOperation BinaryOperation is not a reserved name
#define Char Char is not a reserved name
#define CharT CharT is not a reserved name
#define Cmp Cmp is not a reserved name
@@ -170,6 +180,7 @@
#define H1 H1 is not a reserved name
#define H2 H2 is not a reserved name
#define Head Head is not a reserved name
+#define IsVector IsVector is not a reserved name
#define It It is not a reserved name
#define Iter Iter is not a reserved name
#define Iterator Iterator is not a reserved name
@@ -182,16 +193,22 @@
#define Pointer Pointer is not a reserved name
#define Policy Policy is not a reserved name
#define Pred Pred is not a reserved name
+#define Proj Proj is not a reserved name
+#define Proj1 Proj1 is not a reserved name
+#define Proj2 Proj2 is not a reserved name
#define Ptr Ptr is not a reserved name
#define Reference Reference is not a reserved name
#define Seq Seq is not a reserved name
#define Seq_RAIter Seq_RAIter is not a reserved name
#define Series Series is not a reserved name
#define Set Set is not a reserved name
+#define Size Size is not a reserved name
#define String String is not a reserved name
#define Tp Tp is not a reserved name
+#define TQual TQual is not a reserved name
#define Traits Traits is not a reserved name
#define Type Type is not a reserved name
+#define UQual UQual is not a reserved name
#define Value Value is not a reserved name
#define ValueT ValueT is not a reserved name
#define ValueType ValueType is not a reserved name