Skip to content

Instantly share code, notes, and snippets.

Show Gist options
  • Save xiangfan-ms/c3d4851b1d9f672159185149fcc11dea to your computer and use it in GitHub Desktop.
Save xiangfan-ms/c3d4851b1d9f672159185149fcc11dea to your computer and use it in GitHub Desktop.
bug_246785
// cl bug.cpp /clr /LD
template<int> struct S {};
#define FUN0(i) static void ToNative(S<i>) {}
#define FUN1(i) FUN0((i) * 2 + 0)FUN0((i) * 2 + 1)
#define FUN2(i) FUN1((i) * 2 + 0)FUN1((i) * 2 + 1)
#define FUN3(i) FUN2((i) * 2 + 0)FUN2((i) * 2 + 1)
#define FUN4(i) FUN3((i) * 2 + 0)FUN3((i) * 2 + 1)
#define FUN5(i) FUN4((i) * 2 + 0)FUN4((i) * 2 + 1)
#define FUN6(i) FUN5((i) * 2 + 0)FUN5((i) * 2 + 1)
#define FUN7(i) FUN6((i) * 2 + 0)FUN6((i) * 2 + 1)
#define FUN8(i) FUN7((i) * 2 + 0)FUN7((i) * 2 + 1)
#define FUN9(i) FUN8((i) * 2 + 0)FUN8((i) * 2 + 1)
#define FUN10(i) FUN9((i) * 2 + 0)FUN9((i) * 2 + 1)
#define FUN11(i) FUN10((i) * 2 + 0)FUN10((i) * 2 + 1)
public ref struct NativeConversions {
FUN11(0)
};
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment