TSS>Да, вероятно я не прав насчет стандарта. Тем не менее, по умолчанию компилятор всегда лепит пролог, если явно не указать ему этого не делать. В сорцах win10 видимо явно указана директива __declspec(naked).
Думаю, что дело в версии и/или настройках компилятора. Пример:
void (*g_pFunc)() = nullptr;
extern "C"
__declspec(dllexport)
void f()
{
g_pFunc();
}
>cl /O2 /Zi /MTd /EHsc test.cpp /link /RELEASE /OPT:REF
Microsoft (R) 32-bit C/C++ Optimizing Compiler Version 15.00.30729.01 for 80x86
Copyright (C) Microsoft Corporation. All rights reserved.
test.cpp
Microsoft (R) Incremental Linker Version 9.00.30729.4999
Copyright (C) Microsoft Corporation. All rights reserved.
/out:test.exe
/debug
/RELEASE
/OPT:REF
test.obj
Creating library test.lib and object test.exp
f: FF25C03F4200 jmp d,[000423FC0]
.00401006: CCCCCCCCCCCCCCCCCCCC int 3