Work around a bug in Borland's C++ compiler.

See

  http://qc.embarcadero.com/wc/qcmain.aspx?d=118998

for Borland's bug tracker entry.

Reported by Yuliana Zigangirova <zigangirova@inbox.ru>,
http://lists.gnu.org/archive/html/freetype-devel/2014-04/msg00001.html.

* include/internal/ftvalid.h (FT_ValidatorRec), src/smooth/ftgrays.c
(gray_TWorker_): Move `ft_jmp_buf' field to be the first element.
This commit is contained in:
Werner Lemberg 2014-12-07 19:29:52 +01:00
parent 0098d5502d
commit 553c9672b3
3 changed files with 20 additions and 4 deletions

View File

@ -1,3 +1,19 @@
2014-12-07 Werner Lemberg <wl@gnu.org>
Work around a bug in Borland's C++ compiler.
See
http://qc.embarcadero.com/wc/qcmain.aspx?d=118998
for Borland's bug tracker entry.
Reported by Yuliana Zigangirova <zigangirova@inbox.ru>,
http://lists.gnu.org/archive/html/freetype-devel/2014-04/msg00001.html.
* include/internal/ftvalid.h (FT_ValidatorRec), src/smooth/ftgrays.c
(gray_TWorker_): Move `ft_jmp_buf' field to be the first element.
2014-12-07 Werner Lemberg <wl@gnu.org>
*/*: Decorate hex constants with `U' and `L' where appropriate.

View File

@ -87,13 +87,13 @@ FT_BEGIN_HEADER
/* validator structure */
typedef struct FT_ValidatorRec_
{
ft_jmp_buf jump_buffer; /* used for exception handling */
const FT_Byte* base; /* address of table in memory */
const FT_Byte* limit; /* `base' + sizeof(table) in memory */
FT_ValidationLevel level; /* validation level */
FT_Error error; /* error returned. 0 means success */
ft_jmp_buf jump_buffer; /* used for exception handling */
} FT_ValidatorRec;
#if defined( _MSC_VER )

View File

@ -405,6 +405,8 @@ typedef ptrdiff_t FT_PtrDist;
typedef struct gray_TWorker_
{
ft_jmp_buf jump_buffer;
TCoord ex, ey;
TPos min_ex, max_ex;
TPos min_ey, max_ey;
@ -440,8 +442,6 @@ typedef ptrdiff_t FT_PtrDist;
int band_size;
int band_shoot;
ft_jmp_buf jump_buffer;
void* buffer;
long buffer_size;