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

Attachment: pgpLBpn2R5eNw.pgp
Description: PGP signature

Reply via email to