freetype-devel
[Top][All Lists]
Advanced

[Date Prev][Date Next][Thread Prev][Thread Next][Date Index][Thread Index]

Re: [ft-devel] Pango error due to #including FT_ERRORS_H


From: Behdad Esfahbod
Subject: Re: [ft-devel] Pango error due to #including FT_ERRORS_H
Date: Wed, 20 Jan 2016 18:36:26 +0100
User-agent: Mozilla/5.0 (X11; Linux x86_64; rv:38.0) Gecko/20100101 Thunderbird/38.4.0

Indeed.  The following change essentially changed FreeType API in an
incompatible way.  I suggest reverting it.  In general, I suggest not making
too many cosmetic changes to a library so widely used.

commit 37412ff9f42212bcf4dd29d9762f3c35b5735768
Author: Werner Lemberg <address@hidden>
Date:   Tue Jan 12 21:37:13 2016 +0100

    Don't use macro names that contain `__' [1/2].

    Such macro names are reserved for both C and C++.

    */*: Replace macros of the form `__XXX_H__' with `XXX_H_'.

diff --git a/include/freetype/fterrors.h b/include/freetype/fterrors.h
index 0507b9a..337a9bc 100644
--- a/include/freetype/fterrors.h
+++ b/include/freetype/fterrors.h
@@ -72,13 +72,13 @@
   /*                                                                       */
   /*   This macro ends the list.                                           */
   /*                                                                       */
-  /*   Additionally, you have to undefine `__FTERRORS_H__' before          */
-  /*   #including this file.                                               */
+  /*   Additionally, you have to undefine `FTERRORS_H_' before #including  */
+  /*   this file.                                                          */
   /*                                                                       */
   /*   Here is a simple example.                                           */
   /*                                                                       */
   /*   {                                                                   */
-  /*     #undef __FTERRORS_H__                                             */
+  /*     #undef FTERRORS_H_                                                */
   /*     #define FT_ERRORDEF( e, v, s )  { e, s },                         */
   /*     #define FT_ERROR_START_LIST     {                                 */
   /*     #define FT_ERROR_END_LIST       { 0, NULL } };                    */
@@ -99,8 +99,8 @@

   /* */

-#ifndef __FTERRORS_H__
-#define __FTERRORS_H__
+#ifndef FTERRORS_H_
+#define FTERRORS_H_


   /* include module base error codes */
@@ -210,7 +210,7 @@
 #undef FT_ERR_PREFIX
 #endif

-#endif /* __FTERRORS_H__ */
+#endif /* FTERRORS_H_ */


 /* END */


On 16-01-20 06:02 PM, John Emmas wrote:
> On 20/01/2016 15:15, Werner LEMBERG wrote:
>>
>> Can you call the preprocessor only, then checking the expanded source
>> code for the problem?
>>
> 
> Hi Werner - are you talking about freetype2 here, or pango?  AFAICT the only
> source files getting generated / preprocessed are 'config.h.win32' and
> 'pango-features.h' (both from pango).  Nothing gets preprocessed for
> freetype2, unless I'm missing something.
> 
> As an aside, I restored a recent backup of freetype2 (made on 3rd Jan 2016). 
> After restoring that previous version, everything builds okay again.  So
> that's a pretty good indication that this is due to a recent change in
> freetype2.  I also tried changing this at line 541 of 'pango/pangoft2.c':-
> 
>       static const ft_error_description ft_errors[] =
> 
> Just as an experiment I changed it to this:-
> 
>       static const ft_error_description ft_errors[256];
> 
> Needless to say, I wouldn't expect that to work properly - but it does fix the
> compilation problem (i.e. another indication that the error lies in
> 'fterrors.h').  Hope that helps,
> 
> John
> 
> 
> _______________________________________________
> Freetype-devel mailing list
> address@hidden
> https://lists.nongnu.org/mailman/listinfo/freetype-devel
> 



reply via email to

[Prev in Thread] Current Thread [Next in Thread]