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
|