parent_method.hlsl 392 B

123456789101112131415161718192021222324252627282930313233
  1. // RUN: %dxc -E main -T ps_6_0 %s | FileCheck %s
  2. // CHECK: main
  3. class A {
  4. float m_a;
  5. void bar() { m_a = 1.2; }
  6. };
  7. class B : A {
  8. int m_b;
  9. void bar() {
  10. A::bar();
  11. }
  12. void foo() {
  13. m_a = 1.3;
  14. m_b = 3;
  15. }
  16. };
  17. class C : B {
  18. void bar() {
  19. B::bar();
  20. A::bar();
  21. m_a = 1.5;
  22. }
  23. };
  24. float main() : SV_Target {
  25. C c;
  26. c.bar();
  27. c.foo();
  28. return c.m_a;
  29. }