brintos

brintos / llvm-project-archived public Read only

0
0
Text · 440 B · ab379f8 Raw
26 lines · cpp
1#include <cstdint>2 3class Base {4  int32_t a;5};6class Class1 : Base {7public:8  int32_t b;9};10 11class EmptyBase {12};13class Class2 : EmptyBase {14public:15  int32_t b;16};17 18int main(int argc, char **argv) {19  Class1 c1;20  Class2 c2;21  //% self.expect("expr offsetof(Base, a)", substrs=["= 0"])22  //% self.expect("expr offsetof(Class1, b)", substrs=["= 4"])23  //% self.expect("expr offsetof(Class2, b)", substrs=["= 0"])24  return c1.b + c2.b;25}26