'Why does `using X = int32_t()` cause a VS warning that it can't find the function definition for 'int32_t'?
The template parameter for std::function is in the form T(...). I want to use using to label some of those template parameters like the following:
using const_s32_sig = int32_t();
using const_s32 = std::function<const_s32_sig>;
using identity_sig = int32_t(int32_t);
using identity = std::function<identity_sig>;
For some reason, VS gives me the following warning:
only for the first sig definition. However, this only happens when the type name is typedef'd (e.g. int32_t, ...), and that's not the case for non-typedef'd data types such as regular ints.
I reckon it is harmless (I am perceiving the expected behavior) but I want to know if this can affect me in any way and how to resolve it, if possible?
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow
| Solution | Source |
|---|

