View Issue Details
ID | Project | Category | View Status | Date Submitted | Last Update |
---|---|---|---|---|---|
0001242 | OpenMPT | General | public | 2019-07-30 19:18 | 2019-11-01 21:35 |
Reporter | Saga Musix | Assigned To | manx | ||
Priority | normal | Severity | minor | Reproducibility | N/A |
Status | closed | Resolution | won't fix | ||
Product Version | OpenMPT 1.29.00.* (old testing) | ||||
Target Version | OpenMPT 2.0 (very long term goals) | ||||
Summary | 0001242: Eliminate unnecessary copies in charset conversion functions (std::string_view / no-ops) | ||||
Description |
| ||||
Tags | No tags attached. | ||||
Has the bug occurred in previous versions? | |||||
Tested code revision (in case you know it) | |||||
Using string_view before actually requiring C++17 results in either a ton of additional ifdef (which mptString.h and mptString.cpp already have plenty enough of anyway), or another zoo of additional string types named mpt::ustring_maybe_view for each and every string type that we have and still then result in strange const string_view & parameters (or again another set of ifdef). I would rather delay that until we require C++17. |
|
Using value parameters instead of const & for trivial iniline conversion functions pessimizes binary size for me: 4.447.744 bytes (before), 4.453.376 bytes (after) (VS2019 Win32 ReleaseShared). |
|
Let's wait for C++17 then. |
|
C++17 support is now required. We could try using |
|
The only way to fix this without breaking implicit conversions for this case would be to add |
|
Date Modified | Username | Field | Change |
---|---|---|---|
2019-07-30 19:18 | Saga Musix | New Issue | |
2019-07-31 12:08 | manx | Assigned To | => manx |
2019-07-31 12:08 | manx | Status | new => assigned |
2019-07-31 12:25 | manx | Note Added: 0003982 | |
2019-07-31 12:41 | manx | Note Added: 0003983 | |
2019-07-31 12:41 | manx | Product Version | => OpenMPT 1.29.00.* (old testing) |
2019-07-31 12:41 | manx | Target Version | => OpenMPT 1.?? (long term goals) |
2019-07-31 17:35 | Saga Musix | Note Added: 0003984 | |
2019-09-06 23:44 | Saga Musix | Note Added: 0004046 | |
2019-09-07 05:40 | manx | Target Version | OpenMPT 1.?? (long term goals) => OpenMPT 1.29.01.00 / libopenmpt 0.5.0 (upgrade first) |
2019-11-01 21:35 | manx | Note Added: 0004130 | |
2019-11-01 21:35 | manx | Target Version | OpenMPT 1.29.01.00 / libopenmpt 0.5.0 (upgrade first) => OpenMPT 2.0 (very long term goals) |
2019-11-01 21:35 | manx | Status | assigned => closed |
2019-11-01 21:35 | manx | Resolution | open => won't fix |