Update to 2.0.0 tree from current Fremantle build
[opencv] / apps / Hawk / CVEiCL / EiC / BugList.html
diff --git a/apps/Hawk/CVEiCL/EiC/BugList.html b/apps/Hawk/CVEiCL/EiC/BugList.html
deleted file mode 100644 (file)
index 8ade012..0000000
+++ /dev/null
@@ -1,277 +0,0 @@
-<html><head><title> EiC's Bug Report List</title></head>\r
-<font size="2">\r
-<body bgcolor="white">\r
-<pre>\r
-       EiC's Bug list \r
-\r
-Template bug report form\r
-----------------------------------------------\r
-REPORTER:\r
-PLATFORM:\r
-PROBLEM:\r
-EXAMPLE:\r
-POSSIBLE SOLUTION:\r
-TESTPROGRAM:\r
-STATUS: Not Fixed\r
-\r
-----------------------------------------------\r
-REPORTER: Martin Gonda (9/1/96)\r
-PROBLEM:\r
-       Possibly fix up pre-processor, so that illegal\r
-       statements which start with a hash (#) are caught.\r
-EXAMPLE:\r
-       #hello     ...would get through without an error\r
-POSSIBLE SOLUTION:\r
-TESTPROGAM:\r
-STATUS:        Fixed by Ed Breen\r
-----------------------------------------------\r
-REPORTER: Ed Breen\r
-PROBLEM: \r
-       A failure to correctly process:\r
-\r
-       EiC > for(i=0;i<3;i++) { int a[5]; }\r
-\r
-EXAMPLE:\r
-\r
-   EiC 9> for(i=0;i<3;i++) { int a[5]; }\r
-\r
-   0:checkar  2 0          10:rvalint  5 0        \r
-   1:pushint  20           11:incint   1          \r
-   2:massign  12 1         12:stoint   5 0        \r
-   3:pushint  0            13:decint   1          \r
-   4:stoint   5 0          14:rvalint  5 0        \r
-   5:jmpU     7            15:bump     1          \r
-   6:rvalptr  1 1          16:pushint  3          \r
-   7:stoptr   0 1          17:ltint               \r
-   8:fmem     1 1          18:jmpTint  3          \r
-   9:reducear 2            19:halt                \r
-\r
-POSSIBLE SOLUTION:\r
-\r
-       The free memory instruction and the reducear instruction,\r
-lines 8 and 9, have been inserted too early. The resulting bytecode\r
-sequence should be more like:\r
-\r
-   EiC 11> {for(i=0;i<3;i++) { int a[5]; }}\r
-\r
-   0:checkar  2 0          10:stoint   5 0        \r
-   1:pushint  20           11:decint   1          \r
-   2:massign  1 1          12:rvalint  5 0        \r
-   3:pushint  0            13:bump     1          \r
-   4:stoint   5 0          14:pushint  3          \r
-   5:jmpU     12           15:ltint               \r
-   6:rvalptr  1 1          16:jmpTint  6          \r
-   7:stoptr   0 1          17:fmem     1 1        \r
-   8:rvalint  5 0          18:reducear 2          \r
-   9:incint   1            19:halt                \r
-\r
-The above solution forces an extra scoping level. However, this is not\r
-sensible for every translation unit entered at the command line.  But\r
-maybe, EiC could keep track of the level of statement nesting\r
-also. Then it could addinlocals (parser.c) at the end of each zero\r
-level statement, in addition to the current method of when the scoping\r
-level drops back to file scope?\r
-\r
-       if(S_LEVEL == 1 && Stmts == 0) \r
-               addinlocals(...);\r
-\r
-TESTPROGRAM: see example\r
-STATUS: Fixed, as outlined in possible solution.\r
-----------------------------------------------\r
-REPORTER: Ed Breen\r
-PROBLEM:\r
-       Correct the get float/double section in the _Uscanf\r
-EXAMPLE:\r
-       for ungetting characters, for example,\r
-               fmt string = %f %s \r
-               input = 100ergs. \r
-               output = 100 rgs\r
-               output should be 100 ergs.\r
-POSSIBLE SOLUTION:\r
-       Solution requires 2 ungets not just 1.\r
-TESTPROGRAM:\r
-       errScanf1.c\r
-STATUS: Fixed by Ed Breen.\r
-----------------------------------------------\r
-REPORTER: Ed Breen\r
-PROBLEM:\r
-       Correct the problem with builtin functions\r
-       being prototyped when an error occurs. This problem\r
-       means that the user will have to restart EiC\r
-       to recover properly. \r
-EXAMPLE:\r
-POSSIBLE SOLUTION:\r
-       It Has to do with the error recover stategy implemented when\r
-       the signals were added to EiC.\r
-TESTPOGRAM:    \r
-STATUS: Fixed (hopefully)\r
-----------------------------------------------\r
-REPORTER: Ed Breen\r
-PROBLEM:  Does not allow redeclaration of structure specifiers:\r
-EXAMPLE:\r
-       struct Dvector { double x, y; };\r
-       struct Dvector { double x, y; };\r
-\r
-Error in tptr2.c near line 6: Illegal use of struct/union\r
-Error in tptr2.c near line 8: Expected  ; \r
-\r
-POSSIBLE SOLUTION: ?\r
-TESTPROGRAM: see  example\r
-STATUS: Fixed by Ed Breen\r
-----------------------------------------------\r
-REPORTER: Ed Breen\r
-PROBLEM:  Memory leak caused when redefining an array:\r
-EXAMPLE:\r
-       int a[5];\r
-       int a[5];       \r
-item 1865 Create line 264 file cdecl.c nbytes 20\r
-\r
-POSSIBLE SOLUTION:  look at freetype.\r
-TESTPROGRAM: see example\r
-STATUS: Fixed, added routine freeArray to cdecl.c\r
-----------------------------------------------\r
-REPORTER: Ed Breen\r
-PROBLEM:  Memory leak caused by exit();\r
-EXAMPLE:\r
-       see file t1.c; this directory\r
-       #include t1.c\r
-       :memdump\r
-        (void)\r
-item 4436 Create line 127 file interpre.c nbytes 1200\r
-item 4435 Create line 41 file typemod.c nbytes 16\r
-\r
-POSSIBLE SOLUTION:\r
-TESTPROGRAM: see example\r
-STATUS: Not Fixed\r
-----------------------------------------------\r
-REPORTER:  Ed Breen\r
-PROBLEM:   False diagnostic\r
-EXAMPLE:\r
-       EiC 5> if (sizeof (char) * 8 == sizeof (double));\r
-       Warning: in ::EiC:: near line 5:  Non relational operation\r
-       0:pushint  1          \r
-       1:jmpFint  2          \r
-       2:halt                \r
-\r
-POSSIBLE SOLUTION: Because sizeof (char) * 8 == sizeof (double) \r
-               resolves to a constant and this might be causing the\r
-               problem.\r
-TESTPROGRAM: see example\r
-STATUS: Fixed, corrected bug with unsigned \r
-           constant binary relational operators not\r
-         converting the result to int properly.\r
-----------------------------------------------\r
-REPORTER: Ed Breen\r
-PROBLEM:  Parses an incorrect declaration\r
-EXAMPLE:\r
-       EiC 1> int (* foo[10])()[];\r
-               (void)\r
-       EiC 2> :show foo\r
-       foo -> ARY[10]* dec_Func (void ) returning ARY[0]int \r
-               (void)\r
-       ... // Simplification of the problem\r
-\r
-       EiC 10> int foo()[];\r
-               (void)\r
-       EiC 11> :show foo\r
-       foo -> dec_Func (void ) returning ARY[0]int \r
-               (void)\r
-\r
-\r
-POSSIBLE SOLUTION: Check function declaration\r
-       code.\r
-TESTPROGRAM: see example\r
-STATUS: Fixed, added the check_decl function in\r
-       the decl.c module. Not an optimal solution,\r
-       but it catches both the above errors and\r
-       more.\r
-----------------------------------------------\r
-REPORTER: Ed Breen\r
-PROBLEM: False Ambiguous re-declaration\r
-EXAMPLE: \r
-let t.c contain the following two lines \r
-\r
-typedef struct { int a, b; } ab_t;\r
-ab_t * func(void) { ab_t * p; return p; }\r
-\r
-       EiC session\r
-\r
-EiC 2> #include t.c\r
-        (void)\r
-EiC 3> :rm ab_t\r
-        (void)\r
-EiC 4> #include t.c\r
-Error in t.c near line 30: Ambiguous re-declaration of `func'\r
-\r
-POSSIBLE SOLUTION:\r
-\r
-       This has something to do with the memory being freed --\r
-       I could make it illegal to remove the last\r
-       occurrence of a structure. But that would make\r
-       it impossible to change an existing structure. Better\r
-       still, handle memory aliasing in a more creative\r
-       way -- a big job, but probably worth it. \r
-\r
-TESTPROGRAM:\r
-       see above.\r
-\r
-STATUS: Fixed by Ed Breen -- it turned out to be\r
-quite simple. \r
-\r
-----------------------------------------------\r
-REPORTER: Ed Breen\r
-PROBLEM: EiC does not cast structures properly using va_args.\r
-EXAMPLE:\r
-\r
-typedef struct { int a, b; } ab_t;\r
-ab_t a = {5,5};\r
-\r
-int p(char *fmt, ...)\r
-{\r
-    ab_t x;\r
-    va_list ap;    \r
-    va_start(ap, fmt);\r
-    \r
-    x = va_arg(ap, ab_t);\r
-    va_end(ap);\r
-\r
-    return x.a;\r
-}\r
-\r
-// the following call returns garbage!\r
-\r
-p("",a);\r
-\r
-\r
-POSSIBLE SOLUTION:\r
-\r
-       The solution is to get the stack code to `drefptr' the pointer\r
-contained at the `ap' stack position, immediately before the `refmem'\r
-instruction. Although, this is easy to do, it upsets other existing\r
-code such as referencing members within an array of structures and\r
-structure assignments -- a rethink is in order.\r
-\r
-\r
-TESTPROGRAM:\r
-       see above\r
-\r
-STATUS: Not Fixed, but the current EiC implementation\r
-       flags the passing of a structure or union to\r
-       a variadic function as an error.\r
-----------------------------------------------\r
-\r
-</pre>\r
-\r
-<ADDRESS>\r
-<!-- ADDRESS field used for automatic automatic insertion of links -->\r
-</ADDRESS>\r
-\r
-</body>\r
-</html>\r
-\r
-\r
-\r
-\r
-\r
-\r
-\r