source: tests/enum_tests/structEnum.cfa@ 41fb996

Last change on this file since 41fb996 was a55ebcc, checked in by JiadaL <j82liang@…>, 20 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
RevLine 
[fc134a48]1#include <stdio.h>
2
3struct Point {
[d958834b]4 int x;
5 char y;
[fc134a48]6};
7
8enum(Point) PointEnum {
[d958834b]9 first={
10 100,
11 'c'
12 },
13 second={
14 200,
15 'a'
16 }
[fc134a48]17};
18
[a55ebcc]19// PointEnum foo(PointEnum in) {
20// return in;
21// }
[d958834b]22
[fc134a48]23// The only valid usage
24struct Point apple = first;
25// Failed due to Qualified name is currently unimplemented.
26
27int main() {
[d958834b]28 PointEnum vals = second;
29 PointEnum val2;
[12df6fe]30 // The failing line: assignment
31 // val2 = vals;
[d958834b]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;
[fc134a48]38}
Note: See TracBrowser for help on using the repository browser.