mirror of
https://github.com/genodelabs/genode.git
synced 2024-12-19 13:47:56 +00:00
e143084b04
The recent change of the TRACE session interface triggered the following warning: /home/no/src/genode/repos/base/include/base/ipc.h:79:4: warning: ‘ret’ may be used uninitialized in this function [-Wmaybe-uninitialized] *reinterpret_cast<T *>(&_sndbuf[_write_offset]) = value; ^ In file included from /home/no/src/genode/repos/base/src/core/include/trace/session_component.h:19:0, from /home/no/src/genode/repos/base/src/core/trace_session_component.cc:15: /home/no/src/genode/repos/base/include/base/rpc_server.h:132:42: note: ‘ret’ was declared here typename This_rpc_function::Ret_type ret; The warning occurs for basic return types (like size_t), which are indeed not initialized. The variable gets its value assigned by the corresponding 'call_member' overload, to which the variable is passed as reference. But the compiler apparently is not able to detect this assignment. Declaring 'ret' with a C++11-style default initializer fixes the warning. |
||
---|---|---|
.. | ||
etc | ||
include | ||
lib | ||
mk | ||
run | ||
src | ||
README |
This is generic part of the Genode implementation. It consists of two parts: :_Core_: is the ultimate root of the Genode application tree and provides abstractions for the lowest-level hardware resources such as RAM, ROM, CPU, and generic device access. All generic parts of Core can be found here - for system-specific implementations refer to the appropriate 'base-<system>' directory. :_Base libraries and protocols_: that are used by each Genode component to interact with other components. This is the glue that holds everything together.