mirror of
https://github.com/boostorg/build.git
synced 2026-02-22 03:12:16 +00:00
Debug CI crash 7/n [skip ci]
This commit is contained in:
@@ -309,7 +309,7 @@ struct _stack
|
||||
}
|
||||
|
||||
// Get reference to the top i-th T item, optionally as a U. I.e. it skips
|
||||
// the i-th T* items returning it as U&.
|
||||
// the i-th T items returning it as U&.
|
||||
template <typename T, typename U = T>
|
||||
remove_cref_t<U> & top(int i = 0) const
|
||||
{
|
||||
@@ -327,7 +327,7 @@ struct _stack
|
||||
|
||||
// Move "v" to a new slot in ther stack. Returns a reference to the new item.
|
||||
template <class T>
|
||||
remove_cref_t<T> & push( T&& v );
|
||||
remove_cref_t<T> & push( T v );
|
||||
|
||||
// Copy "v" into "n" new items at the top of the stack. Returns a pointer
|
||||
// to the first, i.e. top most, new item.
|
||||
@@ -443,14 +443,9 @@ void _stack::cleanup_item<LIST*>(_stack * s, int32_t n, LIST**)
|
||||
}
|
||||
|
||||
template <class T>
|
||||
remove_cref_t<T> & _stack::push( T&& v )
|
||||
remove_cref_t<T> & _stack::push( T v )
|
||||
{
|
||||
using U = remove_cref_t<T>;
|
||||
check_alignment();
|
||||
data = (char *)data - sizeof(U);
|
||||
check_alignment();
|
||||
cleanup_push<U>( 1 );
|
||||
return top<U>() = v;
|
||||
return *push<T>( v, 1 );
|
||||
}
|
||||
|
||||
template <class T>
|
||||
|
||||
Reference in New Issue
Block a user