Fix compiler-detected problem for Alphas: it seems strlen returns
something wider than int on that platform. Also, remove bogus assumption that sizeof("INT_MAX") has something to do with the maximum number of digits in an int.
This commit is contained in:
parent
8753157739
commit
a6672880e1
@ -1,4 +1,4 @@
|
||||
/* $Header: /cvsroot/pgsql/src/interfaces/ecpg/preproc/Attic/preproc.y,v 1.250 2003/08/01 11:25:55 meskes Exp $ */
|
||||
/* $Header: /cvsroot/pgsql/src/interfaces/ecpg/preproc/Attic/preproc.y,v 1.251 2003/08/06 15:54:06 tgl Exp $ */
|
||||
|
||||
/* Copyright comment */
|
||||
%{
|
||||
@ -5290,9 +5290,9 @@ UsingConst: AllConst
|
||||
{
|
||||
if ($1[1] != '?') /* found a constant */
|
||||
{
|
||||
char *length = mm_alloc(sizeof("INT_MAX")+1);
|
||||
char *length = mm_alloc(32);
|
||||
|
||||
sprintf(length, "%d", strlen($1));
|
||||
sprintf(length, "%d", (int) strlen($1));
|
||||
add_variable(&argsinsert, new_variable($1, ECPGmake_simple_type(ECPGt_const, length), 0), &no_indicator);
|
||||
}
|
||||
}
|
||||
|
Loading…
x
Reference in New Issue
Block a user