source: tests/enum_tests/structEnum.cfa @ 3d5a8cb

Last change on this file since 3d5a8cb was a55ebcc, checked in by JiadaL <j82liang@…>, 9 months ago
  1. Add debug print option for replacePseudoFunc; 2. Change resolver handling enum types; 3. change QualifiedNameExpr? representation pre-resolver; 4. Disable able a test that currently doesn't work
  • Property mode set to 100644
File size: 695 bytes
Line 
1#include <stdio.h>
2
3struct Point {
4     int x;
5     char y;
6};
7
8enum(Point) PointEnum {
9     first={
10         100,
11         'c'
12     },
13     second={
14         200,
15         'a'
16     }
17};
18
19// PointEnum foo(PointEnum in) {
20//      return in;
21// }
22
23// The only valid usage
24struct Point apple = first;
25// Failed due to Qualified name is currently unimplemented.
26
27int main() {
28     PointEnum vals = second;
29     PointEnum val2;
30     // The failing line: assignment
31     // val2 = vals;
32
33     printf("%d %c\n", apple.x, apple.y);
34     // Failed; enumInstType is now not a real type and not instantiated.
35     // Not sure if we want that
36     // printf("%d %c\n", second.x, second.y);
37     return 0;
38}
Note: See TracBrowser for help on using the repository browser.