diff --git a/alib2abstraction/src/abstraction/PackingAbstraction.cpp b/alib2abstraction/src/abstraction/PackingAbstraction.cpp index 73a8b41f8a1ea59a99716034646240dc0f4e17ed..49bb50aaeae5cfc6c21a09e6bd81c88b5b12b2ea 100644 --- a/alib2abstraction/src/abstraction/PackingAbstraction.cpp +++ b/alib2abstraction/src/abstraction/PackingAbstraction.cpp @@ -5,7 +5,7 @@ template class abstraction::PackingAbstraction < 3 >; namespace abstraction { -PackingAbstractionImpl::LazyValue::LazyValue ( const std::shared_ptr < abstraction::OperationAbstraction > & ref ) : m_lifeReference ( std::move ( ref ) ) { +PackingAbstractionImpl::LazyValue::LazyValue ( const std::shared_ptr < abstraction::OperationAbstraction > & ref ) : m_lifeReference ( ref ) { } std::shared_ptr < abstraction::Value > PackingAbstractionImpl::LazyValue::asValue ( bool, bool ) { diff --git a/alib2abstraction/src/abstraction/Value.cpp b/alib2abstraction/src/abstraction/Value.cpp index b63c7ec2684ceba9956382f05d8fba4fd4df15d1..0edf1bedd5ca3308af17e0777ab381640f462d8b 100644 --- a/alib2abstraction/src/abstraction/Value.cpp +++ b/alib2abstraction/src/abstraction/Value.cpp @@ -28,8 +28,8 @@ std::shared_ptr < abstraction::Value > ValueReference::asValue ( bool move, bool return getProxyAbstraction ( )->asValue ( move, isTemporary ); } -ValueReference::ValueReference ( std::shared_ptr < abstraction::Value > value, abstraction::TypeQualifiers::TypeQualifierSet typeQualifiers, bool isTemporary ) : m_value ( value ), m_typeQualifiers ( typeQualifiers ), m_isTemporary ( isTemporary ) { - if ( ! abstraction::TypeQualifiers::isRef ( typeQualifiers ) ) +ValueReference::ValueReference ( const std::shared_ptr < abstraction::Value > & value, abstraction::TypeQualifiers::TypeQualifierSet typeQualifiers, bool isTemporary ) : m_value ( value ), m_typeQualifiers ( typeQualifiers ), m_isTemporary ( isTemporary ) { + if ( ! abstraction::TypeQualifiers::isRef ( m_typeQualifiers ) ) throw std::domain_error ( "Reference qualifier required" ); if ( TypeQualifiers::isLvalueRef ( m_typeQualifiers ) && m_isTemporary ) throw std::domain_error ( "Lvalue references cannot be temporaries." ); diff --git a/alib2measure/src/measurements/MeasurementResults.cpp b/alib2measure/src/measurements/MeasurementResults.cpp index 34a429230047dca57d8dfff866afacff4e5ee4c2..e26a3509a61afb80f7baf00b9ad5751e7453eafc 100644 --- a/alib2measure/src/measurements/MeasurementResults.cpp +++ b/alib2measure/src/measurements/MeasurementResults.cpp @@ -7,7 +7,7 @@ namespace measurements { MeasurementResults::MeasurementResults ( ) = default; -MeasurementResults::MeasurementResults ( const measurements::stealth_vector < MeasurementFrame > & resultFrames ) : frames ( resultFrames ) { +MeasurementResults::MeasurementResults ( measurements::stealth_vector < MeasurementFrame > resultFrames ) : frames ( std::move ( resultFrames ) ) { } void MeasurementResults::printAsList ( std::ostream & os ) const { diff --git a/alib2measure/src/measurements/MeasurementResults.hpp b/alib2measure/src/measurements/MeasurementResults.hpp index 5235ccb0016a8bfb4d3192d55d7daa5bb68889ca..f37cb936fff80f6fbc7b8da6446c73d94e88c5b7 100644 --- a/alib2measure/src/measurements/MeasurementResults.hpp +++ b/alib2measure/src/measurements/MeasurementResults.hpp @@ -22,7 +22,7 @@ struct MeasurementResults { measurements::stealth_vector < MeasurementFrame > frames; MeasurementResults ( ); - MeasurementResults ( const measurements::stealth_vector < MeasurementFrame > & ); + MeasurementResults ( measurements::stealth_vector < MeasurementFrame > ); void printAsList ( std::ostream & ) const; void printAsTree ( std::ostream & ) const; diff --git a/alib2measure/src/measurements/frames/CounterDataFrame.cpp b/alib2measure/src/measurements/frames/CounterDataFrame.cpp index a2c7f2dcb6e79589a944330e7ab97d9785cb643d..decfa3b176ef2cc60af1f3c0f1fb5d0d77b14e6c 100644 --- a/alib2measure/src/measurements/frames/CounterDataFrame.cpp +++ b/alib2measure/src/measurements/frames/CounterDataFrame.cpp @@ -18,7 +18,7 @@ void CounterDataFrame::update ( unsigned, measurements::stealth_vector < Measure // noop, updates take place during hint resolution } -void CounterDataFrame::hint ( unsigned frameIdx, measurements::stealth_vector < MeasurementFrame > & frames, CounterHint hint ) { +void CounterDataFrame::hint ( unsigned frameIdx, measurements::stealth_vector < MeasurementFrame > & frames, const CounterHint & hint ) { if ( frames[frameIdx].type == measurements::Type::ROOT ) return; CounterHint::value_type delta = 0; diff --git a/alib2measure/src/measurements/frames/CounterDataFrame.hpp b/alib2measure/src/measurements/frames/CounterDataFrame.hpp index 1766faab54c286e3f146e5c2b0ec2a26ea1f5548..792620fd94c0148acb8e70d0e87d3a0910924be8 100644 --- a/alib2measure/src/measurements/frames/CounterDataFrame.hpp +++ b/alib2measure/src/measurements/frames/CounterDataFrame.hpp @@ -30,7 +30,7 @@ struct CounterDataFrame { static void init ( unsigned, measurements::stealth_vector < MeasurementFrame > & ); static void update ( unsigned, measurements::stealth_vector < MeasurementFrame > & ); - static void hint ( unsigned, measurements::stealth_vector < MeasurementFrame > &, CounterHint ); + static void hint ( unsigned, measurements::stealth_vector < MeasurementFrame > &, const CounterHint & ); static CounterDataFrame aggregate ( const std::vector < MeasurementFrame > & ); };