Thread: ecpg is broken in current

ecpg is broken in current

From
Tatsuo Ishii
Date:
gcc -o ecpg preproc.o pgc.o type.o ecpg.o ecpg_keywords.o output.o keywords.o c_keywords.o ../lib/typename.o
descriptor.ovariable.o -lz -lcrypt -lnsl -ldl -lm -lbsd -lreadline -ltermcap -lncurses  -export-dynamic
 
pgc.o: In function `yylex':
pgc.o(.text+0x582): undefined reference to `pg_mbcliplen'
pgc.o(.text+0x953): undefined reference to `pg_mbcliplen'
collect2: ld returned 1 exit status

pg_mbcliplen cannot be used in the frontend. Remove them, please.
--
Tatsuo Ishii


Re: ecpg is broken in current

From
Tatsuo Ishii
Date:
> On Fri, Sep 22, 2000 at 03:31:59PM +0900, Tatsuo Ishii wrote:
> > pgc.o(.text+0x582): undefined reference to `pg_mbcliplen'
> > pgc.o(.text+0x953): undefined reference to `pg_mbcliplen'
> > ...
> > pg_mbcliplen cannot be used in the frontend. Remove them, please.
> 
> Is there any way to use a similar functionality in ecpg? I don't like to run
> truncate the text too early.

To truncate a mulbyte characters properly, you need to know what
encoding is used for a .pgc file that ecpg about to process. Currently
there is no mechanism in ecpg (and all other frontend) to know what
encoding is used for the .pgc files. This is a tough problem...
--
Tatsuo Ishii


Re: ecpg is broken in current

From
Christof Petig
Date:
Tatsuo Ishii wrote:

> > On Fri, Sep 22, 2000 at 03:31:59PM +0900, Tatsuo Ishii wrote:
> > > pgc.o(.text+0x582): undefined reference to `pg_mbcliplen'
> > > pgc.o(.text+0x953): undefined reference to `pg_mbcliplen'
> > > ...
> > > pg_mbcliplen cannot be used in the frontend. Remove them, please.
> >
> > Is there any way to use a similar functionality in ecpg? I don't like to run
> > truncate the text too early.
>
> To truncate a mulbyte characters properly, you need to know what
> encoding is used for a .pgc file that ecpg about to process. Currently
> there is no mechanism in ecpg (and all other frontend) to know what
> encoding is used for the .pgc files. This is a tough problem...
> --
> Tatsuo Ishii

I would recommend a command line option overriding an environment variable
(fallback). Isn't there some LC_* indicating the default encoding.
But on the other hand, compiling would most likely take place in 'C'.

Christof