<feed xmlns='http://www.w3.org/2005/Atom'>
<title>dolphin/Source/Core/Common/MsgHandler.h, branch 2603</title>
<subtitle>GameCube and Wii emulator</subtitle>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/'/>
<entry>
<title>Remove unused imports</title>
<updated>2026-01-25T15:12:15+00:00</updated>
<author>
<name>Martino Fontana</name>
<email>tinozzo123@gmail.com</email>
</author>
<published>2026-01-23T20:30:01+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=a14c88ba67a51b0a563a5fc800cd089e82ffacaf'/>
<id>a14c88ba67a51b0a563a5fc800cd089e82ffacaf</id>
<content type='text'>
Yellow squiggly lines begone!
Done automatically on .cpp files through `run-clang-tidy`, with manual corrections to the mistakes.
If an import is directly used, but is technically unnecessary since it's recursively imported by something else, it is *not* removed.
The tool doesn't touch .h files, so I did some of them by hand while fixing errors due to old recursive imports.
Not everything is removed, but the cleanup should be substantial enough.
Because this done on Linux, code that isn't used on it is mostly untouched.
(Hopefully no open PR is depending on these imports...)
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Yellow squiggly lines begone!
Done automatically on .cpp files through `run-clang-tidy`, with manual corrections to the mistakes.
If an import is directly used, but is technically unnecessary since it's recursively imported by something else, it is *not* removed.
The tool doesn't touch .h files, so I did some of them by hand while fixing errors due to old recursive imports.
Not everything is removed, but the cleanup should be substantial enough.
Because this done on Linux, code that isn't used on it is mostly untouched.
(Hopefully no open PR is depending on these imports...)
</pre>
</div>
</content>
</entry>
<entry>
<title>Common: Fix compile failure with fmt&gt;=11</title>
<updated>2025-01-04T18:13:05+00:00</updated>
<author>
<name>Ferdinand Bachmann</name>
<email>ferdinand.bachmann@yrlf.at</email>
</author>
<published>2025-01-04T17:46:04+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=b79bdb13c05b4fcef23cd30b210d40662d28373b'/>
<id>b79bdb13c05b4fcef23cd30b210d40662d28373b</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Common: Add [[nodiscard]] to GetStringT().</title>
<updated>2022-09-23T12:58:18+00:00</updated>
<author>
<name>Admiral H. Curtiss</name>
<email>pikachu025@gmail.com</email>
</author>
<published>2022-09-23T12:58:18+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=9860b68b9c760d88c5cdb3bd6bb28f28cdd9191f'/>
<id>9860b68b9c760d88c5cdb3bd6bb28f28cdd9191f</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Use `__VA_OPT__(, ) __VA_ARGS__` instead of `##__VA_ARGS__`</title>
<updated>2022-08-23T19:09:57+00:00</updated>
<author>
<name>Pokechu22</name>
<email>Pokechu022@gmail.com</email>
</author>
<published>2022-08-23T18:14:47+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=0cced44142049c286dbc1821e39703ff09cc03b9'/>
<id>0cced44142049c286dbc1821e39703ff09cc03b9</id>
<content type='text'>
Per https://en.cppreference.com/w/cpp/preprocessor/replace#.23_and_.23.23_operators the `##` behavior is a nonstandard extension; this extension seems to be supported by all compilers we care about, but IntelliSense in visual studio doesn't correctly handle it, resulting in false errors in the IDE (but not when compiling).

Per https://en.cppreference.com/w/cpp/preprocessor/replace#Function-like_macros C++20 introduced a workaround, where `__VA_OPT__(, )` generates a comma if and only if `__VA_ARGS__` is non-empty.

This PR replaces all occurrences, with the exception of Externals, DSPSpy (which is not likely to be edited in MSVC and does not target C++20 currently), and JitArm64_Integer.cpp (which uses `Function(__VA_ARGS__)`, and thus does not ever need a comma).
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Per https://en.cppreference.com/w/cpp/preprocessor/replace#.23_and_.23.23_operators the `##` behavior is a nonstandard extension; this extension seems to be supported by all compilers we care about, but IntelliSense in visual studio doesn't correctly handle it, resulting in false errors in the IDE (but not when compiling).

Per https://en.cppreference.com/w/cpp/preprocessor/replace#Function-like_macros C++20 introduced a workaround, where `__VA_OPT__(, )` generates a comma if and only if `__VA_ARGS__` is non-empty.

This PR replaces all occurrences, with the exception of Externals, DSPSpy (which is not likely to be edited in MSVC and does not target C++20 currently), and JitArm64_Integer.cpp (which uses `Function(__VA_ARGS__)`, and thus does not ever need a comma).
</pre>
</div>
</content>
</entry>
<entry>
<title>Add a check for libfmt version so that in case libfmt-9 is used the function is_compile_string is called under it's new namespace</title>
<updated>2022-07-09T15:02:09+00:00</updated>
<author>
<name>Christopher Rudolph</name>
<email>rudolchr@b-tu.de</email>
</author>
<published>2022-07-09T15:02:09+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=66f330e57316257fe81b46f57dad22ea6dee7bae'/>
<id>66f330e57316257fe81b46f57dad22ea6dee7bae</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>fmt: use make_format_args instead of make_args_checked</title>
<updated>2022-05-11T02:25:48+00:00</updated>
<author>
<name>Shawn Hoffman</name>
<email>godisgovernment@gmail.com</email>
</author>
<published>2022-05-10T23:39:12+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=fa17153ebc83cbc0ae7a1d7430d9509db0c6e0d6'/>
<id>fa17153ebc83cbc0ae7a1d7430d9509db0c6e0d6</id>
<content type='text'>
make_args_checked is deprecated
see https://github.com/fmtlib/fmt/pull/2760 and the linked comment
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
make_args_checked is deprecated
see https://github.com/fmtlib/fmt/pull/2760 and the linked comment
</pre>
</div>
</content>
</entry>
<entry>
<title>Use fmt::runtime in FmtFormatT</title>
<updated>2022-01-13T19:11:08+00:00</updated>
<author>
<name>Pokechu22</name>
<email>Pokechu022@gmail.com</email>
</author>
<published>2022-01-13T07:25:36+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=cc592ab81467409a42584b05d1d06fb4136ff78c'/>
<id>cc592ab81467409a42584b05d1d06fb4136ff78c</id>
<content type='text'>
This format string is by definition dynamic and can't be checked at compile time.  There are other similar strings in the log handler and in asserts, but they use vformat and thus don't need fmt::runtime.  We might be able to do a similar thing where the untranslated string is compile-time checked, but FmtFormatT is used in so few places that I don't want to handle that in this PR.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This format string is by definition dynamic and can't be checked at compile time.  There are other similar strings in the log handler and in asserts, but they use vformat and thus don't need fmt::runtime.  We might be able to do a similar thing where the untranslated string is compile-time checked, but FmtFormatT is used in so few places that I don't want to handle that in this PR.
</pre>
</div>
</content>
</entry>
<entry>
<title>Common/MsgHandler: Use caller's file and line number in log messages</title>
<updated>2022-01-09T20:44:14+00:00</updated>
<author>
<name>Pokechu22</name>
<email>Pokechu022@gmail.com</email>
</author>
<published>2021-11-17T02:48:30+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=c296c34e0053abd5b0ec7ab18631b1261ab324f9'/>
<id>c296c34e0053abd5b0ec7ab18631b1261ab324f9</id>
<content type='text'>
This will assist with finding the source of a panic alert based on logs; before, Common\MsgHandler.cpp:113 (or similar) was always used.
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
This will assist with finding the source of a panic alert based on logs; before, Common\MsgHandler.cpp:113 (or similar) was always used.
</pre>
</div>
</content>
</entry>
<entry>
<title>Common/MsgHandler: Fix PanicAlertFmtT not actually being translated</title>
<updated>2022-01-09T20:44:14+00:00</updated>
<author>
<name>Pokechu22</name>
<email>Pokechu022@gmail.com</email>
</author>
<published>2021-11-11T04:14:57+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=f55571ee5dffad775cd4043a273f232d7e8330ee'/>
<id>f55571ee5dffad775cd4043a273f232d7e8330ee</id>
<content type='text'>
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
</pre>
</div>
</content>
</entry>
<entry>
<title>Common/MsgHandler: Remove use of lambda, as it breaks __func__</title>
<updated>2022-01-09T20:44:14+00:00</updated>
<author>
<name>Pokechu22</name>
<email>Pokechu022@gmail.com</email>
</author>
<published>2021-11-11T03:38:02+00:00</published>
<link rel='alternate' type='text/html' href='https://git.dog6.net/dolphin/commit/?id=2a5016c2f8be6a12b30eb8001defdc6c24415f27'/>
<id>2a5016c2f8be6a12b30eb8001defdc6c24415f27</id>
<content type='text'>
Specifically, this meant that __func__ in macros (namely ASSERT) would always be evaluate to "operator ()".
</content>
<content type='xhtml'>
<div xmlns='http://www.w3.org/1999/xhtml'>
<pre>
Specifically, this meant that __func__ in macros (namely ASSERT) would always be evaluate to "operator ()".
</pre>
</div>
</content>
</entry>
</feed>
