Package: fweb Version: 1.62-11.1 While building the package using our research compiler infrastructure we found the following conflicting declarations of scrp_base with what only seems to be the same type, but actually isn't:
fweave.c:
typedef struct
{
eight_bits cat;
eight_bits mathness;
union
{
text_pointer Trans;
/* 332: */
#line 9552 "./fweave.web"
name_pointer Head;
/* :332 */
#line 55 "./scraps.hweb"
}trans_plus;
}scrap;
typedef scrap HUGE*scrap_pointer;
EXTERN scrap_pointer scrp_base;
But prod.c declares:
typedef struct
{
eight_bits cat;
eight_bits mathness;
union
{
text_pointer Trans;
}trans_plus;
}scrap;
typedef scrap HUGE*scrap_pointer;
EXTERN scrap_pointer scrp_base;
The two unions involved may be of different size, and thus undefined behaviour
may occur.
Best,
Michael
pgpLBpn2R5eNw.pgp
Description: PGP signature

