Gokulakannan Somasundaram escribió:
> Hi,
> I noticed a problem with the source code of 9.0Alpha 4. In parse_agg.c,
> there is a call made to transformSortClause.
>
> 00098 torder = transformSortClause
> <http://doxygen.postgresql.org/parse__clause_8c.html#53199c36a198b5acf15a26fbd7311f79>(pstate,
> 00099 agg->aggorder
> <http://doxygen.postgresql.org/structAggref.html#f477b6dc44bd60585cabf8608dcf2047>,
> 00100 &tlist,
> 00101 true /* fix unknowns */ ,
> 00102 true /* force SQL99 rules */ );
> 00103
>
>
> Here agg->aggorder should be a List of SortGroupClause pointers, whereas
> transformSortClause expects the second argument as a list of SortBy
> pointers. I verified the doxygen code by downloading the 9.0alpha4 version.
> I am trying to understand this piece of code, while i thought i should
> report this bug.
Wow, it seems you're correct. This is quite obscure -- the result of
the compiler not being able to check the type of pointers we store in
Lists :-(
--
Alvaro Herrera http://www.CommandPrompt.com/
PostgreSQL Replication, Consulting, Custom Development, 24x7 support