summaryrefslogtreecommitdiff
path: root/CIAO/CCF/Documentation/TODO
blob: 879602513dfd27e1754739a21726a055dc64b692 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
88
89
90
91
92
93
94
95
96
97
98
Legend:

@@ signifies a to-be-done item

%% signifies a done item (should be cleaned-up periodically)

@% signifies a partially-done item

++ signifies difficulty of an item (the more pluses the more difficult)

------------------------------------------------------------------------

@@ In operation comma member function is used both for parameters and
   exceptions. As a result one can get unexpected extra commas.

@@ Make CCF buildable with MPC.

@@ Write proper build instructions.

@@ Can I use C++ templates instead of m4 in BuiltIn stuff?

@@ Typedef.hpp TypeId.hpp: naming inconsistency.

@@ Need ICE mechanism (search for abort ())

@@ Need evolution of semantic action error handling/reporting.

@@+ It's a good idea to include ostream instead of iostream where I only
    use ostreams.

@@+++ Currently character stream is scanned completely before parsing. The
      better approach would be scanning on demand (1).

@@+++ IDL2::Parsing::parse () should be eliminated (or terminated if you
      like ;-). This item depends on (1).

@@++ 'using namespace' cleanup.

@@ Replace all i++ with ++i.

@@ It seems that SyntaxTree::Node origin in terms of file:line should be
   preserved for subsequent diagnostic implemented as separate paths
   (see repository id generator for example).

@@++++ Diagnostic evolution

@%++ XML indentation buffer

@@+++ Introduction (injection) of names into scope

@@++++ C Preprocessor integration (wave)


%% IDL feature: type id/prefix

%% IDL feature: exception declaration

%% IDL feature: built-in types

%% IDL feature: struct

%% IDL feature: enum

%% IDL feature: factories/finders (completion) (left: finder)

%% IDL feature: oprations (completion) (left: oneway)

---

@% IDL feature: literals and constant expression (3)

@% IDL feature: constant declaration; depends on 3

@% IDL feature: sequences; depends on 2,3 (left: bounded seq)

@% IDL feature: attribute (completion) (left: exception spec)

@% IDL feature: valuetype (4)

@% IDL feature: event (completion); do after (4)

@% IDL feature: literals (left FP, fixed)

---

%% Inherited name lookup

%% Revisit LEM for interconnected rules.

@@ Maybe do something with diagnostic

---

@@ IDL feature: array; depends on 2,3

@@ IDL feature: union

@@ IDL feature: fixed; depends on 2,3