Re: [Tinycc-devel] Minor error-reporting bug

2023-10-02 Thread grischka

On 02.10.2023 05:45, Eric Raible wrote:

It seems to me that "ST_FUNC void skip(int c)" needs to be smarter
about handling 'c',
perhaps formatting it into a string before calling tcc_error().  I
could (in theory) fix this,
but it looks like it would require refactoring get_tok_str() to not
use the global cstr_buf).

> A bit above my pay grade.

I guess in tinycc one would just use a local temporary buffer for one
of the two get_tok_str(c) results, as in

char tmp[40];
pstrcpy(tmp, sizeof tmp, get_tok_str(c));
tcc_error("%s ... %s\n", tmp, get_tok_str(tok, ));

-- gr



Anyway, this is not a show stopper by any means, but it is an ugly and
initially confusing message.

___
Tinycc-devel mailing list
Tinycc-devel@nongnu.org
https://lists.nongnu.org/mailman/listinfo/tinycc-devel




___
Tinycc-devel mailing list
Tinycc-devel@nongnu.org
https://lists.nongnu.org/mailman/listinfo/tinycc-devel


[Tinycc-devel] Minor error-reporting bug

2023-10-01 Thread Eric Raible
Here's a minimal test case:

void f()
{
do { };
}

which gives:

tccbug.c:3: error: '[bletch]' expected (got ";")
where bletch is the code for TOK_WHILE (value==261 in my build) rendered as %c.

In emacs/eshell this displays as   error: '^E' expected (got ";")
In bash this displays as:   error: '' expected (got ";")

It seems to me that "ST_FUNC void skip(int c)" needs to be smarter
about handling 'c',
perhaps formatting it into a string before calling tcc_error().  I
could (in theory) fix this,
but it looks like it would require refactoring get_tok_str() to not
use the global cstr_buf).
A bit above my pay grade.

Anyway, this is not a show stopper by any means, but it is an ugly and
initially confusing message.

___
Tinycc-devel mailing list
Tinycc-devel@nongnu.org
https://lists.nongnu.org/mailman/listinfo/tinycc-devel