Re: GEC bug report
Wolfgang Jansen <[email protected]> Wed, 03 Apr 2013 11:45:41 +0200
| Newsgroups | gmane.comp.lang.eiffel.gobo.devel |
|---|---|
| Message-ID | <[email protected]> |
On 04/03/2013 12:23 AM, Eric Bezault wrote:
> Hi Wolfgang,
>
> On 3/8/2013 8:43 PM, Wolfgang Jansen wrote:
>> today I downloaded the newest GEC version from GIT and tried to install
>> it from scratch,
>> i.e. by running $GOBO/work/bootstrap/bootstrap.sh. It was, and still is,
>> really terrible.
>
> I'm sorry to hear about your bad experience.
> The problem is that I don't have access to a system other than Windows.
> So I was not aware of these problems. I tried to fix them the best that
> I could based on your report. Please let me know if it's working better
> for you.
>
Yes, it works better but not good.
Compiling file $GOBO/work/bootstrap/gec2.c issues the warnings
gec2.c:206:32: warning: character constant too long for its type =
[enabled by default]
(and a handful more lines). There is the char literal '\177775'.
I guess that the gcc turns it into a 8bit literal by removing extra bits,
i.e. the warnings become semantic errors. I changed the occurrences
of '\177775' into the int literal 0177775.
Then the same warnings (and semantic errors) occur when the generated
gec compiles itself, now lines gec2.c:10203:13 etc., first in routine
UTF_CONVERTER.escaped_utf_32_substring_into_utf_8_0_pointer
where line 312
c :=3D s.code (i)
(with `s: READABLE_STRING_GENERAL') is compiled into
t4 =3D (T3)('\177775');
t5 =3D ((T10)(t4));
I think that routines STRING_32.code or CHARACTER_32.code are to be =
modified.
Nevertheless, compilation continues (because we have warnings, not errors)
and ends again with errors of Eiffel compilation:
[GVKNL1] missing kernel class *UNKNOWN*.
----
[GIAAA] internal error.
----
[GVKNL1] missing kernel class *UNKNOWN*.
----
[GVKNL1] missing kernel class *UNKNOWN*.
----
[GVKNL1] missing kernel class *UNKNOWN*.
----
[GVKNL1] missing kernel class *UNKNOWN*.
----
[GVKNL1] missing kernel class *UNKNOWN*.
----
[GVKNL1] missing kernel class *UNKNOWN*.
----
[GVKNL1] missing kernel class *UNKNOWN*.
----
[GVKNL1] missing kernel class *UNKNOWN*.
----
[GVKNL1] missing kernel class *UNKNOWN*.
----
[GVKNL1] missing kernel class *UNKNOWN*.
----
[GVKNL1] missing kernel class *UNKNOWN*.
----
[GVKNL1] missing kernel class *UNKNOWN*.
----
[GVKNL1] missing kernel class *UNKNOWN*.
----
[GVKNL1] missing kernel class *UNKNOWN*.
----
[GVKNL1] missing kernel class *UNKNOWN*.
----
[GVKNL1] missing kernel class *UNKNOWN*.
----
[GVKNL1] missing kernel class *UNKNOWN*.
----
[GVKNL1] missing kernel class *UNKNOWN*.
----
[GVKNL1] missing kernel class *UNKNOWN*.
----
[GVSRC4] unknown root class *UNKNOWN*.
----
BUILD FAILED!
BUILD FAILED!
Then I replaced line 194 of STRING_32
Result :=3D area.item (i - 1).code.to_natural_32
by
Result :=3D area.item (i - 1).natural_32_code
and tried it again: the warnings and errors remain.
Here, I gave up.
-- =
Dr. Wolfgang Jansen
Lauenburger Stra=DFe 40
D-12169 Berlin
Tel: 0172 4086916
---------------------------------------------------------------------------=
---
Minimize network downtime and maximize team effectiveness.
Reduce network management and security costs.Learn how to hire =
the most talented Cisco Certified professionals. Visit the =
Employer Resources Portal
http://www.cisco.com/web/learning/employer_resources/index.html