Skip to content
Snippets Groups Projects
Commit 93770edc authored by Joseph Noir's avatar Joseph Noir Committed by Oleg Hahm
Browse files

cpp11-compat: address cppcheck warnings

parent a9cc8bab
Branches
No related tags found
No related merge requests found
...@@ -52,7 +52,7 @@ class time_point { ...@@ -52,7 +52,7 @@ class time_point {
/** /**
* @brief Create time point from timex_t struct. * @brief Create time point from timex_t struct.
*/ */
inline time_point(timex_t&& tp) : m_handle(tp) {} explicit inline time_point(timex_t&& tp) : m_handle(tp) {}
/** /**
* @brief Use default copy constructor. * @brief Use default copy constructor.
*/ */
......
...@@ -27,6 +27,7 @@ ...@@ -27,6 +27,7 @@
#include "time.h" #include "time.h"
#include "thread.h" #include "thread.h"
#include <array>
#include <tuple> #include <tuple>
#include <atomic> #include <atomic>
#include <memory> #include <memory>
...@@ -65,7 +66,7 @@ struct thread_data { ...@@ -65,7 +66,7 @@ struct thread_data {
/** @cond INTERNAL */ /** @cond INTERNAL */
std::atomic<unsigned> ref_count; std::atomic<unsigned> ref_count;
kernel_pid_t joining_thread; kernel_pid_t joining_thread;
char stack[stack_size]; std::array<char, stack_size> stack;
/** @endcond */ /** @endcond */
}; };
...@@ -106,7 +107,7 @@ public: ...@@ -106,7 +107,7 @@ public:
/** /**
* @brief Create a thread id from a native handle. * @brief Create a thread id from a native handle.
*/ */
inline thread_id(kernel_pid_t handle) : m_handle{handle} {} explicit inline thread_id(kernel_pid_t handle) : m_handle{handle} {}
/** /**
* @brief Comparison operator for thread ids. * @brief Comparison operator for thread ids.
...@@ -164,7 +165,7 @@ namespace this_thread { ...@@ -164,7 +165,7 @@ namespace this_thread {
/** /**
* @brief Access the id of the currently running thread. * @brief Access the id of the currently running thread.
*/ */
inline thread_id get_id() noexcept { return thread_getpid(); } inline thread_id get_id() noexcept { return thread_id{thread_getpid()}; }
/** /**
* @brief Yield the currently running thread. * @brief Yield the currently running thread.
*/ */
...@@ -286,7 +287,7 @@ public: ...@@ -286,7 +287,7 @@ public:
/** /**
* @brief Returns the id of a thread. * @brief Returns the id of a thread.
*/ */
inline id get_id() const noexcept { return m_handle; } inline id get_id() const noexcept { return thread_id{m_handle}; }
/** /**
* @brief Returns the native handle to a thread. * @brief Returns the native handle to a thread.
*/ */
...@@ -345,7 +346,7 @@ thread::thread(F&& f, Args&&... args) ...@@ -345,7 +346,7 @@ thread::thread(F&& f, Args&&... args)
unique_ptr<func_and_args> p( unique_ptr<func_and_args> p(
new func_and_args(m_data.get(), forward<F>(f), forward<Args>(args)...)); new func_and_args(m_data.get(), forward<F>(f), forward<Args>(args)...));
m_handle = thread_create( m_handle = thread_create(
m_data->stack, stack_size, THREAD_PRIORITY_MAIN - 1, 0, m_data->stack.data(), stack_size, THREAD_PRIORITY_MAIN - 1, 0,
&thread_proxy<func_and_args>, p.get(), "riot_cpp_thread"); &thread_proxy<func_and_args>, p.get(), "riot_cpp_thread");
if (m_handle >= 0) { if (m_handle >= 0) {
p.release(); p.release();
......
0% Loading or .
You are about to add 0 people to the discussion. Proceed with caution.
Please register or to comment