Commit Graph

9 Commits

Author SHA1 Message Date
Michael Scire
02c17a47cb libstratosphere: Make boolean autoparsing match official semantics. 2018-05-07 07:22:41 -06:00
Léo Lam
24860d83a9 Replace std::make_tuple with simpler syntax (#77)
* boot2: Simplify g_additional_launch_programs

It appears that Stratosphère is targeting C++17. In C++17,
std::make_tuple is not required for initialisating a tuple anymore.
Same thing, but less typing

* Replace std::make_tuple with {}

More readable and less noise. Also fixes two missing return statements.
2018-05-05 11:41:39 -07:00
Léo Lam
e2fbbbeb4e ipc_templating: Avoid depending on order of evaluation (#83)
f(x, x++) is unspecified behaviour in C++. An implementation could
evaluate arguments from left to right or from right to left.

`T(r.Buffers[a_index], r.BufferSizes[a_index++])` might
access the wrong buffer if `a_index++` is evaluated before the first
argument.

Fixes -Wsequence-point warnings
2018-05-05 11:41:08 -07:00
Michael Scire
90c7f03a9d Stratosphere: Add IPC templating for non-member functions. 2018-05-03 03:14:48 -06:00
Michael Scire
43c8f417e0 Loader: Fix bugs ldr:ro, Loader now works fully on hardware. 2018-05-02 01:39:24 -06:00
Michael Scire
d772b823c6 Stratosphere: Implement support for deferred commands. Finish sm GetService()'s deferred path. 2018-04-22 03:02:19 -06:00
Michael Scire
6df38e0053 Stratosphere: Move boost/callable_traits into libstratosphere 2018-04-21 21:15:54 -06:00
Michael Scire
39e9d0cb5f IPC templating style fix 2018-04-21 20:38:13 -06:00
Michael Scire
5a8df9f128 Stratosphere: extract common code to libstratosphere. 2018-04-21 20:31:06 -06:00