This PR resolves warnings that occur during the Android build. The list is as follows.
**Changes proposed in this PR:**
- Resolves explicitly defaulted function is implicitly deleted.
- Fix function that overrides virtual functions but is not marked override.
- Resolves clang warning on expression side effects.
**Self-evaluation:**
1. Build test: [X]Passed [ ]Failed [ ]Skipped
2. Run test: [X]Passed [ ]Failed [ ]Skipped
Signed-off-by: Donghyeon Jeong <dhyeon.jeong@samsung.com>
*
* @return boolean true if trainable, else false
*/
- bool getTrainable() const;
+ bool getTrainable() const override;
/**
* @brief get if the output of this layer must be flatten
* @brief Move constructor.
* @param[in] LSTMLayer &&
*/
- LSTMLayer(LSTMLayer &&rhs) noexcept = default;
+ LSTMLayer(LSTMLayer &&rhs) noexcept;
/**
* @brief Move assignment operator.
* @parma[in] rhs LSTMLayer to be moved.
*/
- LSTMLayer &operator=(LSTMLayer &&rhs) = default;
+ LSTMLayer &operator=(LSTMLayer &&rhs);
/**
* @copydoc Layer::finalize(InitLayerContext &context)
* @retval #ML_ERROR_NONE Successful.
* @retval #ML_ERROR_INVALID_PARAMETER invalid parameter.
*/
- int allocate(ExecutionMode mode = ExecutionMode::TRAIN);
+ int allocate(ExecutionMode mode = ExecutionMode::TRAIN) override;
/**
* @brief Deallocate memory for the model.
size_t bytes, unsigned int start_time, unsigned int end_time,
std::vector<unsigned int> exec_order = std::vector<unsigned int>(),
TensorLifespan lifespan = TensorLifespan::MAX_LIFESPAN,
- bool is_wgrad = false);
+ bool is_wgrad = false) override;
/**
* @brief Get the allocated cache
*
*
* @details This function will throw if called before allocation.
*/
- virtual std::shared_ptr<MemoryData> getMemory(unsigned int id);
+ virtual std::shared_ptr<MemoryData> getMemory(unsigned int id) override;
/**
* @brief Is the cache pool allocated
* @brief Move Construct a new Manager object
*
*/
- Manager(Manager &&) noexcept = default;
+ Manager(Manager &&) noexcept;
/**
* @brief Move assign a new Manager object
*
* @return Manager& reference to newly assign
*/
- Manager &operator=(Manager &&) noexcept = default;
+ Manager &operator=(Manager &&) noexcept;
/**
* @brief Destructor of Manager
EXPECT_EQ(num_id, ((int_key == -1) ? (-1) * int_key : int_key));
auto opt = ac.createObject<nntrainer::Optimizer>(
((key == "") ? "identity_optimizer" : key), {});
- EXPECT_EQ(typeid(*opt).hash_code(), typeid(CustomOptimizer).hash_code());
+ auto &optimizer = *opt.get();
+ EXPECT_EQ(typeid(optimizer).hash_code(), typeid(CustomOptimizer).hash_code());
opt = ac.createObject<nntrainer::Optimizer>(num_id, {});
- EXPECT_EQ(typeid(*opt).hash_code(), typeid(CustomOptimizer).hash_code());
+ auto &new_optimizer = *opt.get();
+ EXPECT_EQ(typeid(new_optimizer).hash_code(),
+ typeid(CustomOptimizer).hash_code());
}
GTEST_PARAMETER_TEST(RegisterCreateCustomOptimizerTests, AppContextTest,
TEST(nntrainer_Tensor, multiple_sum_out_of_range_n) {
nntrainer::Tensor t = constant(1.0, 1, 1, 1, 1);
- EXPECT_THROW(t.sum({7}), std::out_of_range);
+ EXPECT_THROW(t.sum(7), std::out_of_range);
}
TEST(nntrainer_Tensor, multiple_sum_p) {
TEST(nntrainer_Tensor, multiple_sum_out_of_range_n) {
nntrainer::Tensor t = constant(1.0, 1, 1, 1, 1, nntrainer::Tformat::NCHW,
nntrainer::Tdatatype::FP16);
- EXPECT_THROW(t.sum({7}), std::out_of_range);
+ EXPECT_THROW(t.sum(7), std::out_of_range);
}
TEST(nntrainer_Tensor, multiple_sum_p) {
TEST(nntrainer_Tensor, multiple_sum_out_of_range_nhwc_n) {
nntrainer::Tensor t = constant(1.0, 1, 1, 1, 1, NHWC_, FP32_);
- EXPECT_THROW(t.sum({7}), std::out_of_range);
+ EXPECT_THROW(t.sum(7), std::out_of_range);
}
TEST(nntrainer_Tensor, multiple_sum_nhwc_p) {