diff --git a/test/compiler/member.st b/test/compiler/member.st new file mode 100644 index 0000000000000000000000000000000000000000..50ab37ec3459e4f4b12a1682b32016c6e548c182 --- /dev/null +++ b/test/compiler/member.st @@ -0,0 +1,31 @@ +program memberTest + +%%struct struct_t { int i; struct { double d; } s; }; +%%union union_t { int i; struct struct_t *p; }; + +struct struct_t s; +union union_t u; + +ss simple { + struct struct_t *ps = &s; + union union_t *pu = &u; + + state simple { + when () { + if (s.i == 1) + s.i++; + if (s.s.d == 0.1) + s.s.d /= 3.0; + + if (ps->i == 1) + ps->i++; + if (ps->s.d == 0.1) + ps->s.d /= 3.0; + + if (pu->i == 13) + pu->p->i = pu->i; + if (pu->p->s.d == 13.0) + pu->p->s.d *= 3; + } exit + } +} diff --git a/test/compiler/snc_test.plt b/test/compiler/snc_test.plt index b9b4cf26a2488c7c64b57852b43aa822276177b9..76f703817801f8704a4f727530b1ccb63bcc75cd 100644 --- a/test/compiler/snc_test.plt +++ b/test/compiler/snc_test.plt @@ -9,6 +9,7 @@ my $success = { exOpt_DuplOpt => 0, foreignTypes => 0, include_windows_h => 0, + member => 0, namingConflict => 0, nesting_depth => 0, sync_not_monitored => 0,