* [committed] Make arguments to vec::splice const
@ 2015-04-27 9:55 Richard Sandiford
0 siblings, 0 replies; only message in thread
From: Richard Sandiford @ 2015-04-27 9:55 UTC (permalink / raw)
To: gcc-patches
vec::splice doesn't modify its source vector, so mark the argument as const.
Tested on x86_64-linux-gnu. Applied as obvious.
Richard
gcc/
* vec.h (vec): Make splice arguments const. Update definitions
accordingly.
Index: gcc/vec.h
===================================================================
--- gcc/vec.h 2015-04-27 10:38:48.000000000 +0100
+++ gcc/vec.h 2015-04-27 10:41:57.859920289 +0100
@@ -483,8 +483,8 @@ struct GTY((user)) vec<T, A, vl_embed>
bool iterate (unsigned, T *) const;
bool iterate (unsigned, T **) const;
vec *copy (ALONE_CXX_MEM_STAT_INFO) const;
- void splice (vec &);
- void splice (vec *src);
+ void splice (const vec &);
+ void splice (const vec *src);
T *quick_push (const T &);
T &pop (void);
void truncate (unsigned);
@@ -705,7 +705,7 @@ vec_safe_copy (vec<T, A, vl_embed> *src
Reallocate DST, if necessary. */
template<typename T, typename A>
inline void
-vec_safe_splice (vec<T, A, vl_embed> *&dst, vec<T, A, vl_embed> *src
+vec_safe_splice (vec<T, A, vl_embed> *&dst, const vec<T, A, vl_embed> *src
CXX_MEM_STAT_INFO)
{
unsigned src_len = vec_safe_length (src);
@@ -836,7 +836,7 @@ vec<T, A, vl_embed>::copy (ALONE_MEM_STA
template<typename T, typename A>
inline void
-vec<T, A, vl_embed>::splice (vec<T, A, vl_embed> &src)
+vec<T, A, vl_embed>::splice (const vec<T, A, vl_embed> &src)
{
unsigned len = src.length ();
if (len)
@@ -849,7 +849,7 @@ vec<T, A, vl_embed>::splice (vec<T, A, v
template<typename T, typename A>
inline void
-vec<T, A, vl_embed>::splice (vec<T, A, vl_embed> *src)
+vec<T, A, vl_embed>::splice (const vec<T, A, vl_embed> *src)
{
if (src)
splice (*src);
@@ -1212,8 +1212,8 @@ struct vec<T, va_heap, vl_ptr>
vec copy (ALONE_CXX_MEM_STAT_INFO) const;
bool reserve (unsigned, bool = false CXX_MEM_STAT_INFO);
bool reserve_exact (unsigned CXX_MEM_STAT_INFO);
- void splice (vec &);
- void safe_splice (vec & CXX_MEM_STAT_INFO);
+ void splice (const vec &);
+ void safe_splice (const vec & CXX_MEM_STAT_INFO);
T *quick_push (const T &);
T *safe_push (const T &CXX_MEM_STAT_INFO);
T &pop (void);
@@ -1489,7 +1489,7 @@ vec<T, va_heap, vl_ptr>::release (void)
template<typename T>
inline void
-vec<T, va_heap, vl_ptr>::splice (vec<T, va_heap, vl_ptr> &src)
+vec<T, va_heap, vl_ptr>::splice (const vec<T, va_heap, vl_ptr> &src)
{
if (src.m_vec)
m_vec->splice (*(src.m_vec));
@@ -1503,7 +1503,7 @@ vec<T, va_heap, vl_ptr>::splice (vec<T,
template<typename T>
inline void
-vec<T, va_heap, vl_ptr>::safe_splice (vec<T, va_heap, vl_ptr> &src
+vec<T, va_heap, vl_ptr>::safe_splice (const vec<T, va_heap, vl_ptr> &src
MEM_STAT_DECL)
{
if (src.length ())
^ permalink raw reply [flat|nested] only message in thread
only message in thread, other threads:[~2015-04-27 9:55 UTC | newest]
Thread overview: (only message) (download: mbox.gz / follow: Atom feed)
-- links below jump to the message on this page --
2015-04-27 9:55 [committed] Make arguments to vec::splice const Richard Sandiford
This is a public inbox, see mirroring instructions
for how to clone and mirror all data and code used for this inbox;
as well as URLs for read-only IMAP folder(s) and NNTP newsgroup(s).