Last change
on this file since b2ab352 was 12df6fe, checked in by JiadaL <j82liang@…>, 3 years ago |
Fix an enumerator value bug; add basic tests for new features; save the current progress before merge
|
-
Property mode
set to
100644
|
File size:
686 bytes
|
Line | |
---|
1 | #include <stdio.h>
|
---|
2 |
|
---|
3 | struct Point {
|
---|
4 | int x;
|
---|
5 | char y;
|
---|
6 | };
|
---|
7 |
|
---|
8 | enum(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
|
---|
24 | struct Point apple = first;
|
---|
25 | // Failed due to Qualified name is currently unimplemented.
|
---|
26 |
|
---|
27 | int 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.