freetype-commit
[Top][All Lists]
Advanced

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

[freetype2] master 9ac9060: [GSoC] src/*.*: Convert block comments to `l


From: Werner LEMBERG
Subject: [freetype2] master 9ac9060: [GSoC] src/*.*: Convert block comments to `light' style.
Date: Sun, 3 Jun 2018 03:09:02 -0400 (EDT)

branch: master
commit 9ac9060df00010a3eec234a8fea9cded9b8282a1
Author: Werner Lemberg <address@hidden>
Commit: Werner Lemberg <address@hidden>

    [GSoC] src/*.*: Convert block comments to `light' style.
    
    This monster commit was created by applying Nikhil's scripts
    `docconverter.py' and `markify.py' to all C header and source files,
    followed up by minor manual clean-up.
    
    No change in functionality, of course.
    
    I used commit f7419907bc6044b9b7057f9789866426c804ba82 from
    https://github.com/nikramakrishnan/freetype-docs.git.
---
 src/autofit/afangles.c  |   52 +-
 src/autofit/afangles.h  |    6 +-
 src/autofit/afblue.c    |   32 +-
 src/autofit/afblue.cin  |   32 +-
 src/autofit/afblue.h    |   32 +-
 src/autofit/afblue.hin  |   32 +-
 src/autofit/afcjk.c     |  138 +--
 src/autofit/afcjk.h     |   38 +-
 src/autofit/afcover.h   |   32 +-
 src/autofit/afdummy.c   |   34 +-
 src/autofit/afdummy.h   |   34 +-
 src/autofit/aferrors.h  |   48 +-
 src/autofit/afglobal.c  |   52 +-
 src/autofit/afglobal.h  |   46 +-
 src/autofit/afhints.c   |  110 +-
 src/autofit/afhints.h   |  232 ++--
 src/autofit/afindic.c   |   32 +-
 src/autofit/afindic.h   |   34 +-
 src/autofit/aflatin.c   |  172 +--
 src/autofit/aflatin.h   |   44 +-
 src/autofit/aflatin2.c  |  134 +-
 src/autofit/aflatin2.h  |   34 +-
 src/autofit/afloader.c  |  132 +-
 src/autofit/afloader.h  |   42 +-
 src/autofit/afmodule.c  |   44 +-
 src/autofit/afmodule.h  |   36 +-
 src/autofit/afranges.c  |   32 +-
 src/autofit/afranges.h  |   32 +-
 src/autofit/afscript.h  |   32 +-
 src/autofit/afshaper.c  |   44 +-
 src/autofit/afshaper.h  |   32 +-
 src/autofit/afstyles.h  |   32 +-
 src/autofit/aftypes.h   |  170 +--
 src/autofit/afwarp.c    |   52 +-
 src/autofit/afwarp.h    |   32 +-
 src/autofit/afwrtsys.h  |   32 +-
 src/autofit/autofit.c   |   32 +-
 src/base/ftadvanc.c     |   32 +-
 src/base/ftapi.c        |   32 +-
 src/base/ftbase.c       |   32 +-
 src/base/ftbase.h       |   32 +-
 src/base/ftbbox.c       |  350 +++---
 src/base/ftbdf.c        |   32 +-
 src/base/ftbitmap.c     |   32 +-
 src/base/ftcalc.c       |  110 +-
 src/base/ftcid.c        |   32 +-
 src/base/ftdbgmem.c     |   60 +-
 src/base/ftdebug.c      |  118 +-
 src/base/ftfntfmt.c     |   32 +-
 src/base/ftfstype.c     |   32 +-
 src/base/ftgasp.c       |   32 +-
 src/base/ftgloadr.c     |   82 +-
 src/base/ftglyph.c      |   68 +-
 src/base/ftgxval.c      |   50 +-
 src/base/fthash.c       |   28 +-
 src/base/ftinit.c       |   86 +-
 src/base/ftlcdfil.c     |   32 +-
 src/base/ftmac.c        |  104 +-
 src/base/ftmm.c         |   44 +-
 src/base/ftobjs.c       |  177 +--
 src/base/ftotval.c      |   32 +-
 src/base/ftoutln.c      |   58 +-
 src/base/ftpatent.c     |   34 +-
 src/base/ftpfr.c        |   32 +-
 src/base/ftpsprop.c     |   46 +-
 src/base/ftrfork.c      |   58 +-
 src/base/ftsnames.c     |   38 +-
 src/base/ftstream.c     |   44 +-
 src/base/ftstroke.c     |   36 +-
 src/base/ftsynth.c      |   44 +-
 src/base/ftsystem.c     |  279 +++--
 src/base/fttrigon.c     |   60 +-
 src/base/fttype1.c      |   32 +-
 src/base/ftutil.c       |   44 +-
 src/base/ftwinfnt.c     |   32 +-
 src/bdf/bdf.h           |   50 +-
 src/bdf/bdfdrivr.c      |   16 +-
 src/bdf/bdferror.h      |   10 +-
 src/bdf/bdflib.c        |   76 +-
 src/bzip2/ftbzip2.c     |   48 +-
 src/cache/ftcache.c     |   32 +-
 src/cache/ftcbasic.c    |   34 +-
 src/cache/ftccache.c    |   32 +-
 src/cache/ftccache.h    |   64 +-
 src/cache/ftccback.h    |   32 +-
 src/cache/ftccmap.c     |   56 +-
 src/cache/ftcerror.h    |   48 +-
 src/cache/ftcglyph.c    |   32 +-
 src/cache/ftcglyph.h    |  166 +--
 src/cache/ftcimage.c    |   32 +-
 src/cache/ftcimage.h    |   50 +-
 src/cache/ftcmanag.c    |   32 +-
 src/cache/ftcmanag.h    |  143 +--
 src/cache/ftcmru.c      |   32 +-
 src/cache/ftcmru.h      |   80 +-
 src/cache/ftcsbits.c    |   90 +-
 src/cache/ftcsbits.h    |   32 +-
 src/cff/cff.c           |   32 +-
 src/cff/cffcmap.c       |   32 +-
 src/cff/cffcmap.h       |   32 +-
 src/cff/cffdrivr.c      |  184 +--
 src/cff/cffdrivr.h      |   32 +-
 src/cff/cfferrs.h       |   46 +-
 src/cff/cffgload.c      |   44 +-
 src/cff/cffgload.h      |   32 +-
 src/cff/cffload.c       |   50 +-
 src/cff/cffload.h       |   32 +-
 src/cff/cffobjs.c       |   98 +-
 src/cff/cffobjs.h       |   48 +-
 src/cff/cffparse.c      |   44 +-
 src/cff/cffparse.h      |   42 +-
 src/cff/cfftoken.h      |   32 +-
 src/cid/ciderrs.h       |   46 +-
 src/cid/cidgload.c      |   44 +-
 src/cid/cidgload.h      |   32 +-
 src/cid/cidload.c       |   44 +-
 src/cid/cidload.h       |   32 +-
 src/cid/cidobjs.c       |  202 ++--
 src/cid/cidobjs.h       |  116 +-
 src/cid/cidparse.c      |   44 +-
 src/cid/cidparse.h      |  108 +-
 src/cid/cidriver.c      |   54 +-
 src/cid/cidriver.h      |   32 +-
 src/cid/cidtoken.h      |   32 +-
 src/cid/type1cid.c      |   32 +-
 src/gxvalid/gxvalid.c   |   34 +-
 src/gxvalid/gxvalid.h   |   50 +-
 src/gxvalid/gxvbsln.c   |   62 +-
 src/gxvalid/gxvcommn.c  |   62 +-
 src/gxvalid/gxvcommn.h  |   60 +-
 src/gxvalid/gxverror.h  |   66 +-
 src/gxvalid/gxvfeat.c   |   62 +-
 src/gxvalid/gxvfeat.h   |   50 +-
 src/gxvalid/gxvfgen.c   |  114 +-
 src/gxvalid/gxvjust.c   |   62 +-
 src/gxvalid/gxvkern.c   |   62 +-
 src/gxvalid/gxvlcar.c   |   62 +-
 src/gxvalid/gxvmod.c    |   62 +-
 src/gxvalid/gxvmod.h    |   52 +-
 src/gxvalid/gxvmort.c   |   62 +-
 src/gxvalid/gxvmort.h   |   50 +-
 src/gxvalid/gxvmort0.c  |   64 +-
 src/gxvalid/gxvmort1.c  |   64 +-
 src/gxvalid/gxvmort2.c  |   64 +-
 src/gxvalid/gxvmort4.c  |   64 +-
 src/gxvalid/gxvmort5.c  |   64 +-
 src/gxvalid/gxvmorx.c   |   62 +-
 src/gxvalid/gxvmorx.h   |   50 +-
 src/gxvalid/gxvmorx0.c  |   64 +-
 src/gxvalid/gxvmorx1.c  |   64 +-
 src/gxvalid/gxvmorx2.c  |   64 +-
 src/gxvalid/gxvmorx4.c  |   64 +-
 src/gxvalid/gxvmorx5.c  |   64 +-
 src/gxvalid/gxvopbd.c   |   62 +-
 src/gxvalid/gxvprop.c   |   62 +-
 src/gxvalid/gxvtrak.c   |   62 +-
 src/gzip/ftgzip.c       |   56 +-
 src/lzw/ftlzw.c         |   52 +-
 src/lzw/ftzopen.c       |   48 +-
 src/lzw/ftzopen.h       |  116 +-
 src/otvalid/otvalid.c   |   32 +-
 src/otvalid/otvalid.h   |   32 +-
 src/otvalid/otvbase.c   |   44 +-
 src/otvalid/otvcommn.c  |   44 +-
 src/otvalid/otvcommn.h  |   32 +-
 src/otvalid/otverror.h  |   48 +-
 src/otvalid/otvgdef.c   |   44 +-
 src/otvalid/otvgpos.c   |   44 +-
 src/otvalid/otvgpos.h   |   32 +-
 src/otvalid/otvgsub.c   |   44 +-
 src/otvalid/otvjstf.c   |   44 +-
 src/otvalid/otvmath.c   |   48 +-
 src/otvalid/otvmod.c    |   44 +-
 src/otvalid/otvmod.h    |   34 +-
 src/pcf/pcfdrivr.c      |   40 +-
 src/pcf/pcferror.h      |   46 +-
 src/pcf/pcfread.c       |   40 +-
 src/pcf/pcfutil.c       |    6 +-
 src/pfr/pfr.c           |   32 +-
 src/pfr/pfrcmap.c       |   32 +-
 src/pfr/pfrcmap.h       |   32 +-
 src/pfr/pfrdrivr.c      |   48 +-
 src/pfr/pfrdrivr.h      |   32 +-
 src/pfr/pfrerror.h      |   46 +-
 src/pfr/pfrgload.c      |   50 +-
 src/pfr/pfrgload.h      |   32 +-
 src/pfr/pfrload.c       |  160 +--
 src/pfr/pfrload.h       |   32 +-
 src/pfr/pfrobjs.c       |   32 +-
 src/pfr/pfrobjs.h       |   32 +-
 src/pfr/pfrsbit.c       |   32 +-
 src/pfr/pfrsbit.h       |   32 +-
 src/pfr/pfrtypes.h      |   32 +-
 src/psaux/afmparse.c    |   56 +-
 src/psaux/afmparse.h    |   32 +-
 src/psaux/cffdecode.c   |  186 +--
 src/psaux/cffdecode.h   |   32 +-
 src/psaux/psarrst.c     |   72 +-
 src/psaux/psarrst.h     |   72 +-
 src/psaux/psaux.c       |   32 +-
 src/psaux/psauxerr.h    |   48 +-
 src/psaux/psauxmod.c    |   32 +-
 src/psaux/psauxmod.h    |   32 +-
 src/psaux/psblues.c     |   98 +-
 src/psaux/psblues.h     |   72 +-
 src/psaux/psconv.c      |   44 +-
 src/psaux/psconv.h      |   32 +-
 src/psaux/pserror.c     |   72 +-
 src/psaux/pserror.h     |   72 +-
 src/psaux/psfixed.h     |   72 +-
 src/psaux/psfont.c      |   72 +-
 src/psaux/psfont.h      |   72 +-
 src/psaux/psft.c        |   84 +-
 src/psaux/psft.h        |   72 +-
 src/psaux/psglue.h      |   72 +-
 src/psaux/pshints.c     |   84 +-
 src/psaux/pshints.h     |   72 +-
 src/psaux/psintrp.c     |  104 +-
 src/psaux/psintrp.h     |   72 +-
 src/psaux/psobjs.c      |  433 +++----
 src/psaux/psobjs.h      |   32 +-
 src/psaux/psread.c      |   72 +-
 src/psaux/psread.h      |   72 +-
 src/psaux/psstack.c     |   72 +-
 src/psaux/psstack.h     |   72 +-
 src/psaux/pstypes.h     |   72 +-
 src/psaux/t1cmap.c      |   32 +-
 src/psaux/t1cmap.h      |   32 +-
 src/psaux/t1decode.c    |  312 ++---
 src/psaux/t1decode.h    |   32 +-
 src/pshinter/pshalgo.c  |   36 +-
 src/pshinter/pshalgo.h  |   32 +-
 src/pshinter/pshglob.c  |   34 +-
 src/pshinter/pshglob.h  |   68 +-
 src/pshinter/pshinter.c |   32 +-
 src/pshinter/pshmod.c   |   32 +-
 src/pshinter/pshmod.h   |   32 +-
 src/pshinter/pshnterr.h |   46 +-
 src/pshinter/pshrec.c   |   32 +-
 src/pshinter/pshrec.h   |   56 +-
 src/psnames/psmodule.c  |   50 +-
 src/psnames/psmodule.h  |   32 +-
 src/psnames/psnamerr.h  |   48 +-
 src/psnames/psnames.c   |   32 +-
 src/psnames/pstables.h  |   44 +-
 src/raster/ftmisc.h     |   50 +-
 src/raster/ftraster.c   | 1031 ++++++++--------
 src/raster/ftraster.h   |   44 +-
 src/raster/ftrend1.c    |   32 +-
 src/raster/ftrend1.h    |   32 +-
 src/raster/raster.c     |   32 +-
 src/raster/rasterrs.h   |   48 +-
 src/sfnt/pngshim.c      |   34 +-
 src/sfnt/pngshim.h      |   34 +-
 src/sfnt/sfdriver.c     |   60 +-
 src/sfnt/sfdriver.h     |   32 +-
 src/sfnt/sferrors.h     |   46 +-
 src/sfnt/sfnt.c         |   32 +-
 src/sfnt/sfobjs.c       |  106 +-
 src/sfnt/sfobjs.h       |   32 +-
 src/sfnt/ttbdf.c        |   48 +-
 src/sfnt/ttbdf.h        |   32 +-
 src/sfnt/ttcmap.c       |  586 ++++-----
 src/sfnt/ttcmap.h       |   32 +-
 src/sfnt/ttcmapc.h      |   32 +-
 src/sfnt/ttcolr.c       |   68 +-
 src/sfnt/ttcolr.h       |   36 +-
 src/sfnt/ttkern.c       |   54 +-
 src/sfnt/ttkern.h       |   34 +-
 src/sfnt/ttload.c       |  555 +++++----
 src/sfnt/ttload.h       |   34 +-
 src/sfnt/ttmtx.c        |  175 +--
 src/sfnt/ttmtx.h        |   32 +-
 src/sfnt/ttpost.c       |  109 +-
 src/sfnt/ttpost.h       |   34 +-
 src/sfnt/ttsbit.c       |   58 +-
 src/sfnt/ttsbit.h       |   32 +-
 src/smooth/ftgrays.c    |  357 +++---
 src/smooth/ftgrays.h    |   48 +-
 src/smooth/ftsmerrs.h   |   48 +-
 src/smooth/ftsmooth.c   |   32 +-
 src/smooth/ftsmooth.h   |   32 +-
 src/smooth/smooth.c     |   32 +-
 src/truetype/truetype.c |   32 +-
 src/truetype/ttdriver.c |  170 +--
 src/truetype/ttdriver.h |   32 +-
 src/truetype/tterrors.h |   48 +-
 src/truetype/ttgload.c  |  252 ++--
 src/truetype/ttgload.h  |   32 +-
 src/truetype/ttgxvar.c  |  866 ++++++-------
 src/truetype/ttgxvar.h  |  312 ++---
 src/truetype/ttinterp.c | 3093 ++++++++++++++++++++++++-----------------------
 src/truetype/ttinterp.h |  166 +--
 src/truetype/ttobjs.c   |  452 +++----
 src/truetype/ttobjs.h   |  312 ++---
 src/truetype/ttpload.c  |  232 ++--
 src/truetype/ttpload.h  |   32 +-
 src/truetype/ttsubpix.c |   90 +-
 src/truetype/ttsubpix.h |   52 +-
 src/type1/t1afm.c       |   44 +-
 src/type1/t1afm.h       |   32 +-
 src/type1/t1driver.c    |  130 +-
 src/type1/t1driver.h    |   32 +-
 src/type1/t1errors.h    |   46 +-
 src/type1/t1gload.c     |   44 +-
 src/type1/t1gload.h     |   32 +-
 src/type1/t1load.c      |  184 +--
 src/type1/t1load.h      |   32 +-
 src/type1/t1objs.c      |  204 ++--
 src/type1/t1objs.h      |  132 +-
 src/type1/t1parse.c     |  108 +-
 src/type1/t1parse.h     |  101 +-
 src/type1/t1tokens.h    |   32 +-
 src/type1/type1.c       |   32 +-
 src/type42/t42drivr.c   |   80 +-
 src/type42/t42drivr.h   |   32 +-
 src/type42/t42error.h   |   46 +-
 src/type42/t42objs.c    |   61 +-
 src/type42/t42objs.h    |   32 +-
 src/type42/t42parse.c   |   70 +-
 src/type42/t42parse.h   |   32 +-
 src/type42/t42types.h   |   32 +-
 src/type42/type42.c     |   32 +-
 src/winfonts/fnterrs.h  |   48 +-
 src/winfonts/winfnt.c   |   56 +-
 src/winfonts/winfnt.h   |   34 +-
 326 files changed, 13518 insertions(+), 13134 deletions(-)

diff --git a/src/autofit/afangles.c b/src/autofit/afangles.c
index c65a3ae..f7b1c2c 100644
--- a/src/autofit/afangles.c
+++ b/src/autofit/afangles.c
@@ -1,28 +1,28 @@
-/***************************************************************************/
-/*                                                                         */
-/*  afangles.c                                                             */
-/*                                                                         */
-/*    Routines used to compute vector angles with limited accuracy         */
-/*    and very high speed.  It also contains sorting routines (body).      */
-/*                                                                         */
-/*  Copyright 2003-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afangles.c
+ *
+ *   Routines used to compute vector angles with limited accuracy
+ *   and very high speed.  It also contains sorting routines (body).
+ *
+ * Copyright 2003-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include "aftypes.h"
 
 
   /*
-   *  We are not using `af_angle_atan' anymore, but we keep the source
-   *  code below just in case...
+   * We are not using `af_angle_atan' anymore, but we keep the source
+   * code below just in case...
    */
 
 
@@ -30,16 +30,16 @@
 
 
   /*
-   *  The trick here is to realize that we don't need a very accurate angle
-   *  approximation.  We are going to use the result of `af_angle_atan' to
-   *  only compare the sign of angle differences, or check whether its
-   *  magnitude is very small.
+   * The trick here is to realize that we don't need a very accurate angle
+   * approximation.  We are going to use the result of `af_angle_atan' to
+   * only compare the sign of angle differences, or check whether its
+   * magnitude is very small.
    *
-   *  The approximation
+   * The approximation
    *
-   *    dy * PI / (|dx|+|dy|)
+   *   dy * PI / (|dx|+|dy|)
    *
-   *  should be enough, and much faster to compute.
+   * should be enough, and much faster to compute.
    */
   FT_LOCAL_DEF( AF_Angle )
   af_angle_atan( FT_Fixed  dx,
diff --git a/src/autofit/afangles.h b/src/autofit/afangles.h
index f33f9e1..18d7dae 100644
--- a/src/autofit/afangles.h
+++ b/src/autofit/afangles.h
@@ -1,7 +1,7 @@
 /*
- *  afangles.h
+ * afangles.h
  *
- *  This is a dummy file, used to please the build system.  It is never
- *  included by the auto-fitter sources.
+ * This is a dummy file, used to please the build system.  It is never
+ * included by the auto-fitter sources.
  *
  */
diff --git a/src/autofit/afblue.c b/src/autofit/afblue.c
index e4078fd..9b0ac13 100644
--- a/src/autofit/afblue.c
+++ b/src/autofit/afblue.c
@@ -1,22 +1,22 @@
 /* This file has been generated by the Perl script `afblue.pl', */
 /* using data from file `afblue.dat'.                           */
 
-/***************************************************************************/
-/*                                                                         */
-/*  afblue.c                                                               */
-/*                                                                         */
-/*    Auto-fitter data for blue strings (body).                            */
-/*                                                                         */
-/*  Copyright 2013-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afblue.c
+ *
+ *   Auto-fitter data for blue strings (body).
+ *
+ * Copyright 2013-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include "aftypes.h"
diff --git a/src/autofit/afblue.cin b/src/autofit/afblue.cin
index 4913e2e..b7437e3 100644
--- a/src/autofit/afblue.cin
+++ b/src/autofit/afblue.cin
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  afblue.c                                                               */
-/*                                                                         */
-/*    Auto-fitter data for blue strings (body).                            */
-/*                                                                         */
-/*  Copyright 2013-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afblue.c
+ *
+ *   Auto-fitter data for blue strings (body).
+ *
+ * Copyright 2013-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include "aftypes.h"
diff --git a/src/autofit/afblue.h b/src/autofit/afblue.h
index de31e25..1fbadbe 100644
--- a/src/autofit/afblue.h
+++ b/src/autofit/afblue.h
@@ -1,22 +1,22 @@
 /* This file has been generated by the Perl script `afblue.pl', */
 /* using data from file `afblue.dat'.                           */
 
-/***************************************************************************/
-/*                                                                         */
-/*  afblue.h                                                               */
-/*                                                                         */
-/*    Auto-fitter data for blue strings (specification).                   */
-/*                                                                         */
-/*  Copyright 2013-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afblue.h
+ *
+ *   Auto-fitter data for blue strings (specification).
+ *
+ * Copyright 2013-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef AFBLUE_H_
diff --git a/src/autofit/afblue.hin b/src/autofit/afblue.hin
index 682147c..3f1d311 100644
--- a/src/autofit/afblue.hin
+++ b/src/autofit/afblue.hin
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  afblue.h                                                               */
-/*                                                                         */
-/*    Auto-fitter data for blue strings (specification).                   */
-/*                                                                         */
-/*  Copyright 2013-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afblue.h
+ *
+ *   Auto-fitter data for blue strings (specification).
+ *
+ * Copyright 2013-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef AFBLUE_H_
diff --git a/src/autofit/afcjk.c b/src/autofit/afcjk.c
index e93e8a7..dc38153 100644
--- a/src/autofit/afcjk.c
+++ b/src/autofit/afcjk.c
@@ -1,24 +1,24 @@
-/***************************************************************************/
-/*                                                                         */
-/*  afcjk.c                                                                */
-/*                                                                         */
-/*    Auto-fitter hinting routines for CJK writing system (body).          */
-/*                                                                         */
-/*  Copyright 2006-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afcjk.c
+ *
+ *   Auto-fitter hinting routines for CJK writing system (body).
+ *
+ * Copyright 2006-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
   /*
-   *  The algorithm is based on akito's autohint patch, archived at
+   * The algorithm is based on akito's autohint patch, archived at
    *
-   *  
https://web.archive.org/web/20051219160454/http://www.kde.gr.jp:80/~akito/patch/freetype2/2.1.7/
+   * 
https://web.archive.org/web/20051219160454/http://www.kde.gr.jp:80/~akito/patch/freetype2/2.1.7/
    *
    */
 
@@ -43,12 +43,12 @@
 #endif
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_afcjk
 
@@ -198,10 +198,10 @@
           goto Exit;
 
         /*
-         *  We assume that the glyphs selected for the stem width
-         *  computation are `featureless' enough so that the linking
-         *  algorithm works fine without adjustments of its scoring
-         *  function.
+         * We assume that the glyphs selected for the stem width
+         * computation are `featureless' enough so that the linking
+         * algorithm works fine without adjustments of its scoring
+         * function.
          */
         af_latin_hints_link_segments( hints,
                                       0,
@@ -497,8 +497,8 @@
       if ( num_flats == 0 && num_fills == 0 )
       {
         /*
-         *  we couldn't find a single glyph to compute this blue zone,
-         *  we will simply ignore it then
+         * we couldn't find a single glyph to compute this blue zone,
+         * we will simply ignore it then
          */
         FT_TRACE5(( "  empty\n" ));
         continue;
@@ -914,11 +914,11 @@
     }
 
     /*
-     *  now compute the `serif' segments
+     * now compute the `serif' segments
      *
-     *  In Hanzi, some strokes are wider on one or both of the ends.
-     *  We either identify the stems on the ends as serifs or remove
-     *  the linkage, depending on the length of the stems.
+     * In Hanzi, some strokes are wider on one or both of the ends.
+     * We either identify the stems on the ends as serifs or remove
+     * the linkage, depending on the length of the stems.
      *
      */
 
@@ -1024,21 +1024,21 @@
     scale = ( dim == AF_DIMENSION_HORZ ) ? hints->x_scale
                                          : hints->y_scale;
 
-    /*********************************************************************/
-    /*                                                                   */
-    /* We begin by generating a sorted table of edges for the current    */
-    /* direction.  To do so, we simply scan each segment and try to find */
-    /* an edge in our table that corresponds to its position.            */
-    /*                                                                   */
-    /* If no edge is found, we create and insert a new edge in the       */
-    /* sorted table.  Otherwise, we simply add the segment to the edge's */
-    /* list which is then processed in the second step to compute the    */
-    /* edge's properties.                                                */
-    /*                                                                   */
-    /* Note that the edges table is sorted along the segment/edge        */
-    /* position.                                                         */
-    /*                                                                   */
-    /*********************************************************************/
+    /**********************************************************************
+     *
+     * We begin by generating a sorted table of edges for the current
+     * direction.  To do so, we simply scan each segment and try to find
+     * an edge in our table that corresponds to its position.
+     *
+     * If no edge is found, we create and insert a new edge in the
+     * sorted table.  Otherwise, we simply add the segment to the edge's
+     * list which is then processed in the second step to compute the
+     * edge's properties.
+     *
+     * Note that the edges table is sorted along the segment/edge
+     * position.
+     *
+     */
 
     edge_distance_threshold = FT_MulFix( laxis->edge_distance_threshold,
                                          scale );
@@ -1138,17 +1138,17 @@
       }
     }
 
-    /******************************************************************/
-    /*                                                                */
-    /* Good, we now compute each edge's properties according to the   */
-    /* segments found on its position.  Basically, these are          */
-    /*                                                                */
-    /*  - the edge's main direction                                   */
-    /*  - stem edge, serif edge or both (which defaults to stem then) */
-    /*  - rounded edge, straight or both (which defaults to straight) */
-    /*  - link for edge                                               */
-    /*                                                                */
-    /******************************************************************/
+    /*******************************************************************
+     *
+     * Good, we now compute each edge's properties according to the
+     * segments found on its position.  Basically, these are
+     *
+     * - the edge's main direction
+     * - stem edge, serif edge or both (which defaults to stem then)
+     * - rounded edge, straight or both (which defaults to straight)
+     * - link for edge
+     *
+     */
 
     /* first of all, set the `edge' field in each segment -- this is */
     /* required in order to compute edge links                       */
@@ -1388,8 +1388,8 @@
     af_glyph_hints_rescale( hints, (AF_StyleMetrics)metrics );
 
     /*
-     *  correct x_scale and y_scale when needed, since they may have
-     *  been modified af_cjk_scale_dim above
+     * correct x_scale and y_scale when needed, since they may have
+     * been modified af_cjk_scale_dim above
      */
     hints->x_scale = metrics->axis[AF_DIMENSION_HORZ].scale;
     hints->x_delta = metrics->axis[AF_DIMENSION_HORZ].delta;
@@ -1408,21 +1408,21 @@
     other_flags  = 0;
 
     /*
-     *  We snap the width of vertical stems for the monochrome and
-     *  horizontal LCD rendering targets only.
+     * We snap the width of vertical stems for the monochrome and
+     * horizontal LCD rendering targets only.
      */
     if ( mode == FT_RENDER_MODE_MONO || mode == FT_RENDER_MODE_LCD )
       other_flags |= AF_LATIN_HINTS_HORZ_SNAP;
 
     /*
-     *  We snap the width of horizontal stems for the monochrome and
-     *  vertical LCD rendering targets only.
+     * We snap the width of horizontal stems for the monochrome and
+     * vertical LCD rendering targets only.
      */
     if ( mode == FT_RENDER_MODE_MONO || mode == FT_RENDER_MODE_LCD_V )
       other_flags |= AF_LATIN_HINTS_VERT_SNAP;
 
     /*
-     *  We adjust stems to full pixels unless in `light' or `lcd' mode.
+     * We adjust stems to full pixels unless in `light' or `lcd' mode.
      */
     if ( mode != FT_RENDER_MODE_LIGHT && mode != FT_RENDER_MODE_LCD )
       other_flags |= AF_LATIN_HINTS_STEM_ADJUST;
@@ -2118,8 +2118,8 @@
       goto Exit;
 
     /*
-     *  now hint the remaining edges (serifs and single) in order
-     *  to complete our processing
+     * now hint the remaining edges (serifs and single) in order
+     * to complete our processing
      */
     for ( edge = edges; edge < edge_limit; edge++ )
     {
diff --git a/src/autofit/afcjk.h b/src/autofit/afcjk.h
index d229c0c..707271b 100644
--- a/src/autofit/afcjk.h
+++ b/src/autofit/afcjk.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  afcjk.h                                                                */
-/*                                                                         */
-/*    Auto-fitter hinting routines for CJK writing system (specification). */
-/*                                                                         */
-/*  Copyright 2006-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afcjk.h
+ *
+ *   Auto-fitter hinting routines for CJK writing system (specification).
+ *
+ * Copyright 2006-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef AFCJK_H_
@@ -41,9 +41,9 @@ FT_BEGIN_HEADER
 
 
   /*
-   *  CJK glyphs tend to fill the square.  So we have both vertical and
-   *  horizontal blue zones.  But some glyphs have flat bounding strokes that
-   *  leave some space between neighbour glyphs.
+   * CJK glyphs tend to fill the square.  So we have both vertical and
+   * horizontal blue zones.  But some glyphs have flat bounding strokes that
+   * leave some space between neighbour glyphs.
    */
 
 #define AF_CJK_IS_TOP_BLUE( b ) \
diff --git a/src/autofit/afcover.h b/src/autofit/afcover.h
index 6eeb8fc..47f3e47 100644
--- a/src/autofit/afcover.h
+++ b/src/autofit/afcover.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  afcover.h                                                              */
-/*                                                                         */
-/*    Auto-fitter coverages (specification only).                          */
-/*                                                                         */
-/*  Copyright 2013-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afcover.h
+ *
+ *   Auto-fitter coverages (specification only).
+ *
+ * Copyright 2013-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
   /* This header file can be included multiple times. */
diff --git a/src/autofit/afdummy.c b/src/autofit/afdummy.c
index f30c517..abd9509 100644
--- a/src/autofit/afdummy.c
+++ b/src/autofit/afdummy.c
@@ -1,20 +1,20 @@
-/***************************************************************************/
-/*                                                                         */
-/*  afdummy.c                                                              */
-/*                                                                         */
-/*    Auto-fitter dummy routines to be used if no hinting should be        */
-/*    performed (body).                                                    */
-/*                                                                         */
-/*  Copyright 2003-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afdummy.c
+ *
+ *   Auto-fitter dummy routines to be used if no hinting should be
+ *   performed (body).
+ *
+ * Copyright 2003-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include "afdummy.h"
diff --git a/src/autofit/afdummy.h b/src/autofit/afdummy.h
index b382acd..e01c49c 100644
--- a/src/autofit/afdummy.h
+++ b/src/autofit/afdummy.h
@@ -1,20 +1,20 @@
-/***************************************************************************/
-/*                                                                         */
-/*  afdummy.h                                                              */
-/*                                                                         */
-/*    Auto-fitter dummy routines to be used if no hinting should be        */
-/*    performed (specification).                                           */
-/*                                                                         */
-/*  Copyright 2003-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afdummy.h
+ *
+ *   Auto-fitter dummy routines to be used if no hinting should be
+ *   performed (specification).
+ *
+ * Copyright 2003-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef AFDUMMY_H_
diff --git a/src/autofit/aferrors.h b/src/autofit/aferrors.h
index e5de543..56e00cc 100644
--- a/src/autofit/aferrors.h
+++ b/src/autofit/aferrors.h
@@ -1,27 +1,27 @@
-/***************************************************************************/
-/*                                                                         */
-/*  aferrors.h                                                             */
-/*                                                                         */
-/*    Autofitter error codes (specification only).                         */
-/*                                                                         */
-/*  Copyright 2005-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This file is used to define the Autofitter error enumeration          */
-  /* constants.                                                            */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * aferrors.h
+ *
+ *   Autofitter error codes (specification only).
+ *
+ * Copyright 2005-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+
+  /**************************************************************************
+   *
+   * This file is used to define the Autofitter error enumeration
+   * constants.
+   *
+   */
 
 #ifndef AFERRORS_H_
 #define AFERRORS_H_
diff --git a/src/autofit/afglobal.c b/src/autofit/afglobal.c
index 28742b8..9e7764b 100644
--- a/src/autofit/afglobal.c
+++ b/src/autofit/afglobal.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  afglobal.c                                                             */
-/*                                                                         */
-/*    Auto-fitter routines to compute global hinting values (body).        */
-/*                                                                         */
-/*  Copyright 2003-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afglobal.c
+ *
+ *   Auto-fitter routines to compute global hinting values (body).
+ *
+ * Copyright 2003-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include "afglobal.h"
@@ -22,12 +22,12 @@
 #include FT_INTERNAL_DEBUG_H
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_afglobal
 
@@ -167,8 +167,8 @@
         continue;
 
       /*
-       *  Scan all Unicode points in the range and set the corresponding
-       *  glyph style index.
+       * Scan all Unicode points in the range and set the corresponding
+       * glyph style index.
        */
       if ( style_class->coverage == AF_COVERAGE_DEFAULT )
       {
@@ -265,8 +265,8 @@
 
   Exit:
     /*
-     *  By default, all uncovered glyphs are set to the fallback style.
-     *  XXX: Shouldn't we disable hinting or do something similar?
+     * By default, all uncovered glyphs are set to the fallback style.
+     * XXX: Shouldn't we disable hinting or do something similar?
      */
     if ( globals->module->fallback_style != AF_STYLE_UNASSIGNED )
     {
diff --git a/src/autofit/afglobal.h b/src/autofit/afglobal.h
index 489ed46..e26ea2f 100644
--- a/src/autofit/afglobal.h
+++ b/src/autofit/afglobal.h
@@ -1,20 +1,20 @@
-/***************************************************************************/
-/*                                                                         */
-/*  afglobal.h                                                             */
-/*                                                                         */
-/*    Auto-fitter routines to compute global hinting values                */
-/*    (specification).                                                     */
-/*                                                                         */
-/*  Copyright 2003-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afglobal.h
+ *
+ *   Auto-fitter routines to compute global hinting values
+ *   (specification).
+ *
+ * Copyright 2003-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef AFGLOBAL_H_
@@ -60,8 +60,8 @@ FT_BEGIN_HEADER
 
 
   /*
-   *  Default values and flags for both autofitter globals (found in
-   *  AF_ModuleRec) and face globals (in AF_FaceGlobalsRec).
+   * Default values and flags for both autofitter globals (found in
+   * AF_ModuleRec) and face globals (in AF_FaceGlobalsRec).
    */
 
   /* index of fallback style in `af_style_classes' */
@@ -98,8 +98,8 @@ FT_BEGIN_HEADER
 
 
   /*
-   *  Note that glyph_styles[] maps each glyph to an index into the
-   *  `af_style_classes' array.
+   * Note that glyph_styles[] maps each glyph to an index into the
+   * `af_style_classes' array.
    *
    */
   typedef struct  AF_FaceGlobalsRec_
@@ -140,8 +140,8 @@ FT_BEGIN_HEADER
 
 
   /*
-   *  model the global hints data for a given face, decomposed into
-   *  style-specific items
+   * model the global hints data for a given face, decomposed into
+   * style-specific items
    */
 
   FT_LOCAL( FT_Error )
diff --git a/src/autofit/afhints.c b/src/autofit/afhints.c
index 0666dbc..65f0e85 100644
--- a/src/autofit/afhints.c
+++ b/src/autofit/afhints.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  afhints.c                                                              */
-/*                                                                         */
-/*    Auto-fitter hinting routines (body).                                 */
-/*                                                                         */
-/*  Copyright 2003-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afhints.c
+ *
+ *   Auto-fitter hinting routines (body).
+ *
+ * Copyright 2003-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include "afhints.h"
@@ -22,12 +22,12 @@
 #include FT_INTERNAL_DEBUG_H
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_afhints
 
@@ -558,8 +558,8 @@
 
 
       /*
-       *  note: AF_DIMENSION_HORZ corresponds to _vertical_ edges
-       *        since they have a constant X coordinate.
+       * note: AF_DIMENSION_HORZ corresponds to _vertical_ edges
+       *       since they have a constant X coordinate.
        */
       if ( dimension == AF_DIMENSION_HORZ )
         AF_DUMP(( "Table of %s edges (1px=%.2fu, 10u=%.2fpx):\n",
@@ -681,8 +681,8 @@
     memory = hints->memory;
 
     /*
-     *  note that we don't need to free the segment and edge
-     *  buffers since they are really within the hints->points array
+     * note that we don't need to free the segment and edge
+     * buffers since they are really within the hints->points array
      */
     for ( dim = 0; dim < AF_DIMENSION_MAX; dim++ )
     {
@@ -776,9 +776,9 @@
     }
 
     /*
-     *  then reallocate the points arrays if necessary --
-     *  note that we reserve two additional point positions, used to
-     *  hint metrics appropriately
+     * then reallocate the points arrays if necessary --
+     * note that we reserve two additional point positions, used to
+     * hint metrics appropriately
      */
     new_max = (FT_UInt)( outline->n_points + 2 );
     old_max = (FT_UInt)hints->max_points;
@@ -918,15 +918,15 @@
 
       {
         /*
-         *  Compute directions of `in' and `out' vectors.
+         * Compute directions of `in' and `out' vectors.
          *
-         *  Note that distances between points that are very near to each
-         *  other are accumulated.  In other words, the auto-hinter either
-         *  prepends the small vectors between near points to the first
-         *  non-near vector, or the sum of small vector lengths exceeds a
-         *  threshold, thus `grouping' the small vectors.  All intermediate
-         *  points are tagged as weak; the directions are adjusted also to
-         *  be equal to the accumulated one.
+         * Note that distances between points that are very near to each
+         * other are accumulated.  In other words, the auto-hinter either
+         * prepends the small vectors between near points to the first
+         * non-near vector, or the sum of small vector lengths exceeds a
+         * threshold, thus `grouping' the small vectors.  All intermediate
+         * points are tagged as weak; the directions are adjusted also to
+         * be equal to the accumulated one.
          */
 
         FT_Int  near_limit2 = 2 * near_limit - 1;
@@ -956,12 +956,12 @@
             out_y = point->fy - prev->fy;
 
             /*
-             *  We use Taxicab metrics to measure the vector length.
+             * We use Taxicab metrics to measure the vector length.
              *
-             *  Note that the accumulated distances so far could have the
-             *  opposite direction of the distance measured here.  For this
-             *  reason we use `near_limit2' for the comparison to get a
-             *  non-near point even in the worst case.
+             * Note that the accumulated distances so far could have the
+             * opposite direction of the distance measured here.  For this
+             * reason we use `near_limit2' for the comparison to get a
+             * non-near point even in the worst case.
              */
             if ( FT_ABS( out_x ) + FT_ABS( out_y ) >= near_limit2 )
               break;
@@ -979,11 +979,11 @@
           curr = first;
 
           /*
-           *  We abuse the `u' and `v' fields to store index deltas to the
-           *  next and previous non-near point, respectively.
+           * We abuse the `u' and `v' fields to store index deltas to the
+           * next and previous non-near point, respectively.
            *
-           *  To avoid problems with not having non-near points, we point to
-           *  `first' by default as the next non-near point.
+           * To avoid problems with not having non-near points, we point to
+           * `first' by default as the next non-near point.
            *
            */
           curr->u  = (FT_Pos)( first - curr );
@@ -1035,12 +1035,12 @@
         }
 
         /*
-         *  The next step is to `simplify' an outline's topology so that we
-         *  can identify local extrema more reliably: A series of
-         *  non-horizontal or non-vertical vectors pointing into the same
-         *  quadrant are handled as a single, long vector.  From a
-         *  topological point of the view, the intermediate points are of no
-         *  interest and thus tagged as weak.
+         * The next step is to `simplify' an outline's topology so that we
+         * can identify local extrema more reliably: A series of
+         * non-horizontal or non-vertical vectors pointing into the same
+         * quadrant are handled as a single, long vector.  From a
+         * topological point of the view, the intermediate points are of no
+         * interest and thus tagged as weak.
          */
 
         for ( point = points; point < point_limit; point++ )
@@ -1080,9 +1080,9 @@
         }
 
         /*
-         *  Finally, check for remaining weak points.  Everything else not
-         *  collected in edges so far is then implicitly classified as strong
-         *  points.
+         * Finally, check for remaining weak points.  Everything else not
+         * collected in edges so far is then implicitly classified as strong
+         * points.
          */
 
         for ( point = points; point < point_limit; point++ )
diff --git a/src/autofit/afhints.h b/src/autofit/afhints.h
index 3326ebc..aee9d46 100644
--- a/src/autofit/afhints.h
+++ b/src/autofit/afhints.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  afhints.h                                                              */
-/*                                                                         */
-/*    Auto-fitter hinting routines (specification).                        */
-/*                                                                         */
-/*  Copyright 2003-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afhints.h
+ *
+ *   Auto-fitter hinting routines (specification).
+ *
+ * Copyright 2003-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef AFHINTS_H_
@@ -26,8 +26,8 @@
 FT_BEGIN_HEADER
 
   /*
-   *  The definition of outline glyph hints.  These are shared by all
-   *  writing system analysis routines (until now).
+   * The definition of outline glyph hints.  These are shared by all
+   * writing system analysis routines (until now).
    */
 
   typedef enum  AF_Dimension_
@@ -56,153 +56,153 @@ FT_BEGIN_HEADER
 
 
   /*
-   *  The following explanations are mostly taken from the article
+   * The following explanations are mostly taken from the article
    *
-   *    Real-Time Grid Fitting of Typographic Outlines
+   *   Real-Time Grid Fitting of Typographic Outlines
    *
-   *  by David Turner and Werner Lemberg
+   * by David Turner and Werner Lemberg
    *
-   *    https://www.tug.org/TUGboat/Articles/tb24-3/lemberg.pdf
+   *   https://www.tug.org/TUGboat/Articles/tb24-3/lemberg.pdf
    *
-   *  with appropriate updates.
+   * with appropriate updates.
    *
    *
-   *  Segments
+   * Segments
    *
-   *    `af_{cjk,latin,...}_hints_compute_segments' are the functions to
-   *    find segments in an outline.
+   *   `af_{cjk,latin,...}_hints_compute_segments' are the functions to
+   *   find segments in an outline.
    *
-   *    A segment is a series of at least two consecutive points that are
-   *    approximately aligned along a coordinate axis.  The analysis to do
-   *    so is specific to a writing system.
+   *   A segment is a series of at least two consecutive points that are
+   *   approximately aligned along a coordinate axis.  The analysis to do
+   *   so is specific to a writing system.
    *
    *
-   *  Edges
+   * Edges
    *
-   *    `af_{cjk,latin,...}_hints_compute_edges' are the functions to find
-   *    edges.
+   *   `af_{cjk,latin,...}_hints_compute_edges' are the functions to find
+   *   edges.
    *
-   *    As soon as segments are defined, the auto-hinter groups them into
-   *    edges.  An edge corresponds to a single position on the main
-   *    dimension that collects one or more segments (allowing for a small
-   *    threshold).
+   *   As soon as segments are defined, the auto-hinter groups them into
+   *   edges.  An edge corresponds to a single position on the main
+   *   dimension that collects one or more segments (allowing for a small
+   *   threshold).
    *
-   *    As an example, the `latin' writing system first tries to grid-fit
-   *    edges, then to align segments on the edges unless it detects that
-   *    they form a serif.
+   *   As an example, the `latin' writing system first tries to grid-fit
+   *   edges, then to align segments on the edges unless it detects that
+   *   they form a serif.
    *
    *
-   *                      A          H
-   *                       |        |
-   *                       |        |
-   *                       |        |
-   *                       |        |
-   *         C             |        |             F
-   *          +------<-----+        +-----<------+
-   *          |             B      G             |
-   *          |                                  |
-   *          |                                  |
-   *          +--------------->------------------+
-   *         D                                    E
+   *                     A          H
+   *                      |        |
+   *                      |        |
+   *                      |        |
+   *                      |        |
+   *        C             |        |             F
+   *         +------<-----+        +-----<------+
+   *         |             B      G             |
+   *         |                                  |
+   *         |                                  |
+   *         +--------------->------------------+
+   *        D                                    E
    *
    *
-   *  Stems
+   * Stems
    *
-   *    Stems are detected by `af_{cjk,latin,...}_hint_edges'.
+   *   Stems are detected by `af_{cjk,latin,...}_hint_edges'.
    *
-   *    Segments need to be `linked' to other ones in order to detect stems.
-   *    A stem is made of two segments that face each other in opposite
-   *    directions and that are sufficiently close to each other.  Using
-   *    vocabulary from the TrueType specification, stem segments form a
-   *    `black distance'.
+   *   Segments need to be `linked' to other ones in order to detect stems.
+   *   A stem is made of two segments that face each other in opposite
+   *   directions and that are sufficiently close to each other.  Using
+   *   vocabulary from the TrueType specification, stem segments form a
+   *   `black distance'.
    *
-   *    In the above ASCII drawing, the horizontal segments are BC, DE, and
-   *    FG; the vertical segments are AB, CD, EF, and GH.
+   *   In the above ASCII drawing, the horizontal segments are BC, DE, and
+   *   FG; the vertical segments are AB, CD, EF, and GH.
    *
-   *    Each segment has at most one `best' candidate to form a black
-   *    distance, or no candidate at all.  Notice that two distinct segments
-   *    can have the same candidate, which frequently means a serif.
+   *   Each segment has at most one `best' candidate to form a black
+   *   distance, or no candidate at all.  Notice that two distinct segments
+   *   can have the same candidate, which frequently means a serif.
    *
-   *    A stem is recognized by the following condition:
+   *   A stem is recognized by the following condition:
    *
-   *      best segment_1 = segment_2 && best segment_2 = segment_1
+   *     best segment_1 = segment_2 && best segment_2 = segment_1
    *
-   *    The best candidate is stored in field `link' in structure
-   *    `AF_Segment'.
+   *   The best candidate is stored in field `link' in structure
+   *   `AF_Segment'.
    *
-   *    In the above ASCII drawing, the best candidate for both AB and CD is
-   *    GH, while the best candidate for GH is AB.  Similarly, the best
-   *    candidate for EF and GH is AB, while the best candidate for AB is
-   *    GH.
+   *   In the above ASCII drawing, the best candidate for both AB and CD is
+   *   GH, while the best candidate for GH is AB.  Similarly, the best
+   *   candidate for EF and GH is AB, while the best candidate for AB is
+   *   GH.
    *
-   *    The detection and handling of stems is dependent on the writing
-   *    system.
+   *   The detection and handling of stems is dependent on the writing
+   *   system.
    *
    *
-   *  Serifs
+   * Serifs
    *
-   *    Serifs are detected by `af_{cjk,latin,...}_hint_edges'.
+   *   Serifs are detected by `af_{cjk,latin,...}_hint_edges'.
    *
-   *    In comparison to a stem, a serif (as handled by the auto-hinter
-   *    module that takes care of the `latin' writing system) has
+   *   In comparison to a stem, a serif (as handled by the auto-hinter
+   *   module that takes care of the `latin' writing system) has
    *
-   *      best segment_1 = segment_2 && best segment_2 != segment_1
+   *     best segment_1 = segment_2 && best segment_2 != segment_1
    *
-   *    where segment_1 corresponds to the serif segment (CD and EF in the
-   *    above ASCII drawing).
+   *   where segment_1 corresponds to the serif segment (CD and EF in the
+   *   above ASCII drawing).
    *
-   *    The best candidate is stored in field `serif' in structure
-   *    `AF_Segment' (and `link' is set to NULL).
+   *   The best candidate is stored in field `serif' in structure
+   *   `AF_Segment' (and `link' is set to NULL).
    *
    *
-   *  Touched points
+   * Touched points
    *
-   *    A point is called `touched' if it has been processed somehow by the
-   *    auto-hinter.  It basically means that it shouldn't be moved again
-   *    (or moved only under certain constraints to preserve the already
-   *    applied processing).
+   *   A point is called `touched' if it has been processed somehow by the
+   *   auto-hinter.  It basically means that it shouldn't be moved again
+   *   (or moved only under certain constraints to preserve the already
+   *   applied processing).
    *
    *
-   *  Flat and round segments
+   * Flat and round segments
    *
-   *    Segments are `round' or `flat', depending on the series of points
-   *    that define them.  A segment is round if the next and previous point
-   *    of an extremum (which can be either a single point or sequence of
-   *    points) are both conic or cubic control points.  Otherwise, a
-   *    segment with an extremum is flat.
+   *   Segments are `round' or `flat', depending on the series of points
+   *   that define them.  A segment is round if the next and previous point
+   *   of an extremum (which can be either a single point or sequence of
+   *   points) are both conic or cubic control points.  Otherwise, a
+   *   segment with an extremum is flat.
    *
    *
-   *  Strong Points
+   * Strong Points
    *
-   *    Experience has shown that points not part of an edge need to be
-   *    interpolated linearly between their two closest edges, even if these
-   *    are not part of the contour of those particular points.  Typical
-   *    candidates for this are
+   *   Experience has shown that points not part of an edge need to be
+   *   interpolated linearly between their two closest edges, even if these
+   *   are not part of the contour of those particular points.  Typical
+   *   candidates for this are
    *
-   *    - angle points (i.e., points where the `in' and `out' direction
-   *      differ greatly)
+   *   - angle points (i.e., points where the `in' and `out' direction
+   *     differ greatly)
    *
-   *    - inflection points (i.e., where the `in' and `out' angles are the
-   *      same, but the curvature changes sign) [currently, such points
-   *      aren't handled specially in the auto-hinter]
+   *   - inflection points (i.e., where the `in' and `out' angles are the
+   *     same, but the curvature changes sign) [currently, such points
+   *     aren't handled specially in the auto-hinter]
    *
-   *    `af_glyph_hints_align_strong_points' is the function that takes
-   *    care of such situations; it is equivalent to the TrueType `IP'
-   *    hinting instruction.
+   *   `af_glyph_hints_align_strong_points' is the function that takes
+   *   care of such situations; it is equivalent to the TrueType `IP'
+   *   hinting instruction.
    *
    *
-   *  Weak Points
+   * Weak Points
    *
-   *    Other points in the outline must be interpolated using the
-   *    coordinates of their previous and next unfitted contour neighbours.
-   *    These are called `weak points' and are touched by the function
-   *    `af_glyph_hints_align_weak_points', equivalent to the TrueType `IUP'
-   *    hinting instruction.  Typical candidates are control points and
-   *    points on the contour without a major direction.
+   *   Other points in the outline must be interpolated using the
+   *   coordinates of their previous and next unfitted contour neighbours.
+   *   These are called `weak points' and are touched by the function
+   *   `af_glyph_hints_align_weak_points', equivalent to the TrueType `IUP'
+   *   hinting instruction.  Typical candidates are control points and
+   *   points on the contour without a major direction.
    *
-   *    The major effect is to reduce possible distortion caused by
-   *    alignment of edges and strong points, thus weak points are processed
-   *    after strong points.
+   *   The major effect is to reduce possible distortion caused by
+   *   alignment of edges and strong points, thus weak points are processed
+   *   after strong points.
    */
 
 
diff --git a/src/autofit/afindic.c b/src/autofit/afindic.c
index dfbea5f..45c1a10 100644
--- a/src/autofit/afindic.c
+++ b/src/autofit/afindic.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  afindic.c                                                              */
-/*                                                                         */
-/*    Auto-fitter hinting routines for Indic writing system (body).        */
-/*                                                                         */
-/*  Copyright 2007-2018 by                                                 */
-/*  Rahul Bhalerao <address@hidden>, <address@hidden>.    */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afindic.c
+ *
+ *   Auto-fitter hinting routines for Indic writing system (body).
+ *
+ * Copyright 2007-2018 by
+ * Rahul Bhalerao <address@hidden>, <address@hidden>.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include "aftypes.h"
diff --git a/src/autofit/afindic.h b/src/autofit/afindic.h
index 5688738..94ff764 100644
--- a/src/autofit/afindic.h
+++ b/src/autofit/afindic.h
@@ -1,20 +1,20 @@
-/***************************************************************************/
-/*                                                                         */
-/*  afindic.h                                                              */
-/*                                                                         */
-/*    Auto-fitter hinting routines for Indic writing system                */
-/*    (specification).                                                     */
-/*                                                                         */
-/*  Copyright 2007-2018 by                                                 */
-/*  Rahul Bhalerao <address@hidden>, <address@hidden>.    */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afindic.h
+ *
+ *   Auto-fitter hinting routines for Indic writing system
+ *   (specification).
+ *
+ * Copyright 2007-2018 by
+ * Rahul Bhalerao <address@hidden>, <address@hidden>.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef AFINDIC_H_
diff --git a/src/autofit/aflatin.c b/src/autofit/aflatin.c
index 9b2d2b0..a90fc1c 100644
--- a/src/autofit/aflatin.c
+++ b/src/autofit/aflatin.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  aflatin.c                                                              */
-/*                                                                         */
-/*    Auto-fitter hinting routines for latin writing system (body).        */
-/*                                                                         */
-/*  Copyright 2003-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * aflatin.c
+ *
+ *   Auto-fitter hinting routines for latin writing system (body).
+ *
+ * Copyright 2003-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -30,12 +30,12 @@
 #endif
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_aflatin
 
@@ -191,10 +191,10 @@
           goto Exit;
 
         /*
-         *  We assume that the glyphs selected for the stem width
-         *  computation are `featureless' enough so that the linking
-         *  algorithm works fine without adjustments of its scoring
-         *  function.
+         * We assume that the glyphs selected for the stem width
+         * computation are `featureless' enough so that the linking
+         * algorithm works fine without adjustments of its scoring
+         * function.
          */
         af_latin_hints_link_segments( hints,
                                       0,
@@ -898,8 +898,8 @@
       if ( num_flats == 0 && num_rounds == 0 )
       {
         /*
-         *  we couldn't find a single glyph to compute this blue zone,
-         *  we will simply ignore it then
+         * we couldn't find a single glyph to compute this blue zone,
+         * we will simply ignore it then
          */
         FT_TRACE5(( "  empty\n" ));
         continue;
@@ -1991,17 +1991,17 @@
           if ( len >= len_threshold )
           {
             /*
-             *  The score is the sum of two demerits indicating the
-             *  `badness' of a fit, measured along the segments' main axis
-             *  and orthogonal to it, respectively.
+             * The score is the sum of two demerits indicating the
+             * `badness' of a fit, measured along the segments' main axis
+             * and orthogonal to it, respectively.
              *
-             *  o The less overlapping along the main axis, the worse it
-             *    is, causing a larger demerit.
+             * - The less overlapping along the main axis, the worse it
+             *   is, causing a larger demerit.
              *
-             *  o The nearer the orthogonal distance to a stem width, the
-             *    better it is, causing a smaller demerit.  For simplicity,
-             *    however, we only increase the demerit for values that
-             *    exceed the largest stem width.
+             * - The nearer the orthogonal distance to a stem width, the
+             *   better it is, causing a smaller demerit.  For simplicity,
+             *   however, we only increase the demerit for values that
+             *   exceed the largest stem width.
              */
 
             FT_Pos  dist = pos2 - pos1;
@@ -2105,9 +2105,9 @@
       top_to_bottom_hinting = script_class->top_to_bottom_hinting;
 
     /*
-     *  We ignore all segments that are less than 1 pixel in length
-     *  to avoid many problems with serif fonts.  We compute the
-     *  corresponding threshold in font units.
+     * We ignore all segments that are less than 1 pixel in length
+     * to avoid many problems with serif fonts.  We compute the
+     * corresponding threshold in font units.
      */
     if ( dim == AF_DIMENSION_HORZ )
       segment_length_threshold = FT_DivFix( 64, hints->y_scale );
@@ -2115,26 +2115,26 @@
       segment_length_threshold = 0;
 
     /*
-     *  Similarly, we ignore segments that have a width delta
-     *  larger than 0.5px (i.e., a width larger than 1px).
+     * Similarly, we ignore segments that have a width delta
+     * larger than 0.5px (i.e., a width larger than 1px).
      */
     segment_width_threshold = FT_DivFix( 32, scale );
 
-    /*********************************************************************/
-    /*                                                                   */
-    /* We begin by generating a sorted table of edges for the current    */
-    /* direction.  To do so, we simply scan each segment and try to find */
-    /* an edge in our table that corresponds to its position.            */
-    /*                                                                   */
-    /* If no edge is found, we create and insert a new edge in the       */
-    /* sorted table.  Otherwise, we simply add the segment to the edge's */
-    /* list which gets processed in the second step to compute the       */
-    /* edge's properties.                                                */
-    /*                                                                   */
-    /* Note that the table of edges is sorted along the segment/edge     */
-    /* position.                                                         */
-    /*                                                                   */
-    /*********************************************************************/
+    /**********************************************************************
+     *
+     * We begin by generating a sorted table of edges for the current
+     * direction.  To do so, we simply scan each segment and try to find
+     * an edge in our table that corresponds to its position.
+     *
+     * If no edge is found, we create and insert a new edge in the
+     * sorted table.  Otherwise, we simply add the segment to the edge's
+     * list which gets processed in the second step to compute the
+     * edge's properties.
+     *
+     * Note that the table of edges is sorted along the segment/edge
+     * position.
+     *
+     */
 
     /* assure that edge distance threshold is at most 0.25px */
     edge_distance_threshold = FT_MulFix( laxis->edge_distance_threshold,
@@ -2256,17 +2256,17 @@
     }
 
 
-    /******************************************************************/
-    /*                                                                */
-    /* Good, we now compute each edge's properties according to the   */
-    /* segments found on its position.  Basically, these are          */
-    /*                                                                */
-    /*  - the edge's main direction                                   */
-    /*  - stem edge, serif edge or both (which defaults to stem then) */
-    /*  - rounded edge, straight or both (which defaults to straight) */
-    /*  - link for edge                                               */
-    /*                                                                */
-    /******************************************************************/
+    /*******************************************************************
+     *
+     * Good, we now compute each edge's properties according to the
+     * segments found on its position.  Basically, these are
+     *
+     * - the edge's main direction
+     * - stem edge, serif edge or both (which defaults to stem then)
+     * - rounded edge, straight or both (which defaults to straight)
+     * - link for edge
+     *
+     */
 
     /* first of all, set the `edge' field in each segment -- this is */
     /* required in order to compute edge links                       */
@@ -2565,8 +2565,8 @@
     af_glyph_hints_rescale( hints, (AF_StyleMetrics)metrics );
 
     /*
-     *  correct x_scale and y_scale if needed, since they may have
-     *  been modified by `af_latin_metrics_scale_dim' above
+     * correct x_scale and y_scale if needed, since they may have
+     * been modified by `af_latin_metrics_scale_dim' above
      */
     hints->x_scale = metrics->axis[AF_DIMENSION_HORZ].scale;
     hints->x_delta = metrics->axis[AF_DIMENSION_HORZ].delta;
@@ -2585,21 +2585,21 @@
     other_flags  = 0;
 
     /*
-     *  We snap the width of vertical stems for the monochrome and
-     *  horizontal LCD rendering targets only.
+     * We snap the width of vertical stems for the monochrome and
+     * horizontal LCD rendering targets only.
      */
     if ( mode == FT_RENDER_MODE_MONO || mode == FT_RENDER_MODE_LCD )
       other_flags |= AF_LATIN_HINTS_HORZ_SNAP;
 
     /*
-     *  We snap the width of horizontal stems for the monochrome and
-     *  vertical LCD rendering targets only.
+     * We snap the width of horizontal stems for the monochrome and
+     * vertical LCD rendering targets only.
      */
     if ( mode == FT_RENDER_MODE_MONO || mode == FT_RENDER_MODE_LCD_V )
       other_flags |= AF_LATIN_HINTS_VERT_SNAP;
 
     /*
-     *  We adjust stems to full pixels unless in `light' or `lcd' mode.
+     * We adjust stems to full pixels unless in `light' or `lcd' mode.
      */
     if ( mode != FT_RENDER_MODE_LIGHT && mode != FT_RENDER_MODE_LCD )
       other_flags |= AF_LATIN_HINTS_STEM_ADJUST;
@@ -2608,11 +2608,11 @@
       other_flags |= AF_LATIN_HINTS_MONO;
 
     /*
-     *  In `light' or `lcd' mode we disable horizontal hinting completely.
-     *  We also do it if the face is italic.
+     * In `light' or `lcd' mode we disable horizontal hinting completely.
+     * We also do it if the face is italic.
      *
-     *  However, if warping is enabled (which only works in `light' hinting
-     *  mode), advance widths get adjusted, too.
+     * However, if warping is enabled (which only works in `light' hinting
+     * mode), advance widths get adjusted, too.
      */
     if ( mode == FT_RENDER_MODE_LIGHT || mode == FT_RENDER_MODE_LCD ||
          ( face->style_flags & FT_STYLE_FLAG_ITALIC ) != 0          )
@@ -2990,12 +2990,12 @@
         edge2 = edge->link;
 
         /*
-         *  If a stem contains both a neutral and a non-neutral blue zone,
-         *  skip the neutral one.  Otherwise, outlines with different
-         *  directions might be incorrectly aligned at the same vertical
-         *  position.
+         * If a stem contains both a neutral and a non-neutral blue zone,
+         * skip the neutral one.  Otherwise, outlines with different
+         * directions might be incorrectly aligned at the same vertical
+         * position.
          *
-         *  If we have two neutral blue zones, skip one of them.
+         * If we have two neutral blue zones, skip one of them.
          *
          */
         if ( edge->blue_edge && edge2 && edge2->blue_edge )
@@ -3358,8 +3358,8 @@
     if ( has_serifs || !anchor )
     {
       /*
-       *  now hint the remaining edges (serifs and single) in order
-       *  to complete our processing
+       * now hint the remaining edges (serifs and single) in order
+       * to complete our processing
        */
       for ( edge = edges; edge < edge_limit; edge++ )
       {
diff --git a/src/autofit/aflatin.h b/src/autofit/aflatin.h
index 432cccc..6b429bd 100644
--- a/src/autofit/aflatin.h
+++ b/src/autofit/aflatin.h
@@ -1,20 +1,20 @@
-/***************************************************************************/
-/*                                                                         */
-/*  aflatin.h                                                              */
-/*                                                                         */
-/*    Auto-fitter hinting routines for latin writing system                */
-/*    (specification).                                                     */
-/*                                                                         */
-/*  Copyright 2003-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * aflatin.h
+ *
+ *   Auto-fitter hinting routines for latin writing system
+ *   (specification).
+ *
+ * Copyright 2003-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef AFLATIN_H_
@@ -45,9 +45,9 @@ FT_BEGIN_HEADER
 
 
   /*
-   *  The following declarations could be embedded in the file `aflatin.c';
-   *  they have been made semi-public to allow alternate writing system
-   *  hinters to re-use some of them.
+   * The following declarations could be embedded in the file `aflatin.c';
+   * they have been made semi-public to allow alternate writing system
+   * hinters to re-use some of them.
    */
 
 
@@ -161,8 +161,8 @@ FT_BEGIN_HEADER
 
 
   /*
-   *  The next functions shouldn't normally be exported.  However, other
-   *  writing systems might like to use these functions as-is.
+   * The next functions shouldn't normally be exported.  However, other
+   * writing systems might like to use these functions as-is.
    */
   FT_LOCAL( FT_Error )
   af_latin_hints_compute_segments( AF_GlyphHints  hints,
diff --git a/src/autofit/aflatin2.c b/src/autofit/aflatin2.c
index 5c71378..c5ce043 100644
--- a/src/autofit/aflatin2.c
+++ b/src/autofit/aflatin2.c
@@ -3,22 +3,22 @@
 /*            marked as experimental.                                    */
 
 
-/***************************************************************************/
-/*                                                                         */
-/*  aflatin2.c                                                             */
-/*                                                                         */
-/*    Auto-fitter hinting routines for latin writing system (body).        */
-/*                                                                         */
-/*  Copyright 2003-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * aflatin2.c
+ *
+ *   Auto-fitter hinting routines for latin writing system (body).
+ *
+ * Copyright 2003-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include FT_ADVANCES_H
@@ -37,12 +37,12 @@
 #endif
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_aflatin2
 
@@ -358,8 +358,8 @@
       if ( num_flats == 0 && num_rounds == 0 )
       {
         /*
-         *  we couldn't find a single glyph to compute this blue zone,
-         *  we will simply ignore it then
+         * we couldn't find a single glyph to compute this blue zone,
+         * we will simply ignore it then
          */
         FT_TRACE5(( "  empty\n" ));
         continue;
@@ -1108,13 +1108,13 @@
                                           : AF_DIR_RIGHT;
 
     /*
-     *  We want to ignore very small (mostly serif) segments, we do that
-     *  by ignoring those that whose length is less than a given fraction
-     *  of the standard width. If there is no standard width, we ignore
-     *  those that are less than a given size in pixels
+     * We want to ignore very small (mostly serif) segments, we do that
+     * by ignoring those that whose length is less than a given fraction
+     * of the standard width. If there is no standard width, we ignore
+     * those that are less than a given size in pixels
      *
-     *  also, unlink serif segments that are linked to segments farther
-     *  than 50% of the standard width
+     * also, unlink serif segments that are linked to segments farther
+     * than 50% of the standard width
      */
     if ( dim == AF_DIMENSION_HORZ )
     {
@@ -1126,21 +1126,21 @@
     else
       segment_length_threshold = 0;
 
-    /*********************************************************************/
-    /*                                                                   */
-    /* We will begin by generating a sorted table of edges for the       */
-    /* current direction.  To do so, we simply scan each segment and try */
-    /* to find an edge in our table that corresponds to its position.    */
-    /*                                                                   */
-    /* If no edge is found, we create and insert a new edge in the       */
-    /* sorted table.  Otherwise, we simply add the segment to the edge's */
-    /* list which will be processed in the second step to compute the    */
-    /* edge's properties.                                                */
-    /*                                                                   */
-    /* Note that the edges table is sorted along the segment/edge        */
-    /* position.                                                         */
-    /*                                                                   */
-    /*********************************************************************/
+    /**********************************************************************
+     *
+     * We will begin by generating a sorted table of edges for the
+     * current direction.  To do so, we simply scan each segment and try
+     * to find an edge in our table that corresponds to its position.
+     *
+     * If no edge is found, we create and insert a new edge in the
+     * sorted table.  Otherwise, we simply add the segment to the edge's
+     * list which will be processed in the second step to compute the
+     * edge's properties.
+     *
+     * Note that the edges table is sorted along the segment/edge
+     * position.
+     *
+     */
 
     edge_distance_threshold = FT_MulFix( laxis->edge_distance_threshold,
                                          scale );
@@ -1230,17 +1230,17 @@
     }
 
 
-    /*********************************************************************/
-    /*                                                                   */
-    /* Good, we will now compute each edge's properties according to     */
-    /* segments found on its position.  Basically, these are:            */
-    /*                                                                   */
-    /*  - edge's main direction                                          */
-    /*  - stem edge, serif edge or both (which defaults to stem then)    */
-    /*  - rounded edge, straight or both (which defaults to straight)    */
-    /*  - link for edge                                                  */
-    /*                                                                   */
-    /*********************************************************************/
+    /**********************************************************************
+     *
+     * Good, we will now compute each edge's properties according to
+     * segments found on its position.  Basically, these are:
+     *
+     * - edge's main direction
+     * - stem edge, serif edge or both (which defaults to stem then)
+     * - rounded edge, straight or both (which defaults to straight)
+     * - link for edge
+     *
+     */
 
     /* first of all, set the `edge' field in each segment -- this is */
     /* required in order to compute edge links                       */
@@ -1524,8 +1524,8 @@
     af_glyph_hints_rescale( hints, (AF_StyleMetrics)metrics );
 
     /*
-     *  correct x_scale and y_scale if needed, since they may have
-     *  been modified `af_latin2_metrics_scale_dim' above
+     * correct x_scale and y_scale if needed, since they may have
+     * been modified `af_latin2_metrics_scale_dim' above
      */
     hints->x_scale = metrics->axis[AF_DIMENSION_HORZ].scale;
     hints->x_delta = metrics->axis[AF_DIMENSION_HORZ].delta;
@@ -1544,21 +1544,21 @@
     other_flags  = 0;
 
     /*
-     *  We snap the width of vertical stems for the monochrome and
-     *  horizontal LCD rendering targets only.
+     * We snap the width of vertical stems for the monochrome and
+     * horizontal LCD rendering targets only.
      */
     if ( mode == FT_RENDER_MODE_MONO || mode == FT_RENDER_MODE_LCD )
       other_flags |= AF_LATIN_HINTS_HORZ_SNAP;
 
     /*
-     *  We snap the width of horizontal stems for the monochrome and
-     *  vertical LCD rendering targets only.
+     * We snap the width of horizontal stems for the monochrome and
+     * vertical LCD rendering targets only.
      */
     if ( mode == FT_RENDER_MODE_MONO || mode == FT_RENDER_MODE_LCD_V )
       other_flags |= AF_LATIN_HINTS_VERT_SNAP;
 
     /*
-     *  We adjust stems to full pixels unless in `light' or `lcd' mode.
+     * We adjust stems to full pixels unless in `light' or `lcd' mode.
      */
     if ( mode != FT_RENDER_MODE_LIGHT && mode != FT_RENDER_MODE_LCD )
       other_flags |= AF_LATIN_HINTS_STEM_ADJUST;
@@ -1567,8 +1567,8 @@
       other_flags |= AF_LATIN_HINTS_MONO;
 
     /*
-     *  In `light' or `lcd' mode we disable horizontal hinting completely.
-     *  We also do it if the face is italic.
+     * In `light' or `lcd' mode we disable horizontal hinting completely.
+     * We also do it if the face is italic.
      */
     if ( mode == FT_RENDER_MODE_LIGHT || mode == FT_RENDER_MODE_LCD ||
          ( face->style_flags & FT_STYLE_FLAG_ITALIC ) != 0          )
@@ -2233,8 +2233,8 @@
     if ( has_serifs || !anchor )
     {
       /*
-       *  now hint the remaining edges (serifs and single) in order
-       *  to complete our processing
+       * now hint the remaining edges (serifs and single) in order
+       * to complete our processing
        */
       for ( edge = edges; edge < edge_limit; edge++ )
       {
diff --git a/src/autofit/aflatin2.h b/src/autofit/aflatin2.h
index 0129dc7..e8e7382 100644
--- a/src/autofit/aflatin2.h
+++ b/src/autofit/aflatin2.h
@@ -3,23 +3,23 @@
 /*            marked as experimental.                                    */
 
 
-/***************************************************************************/
-/*                                                                         */
-/*  aflatin2.h                                                             */
-/*                                                                         */
-/*    Auto-fitter hinting routines for latin writing system                */
-/*    (specification).                                                     */
-/*                                                                         */
-/*  Copyright 2003-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * aflatin2.h
+ *
+ *   Auto-fitter hinting routines for latin writing system
+ *   (specification).
+ *
+ * Copyright 2003-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef AFLATIN2_H_
diff --git a/src/autofit/afloader.c b/src/autofit/afloader.c
index 06cf8c3..301f377 100644
--- a/src/autofit/afloader.c
+++ b/src/autofit/afloader.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  afloader.c                                                             */
-/*                                                                         */
-/*    Auto-fitter glyph loading routines (body).                           */
-/*                                                                         */
-/*  Copyright 2003-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afloader.c
+ *
+ *   Auto-fitter glyph loading routines (body).
+ *
+ * Copyright 2003-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include "afglobal.h"
@@ -118,9 +118,9 @@
     }
 
     /*
-     *  We depend on the writing system (script analyzers) to supply
-     *  standard widths for the script of the glyph we are looking at.  If
-     *  it can't deliver, stem darkening is disabled.
+     * We depend on the writing system (script analyzers) to supply
+     * standard widths for the script of the glyph we are looking at.  If
+     * it can't deliver, stem darkening is disabled.
      */
     writing_system_class =
       af_writing_system_classes[style_metrics->style_class->writing_system];
@@ -173,22 +173,22 @@
       globals->darken_y                  = af_fixedToInt( darken_y );
 
       /*
-       *  Scale outlines down on the Y-axis to keep them inside their blue
-       *  zones.  The stronger the emboldening, the stronger the downscaling
-       *  (plus heuristical padding to prevent outlines still falling out
-       *  their zones due to rounding).
+       * Scale outlines down on the Y-axis to keep them inside their blue
+       * zones.  The stronger the emboldening, the stronger the downscaling
+       * (plus heuristical padding to prevent outlines still falling out
+       * their zones due to rounding).
        *
-       *  Reason: `FT_Outline_Embolden' works by shifting the rightmost
-       *  points of stems farther to the right, and topmost points farther
-       *  up.  This positions points on the Y-axis outside their
-       *  pre-computed blue zones and leads to distortion when applying the
-       *  hints in the code further below.  Code outside this emboldening
-       *  block doesn't know we are presenting it with modified outlines the
-       *  analyzer didn't see!
+       * Reason: `FT_Outline_Embolden' works by shifting the rightmost
+       * points of stems farther to the right, and topmost points farther
+       * up.  This positions points on the Y-axis outside their
+       * pre-computed blue zones and leads to distortion when applying the
+       * hints in the code further below.  Code outside this emboldening
+       * block doesn't know we are presenting it with modified outlines the
+       * analyzer didn't see!
        *
-       *  An unfortunate side effect of downscaling is that the emboldening
-       *  effect is slightly decreased.  The loss becomes more pronounced
-       *  versus the CFF driver at smaller sizes, e.g., at 9ppem and below.
+       * An unfortunate side effect of downscaling is that the emboldening
+       * effect is slightly decreased.  The loss becomes more pronounced
+       * versus the CFF driver at smaller sizes, e.g., at 9ppem and below.
        */
       globals->scale_down_factor =
         FT_DivFix( em_size - ( darken_by_font_units_y + af_intToFixed( 8 ) ),
@@ -277,13 +277,13 @@
     }
 
     /*
-     *  TODO: This code currently doesn't support fractional advance widths,
-     *  i.e., placing hinted glyphs at anything other than integer
-     *  x-positions.  This is only relevant for the warper code, which
-     *  scales and shifts glyphs to optimize blackness of stems (hinting on
-     *  the x-axis by nature places things on pixel integers, hinting on the
-     *  y-axis only, i.e., LIGHT mode, doesn't touch the x-axis).  The delta
-     *  values of the scaler would need to be adjusted.
+     * TODO: This code currently doesn't support fractional advance widths,
+     * i.e., placing hinted glyphs at anything other than integer
+     * x-positions.  This is only relevant for the warper code, which
+     * scales and shifts glyphs to optimize blackness of stems (hinting on
+     * the x-axis by nature places things on pixel integers, hinting on the
+     * y-axis only, i.e., LIGHT mode, doesn't touch the x-axis).  The delta
+     * values of the scaler would need to be adjusted.
      */
     scaler.face    = face;
     scaler.x_scale = size_internal->autohint_metrics.x_scale;
@@ -307,10 +307,10 @@
 #endif
 
     /*
-     *  Glyphs (really code points) are assigned to scripts.  Script
-     *  analysis is done lazily: For each glyph that passes through here,
-     *  the corresponding script analyzer is called, but returns immediately
-     *  if it has been run already.
+     * Glyphs (really code points) are assigned to scripts.  Script
+     * analysis is done lazily: For each glyph that passes through here,
+     * the corresponding script analyzer is called, but returns immediately
+     * if it has been run already.
      */
     error = af_face_globals_get_metrics( loader->globals, glyph_index,
                                          style_options, &style_metrics );
@@ -337,11 +337,11 @@
     }
 
     /*
-     *  Do the main work of `af_loader_load_glyph'.  Note that we never have
-     *  to deal with composite glyphs as those get loaded into
-     *  FT_GLYPH_FORMAT_OUTLINE by the recursed `FT_Load_Glyph' function.
-     *  In the rare cases where FT_LOAD_NO_RECURSE is set, it implies
-     *  FT_LOAD_NO_SCALE and as such the auto-hinter is never called.
+     * Do the main work of `af_loader_load_glyph'.  Note that we never have
+     * to deal with composite glyphs as those get loaded into
+     * FT_GLYPH_FORMAT_OUTLINE by the recursed `FT_Load_Glyph' function.
+     * In the rare cases where FT_LOAD_NO_RECURSE is set, it implies
+     * FT_LOAD_NO_SCALE and as such the auto-hinter is never called.
      */
     load_flags |=  FT_LOAD_NO_SCALE         |
                    FT_LOAD_IGNORE_TRANSFORM |
@@ -353,26 +353,26 @@
       goto Exit;
 
     /*
-     *  Apply stem darkening (emboldening) here before hints are applied to
-     *  the outline.  Glyphs are scaled down proportionally to the
-     *  emboldening so that curve points don't fall outside their
-     *  precomputed blue zones.
+     * Apply stem darkening (emboldening) here before hints are applied to
+     * the outline.  Glyphs are scaled down proportionally to the
+     * emboldening so that curve points don't fall outside their
+     * precomputed blue zones.
      *
-     *  Any emboldening done by the font driver (e.g., the CFF driver)
-     *  doesn't reach here because the autohinter loads the unprocessed
-     *  glyphs in font units for analysis (functions `af_*_metrics_init_*')
-     *  and then above to prepare it for the rasterizers by itself,
-     *  independently of the font driver.  So emboldening must be done here,
-     *  within the autohinter.
+     * Any emboldening done by the font driver (e.g., the CFF driver)
+     * doesn't reach here because the autohinter loads the unprocessed
+     * glyphs in font units for analysis (functions `af_*_metrics_init_*')
+     * and then above to prepare it for the rasterizers by itself,
+     * independently of the font driver.  So emboldening must be done here,
+     * within the autohinter.
      *
-     *  All glyphs to be autohinted pass through here one by one.  The
-     *  standard widths can therefore change from one glyph to the next,
-     *  depending on what script a glyph is assigned to (each script has its
-     *  own set of standard widths and other metrics).  The darkening amount
-     *  must therefore be recomputed for each size and
-     *  `standard_{vertical,horizontal}_width' change.
+     * All glyphs to be autohinted pass through here one by one.  The
+     * standard widths can therefore change from one glyph to the next,
+     * depending on what script a glyph is assigned to (each script has its
+     * own set of standard widths and other metrics).  The darkening amount
+     * must therefore be recomputed for each size and
+     * `standard_{vertical,horizontal}_width' change.
      *
-     *  Ignore errors and carry on without emboldening.
+     * Ignore errors and carry on without emboldening.
      *
      */
 
diff --git a/src/autofit/afloader.h b/src/autofit/afloader.h
index d4d72d1..773ff60 100644
--- a/src/autofit/afloader.h
+++ b/src/autofit/afloader.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  afloader.h                                                             */
-/*                                                                         */
-/*    Auto-fitter glyph loading routines (specification).                  */
-/*                                                                         */
-/*  Copyright 2003-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afloader.h
+ *
+ *   Auto-fitter glyph loading routines (specification).
+ *
+ * Copyright 2003-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef AFLOADER_H_
@@ -27,11 +27,11 @@
 FT_BEGIN_HEADER
 
   /*
-   *  The autofitter module's (global) data structure to communicate with
-   *  actual fonts.  If necessary, `local' data like the current face, the
-   *  current face's auto-hint data, or the current glyph's parameters
-   *  relevant to auto-hinting are `swapped in'.  Cf. functions like
-   *  `af_loader_reset' and `af_loader_load_g'.
+   * The autofitter module's (global) data structure to communicate with
+   * actual fonts.  If necessary, `local' data like the current face, the
+   * current face's auto-hint data, or the current glyph's parameters
+   * relevant to auto-hinting are `swapped in'.  Cf. functions like
+   * `af_loader_reset' and `af_loader_load_g'.
    */
 
   typedef struct  AF_LoaderRec_
diff --git a/src/autofit/afmodule.c b/src/autofit/afmodule.c
index 0439a76..7f9f043 100644
--- a/src/autofit/afmodule.c
+++ b/src/autofit/afmodule.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  afmodule.c                                                             */
-/*                                                                         */
-/*    Auto-fitter module implementation (body).                            */
-/*                                                                         */
-/*  Copyright 2003-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afmodule.c
+ *
+ *   Auto-fitter module implementation (body).
+ *
+ * Copyright 2003-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include "afglobal.h"
@@ -59,12 +59,12 @@
 #include FT_SERVICE_PROPERTIES_H
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_afmodule
 
diff --git a/src/autofit/afmodule.h b/src/autofit/afmodule.h
index 56f64ea..0db6ef0 100644
--- a/src/autofit/afmodule.h
+++ b/src/autofit/afmodule.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  afmodule.h                                                             */
-/*                                                                         */
-/*    Auto-fitter module implementation (specification).                   */
-/*                                                                         */
-/*  Copyright 2003-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afmodule.h
+ *
+ *   Auto-fitter module implementation (specification).
+ *
+ * Copyright 2003-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef AFMODULE_H_
@@ -28,8 +28,8 @@ FT_BEGIN_HEADER
 
 
   /*
-   *  This is the `extended' FT_Module structure that holds the
-   *  autofitter's global data.
+   * This is the `extended' FT_Module structure that holds the
+   * autofitter's global data.
    */
 
   typedef struct  AF_ModuleRec_
diff --git a/src/autofit/afranges.c b/src/autofit/afranges.c
index cf67faf..b904d51 100644
--- a/src/autofit/afranges.c
+++ b/src/autofit/afranges.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  afranges.c                                                             */
-/*                                                                         */
-/*    Auto-fitter Unicode script ranges (body).                            */
-/*                                                                         */
-/*  Copyright 2013-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afranges.c
+ *
+ *   Auto-fitter Unicode script ranges (body).
+ *
+ * Copyright 2013-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include "afranges.h"
diff --git a/src/autofit/afranges.h b/src/autofit/afranges.h
index ba3b5e7..c137ae2 100644
--- a/src/autofit/afranges.h
+++ b/src/autofit/afranges.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  afranges.h                                                             */
-/*                                                                         */
-/*    Auto-fitter Unicode script ranges (specification).                   */
-/*                                                                         */
-/*  Copyright 2013-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afranges.h
+ *
+ *   Auto-fitter Unicode script ranges (specification).
+ *
+ * Copyright 2013-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef AFRANGES_H_
diff --git a/src/autofit/afscript.h b/src/autofit/afscript.h
index 623a173..7dd0983 100644
--- a/src/autofit/afscript.h
+++ b/src/autofit/afscript.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  afscript.h                                                             */
-/*                                                                         */
-/*    Auto-fitter scripts (specification only).                            */
-/*                                                                         */
-/*  Copyright 2013-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afscript.h
+ *
+ *   Auto-fitter scripts (specification only).
+ *
+ * Copyright 2013-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
   /* The following part can be included multiple times. */
diff --git a/src/autofit/afshaper.c b/src/autofit/afshaper.c
index ce3133f..b2f5d18 100644
--- a/src/autofit/afshaper.c
+++ b/src/autofit/afshaper.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  afshaper.c                                                             */
-/*                                                                         */
-/*    HarfBuzz interface for accessing OpenType features (body).           */
-/*                                                                         */
-/*  Copyright 2013-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afshaper.c
+ *
+ *   HarfBuzz interface for accessing OpenType features (body).
+ *
+ * Copyright 2013-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -26,12 +26,12 @@
 #ifdef FT_CONFIG_OPTION_USE_HARFBUZZ
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_afshaper
 
diff --git a/src/autofit/afshaper.h b/src/autofit/afshaper.h
index 7efd9f6..2665fe2 100644
--- a/src/autofit/afshaper.h
+++ b/src/autofit/afshaper.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  afshaper.h                                                             */
-/*                                                                         */
-/*    HarfBuzz interface for accessing OpenType features (specification).  */
-/*                                                                         */
-/*  Copyright 2013-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afshaper.h
+ *
+ *   HarfBuzz interface for accessing OpenType features (specification).
+ *
+ * Copyright 2013-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef AFSHAPER_H_
diff --git a/src/autofit/afstyles.h b/src/autofit/afstyles.h
index e2688b3..55d8b23 100644
--- a/src/autofit/afstyles.h
+++ b/src/autofit/afstyles.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  afstyles.h                                                             */
-/*                                                                         */
-/*    Auto-fitter styles (specification only).                             */
-/*                                                                         */
-/*  Copyright 2013-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afstyles.h
+ *
+ *   Auto-fitter styles (specification only).
+ *
+ * Copyright 2013-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
   /* The following part can be included multiple times. */
diff --git a/src/autofit/aftypes.h b/src/autofit/aftypes.h
index 8769bf1..affb81b 100644
--- a/src/autofit/aftypes.h
+++ b/src/autofit/aftypes.h
@@ -1,30 +1,30 @@
-/***************************************************************************/
-/*                                                                         */
-/*  aftypes.h                                                              */
-/*                                                                         */
-/*    Auto-fitter types (specification only).                              */
-/*                                                                         */
-/*  Copyright 2003-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * aftypes.h
+ *
+ *   Auto-fitter types (specification only).
+ *
+ * Copyright 2003-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
   /*************************************************************************
    *
-   *  The auto-fitter is a complete rewrite of the old auto-hinter.
-   *  Its main feature is the ability to differentiate between different
-   *  writing systems and scripts in order to apply specific rules.
+   * The auto-fitter is a complete rewrite of the old auto-hinter.
+   * Its main feature is the ability to differentiate between different
+   * writing systems and scripts in order to apply specific rules.
    *
-   *  The code has also been compartmentalized into several entities that
-   *  should make algorithmic experimentation easier than with the old
-   *  code.
+   * The code has also been compartmentalized into several entities that
+   * should make algorithmic experimentation easier than with the old
+   * code.
    *
    *************************************************************************/
 
@@ -102,9 +102,9 @@ extern void*  _af_debug_hints;
   /*************************************************************************/
 
   /*
-   *  The auto-fitter doesn't need a very high angular accuracy;
-   *  this allows us to speed up some computations considerably with a
-   *  light Cordic algorithm (see afangles.c).
+   * The auto-fitter doesn't need a very high angular accuracy;
+   * this allows us to speed up some computations considerably with a
+   * light Cordic algorithm (see afangles.c).
    */
 
   typedef FT_Int  AF_Angle;
@@ -118,7 +118,7 @@ extern void*  _af_debug_hints;
 
 #if 0
   /*
-   *  compute the angle of a given 2-D vector
+   * compute the angle of a given 2-D vector
    */
   FT_LOCAL( AF_Angle )
   af_angle_atan( FT_Pos  dx,
@@ -126,8 +126,8 @@ extern void*  _af_debug_hints;
 
 
   /*
-   *  compute `angle2 - angle1'; the result is always within
-   *  the range [-AF_ANGLE_PI .. AF_ANGLE_PI - 1]
+   * compute `angle2 - angle1'; the result is always within
+   * the range [-AF_ANGLE_PI .. AF_ANGLE_PI - 1]
    */
   FT_LOCAL( AF_Angle )
   af_angle_diff( AF_Angle  angle1,
@@ -150,8 +150,9 @@ extern void*  _af_debug_hints;
   FT_END_STMNT
 
 
-  /*  opaque handle to glyph-specific hints -- see `afhints.h' for more
-   *  details
+  /*
+   * opaque handle to glyph-specific hints -- see `afhints.h' for more
+   * details
    */
   typedef struct AF_GlyphHintsRec_*  AF_GlyphHints;
 
@@ -165,8 +166,8 @@ extern void*  _af_debug_hints;
   /*************************************************************************/
 
   /*
-   *  A scaler models the target pixel device that will receive the
-   *  auto-hinted glyph image.
+   * A scaler models the target pixel device that will receive the
+   * auto-hinted glyph image.
    */
 
 #define AF_SCALER_FLAG_NO_HORIZONTAL  1U /* disable horizontal hinting */
@@ -197,8 +198,9 @@ extern void*  _af_debug_hints;
 
   typedef struct AF_StyleMetricsRec_*  AF_StyleMetrics;
 
-  /*  This function parses an FT_Face to compute global metrics for
-   *  a specific style.
+  /*
+   * This function parses an FT_Face to compute global metrics for
+   * a specific style.
    */
   typedef FT_Error
   (*AF_WritingSystem_InitMetricsFunc)( AF_StyleMetrics  metrics,
@@ -237,22 +239,22 @@ extern void*  _af_debug_hints;
   /*************************************************************************/
 
   /*
-   *  For the auto-hinter, a writing system consists of multiple scripts that
-   *  can be handled similarly *in a typographical way*; the relationship is
-   *  not based on history.  For example, both the Greek and the unrelated
-   *  Armenian scripts share the same features like ascender, descender,
-   *  x-height, etc.  Essentially, a writing system is covered by a
-   *  submodule of the auto-fitter; it contains
+   * For the auto-hinter, a writing system consists of multiple scripts that
+   * can be handled similarly *in a typographical way*; the relationship is
+   * not based on history.  For example, both the Greek and the unrelated
+   * Armenian scripts share the same features like ascender, descender,
+   * x-height, etc.  Essentially, a writing system is covered by a
+   * submodule of the auto-fitter; it contains
    *
-   *  - a specific global analyzer that computes global metrics specific to
-   *    the script (based on script-specific characters to identify ascender
-   *    height, x-height, etc.),
+   * - a specific global analyzer that computes global metrics specific to
+   *   the script (based on script-specific characters to identify ascender
+   *   height, x-height, etc.),
    *
-   *  - a specific glyph analyzer that computes segments and edges for each
-   *    glyph covered by the script,
+   * - a specific glyph analyzer that computes segments and edges for each
+   *   glyph covered by the script,
    *
-   *  - a specific grid-fitting algorithm that distorts the scaled glyph
-   *    outline according to the results of the glyph analyzer.
+   * - a specific grid-fitting algorithm that distorts the scaled glyph
+   *   outline according to the results of the glyph analyzer.
    */
 
 #define AFWRTSYS_H_  /* don't load header files */
@@ -300,12 +302,12 @@ extern void*  _af_debug_hints;
   /*************************************************************************/
 
   /*
-   *  Each script is associated with two sets of Unicode ranges to test
-   *  whether the font face supports the script, and which non-base
-   *  characters the script contains.
+   * Each script is associated with two sets of Unicode ranges to test
+   * whether the font face supports the script, and which non-base
+   * characters the script contains.
    *
-   *  We use four-letter script tags from the OpenType specification,
-   *  extended by `NONE', which indicates `no script'.
+   * We use four-letter script tags from the OpenType specification,
+   * extended by `NONE', which indicates `no script'.
    */
 
 #undef  SCRIPT
@@ -361,41 +363,41 @@ extern void*  _af_debug_hints;
   /*************************************************************************/
 
   /*
-   *  Usually, a font contains more glyphs than can be addressed by its
-   *  character map.
+   * Usually, a font contains more glyphs than can be addressed by its
+   * character map.
    *
-   *  In the PostScript font world, encoding vectors specific to a given
-   *  task are used to select such glyphs, and these glyphs can be often
-   *  recognized by having a suffix in its glyph names.  For example, a
-   *  superscript glyph `A' might be called `A.sup'.  Unfortunately, this
-   *  naming scheme is not standardized and thus unusable for us.
+   * In the PostScript font world, encoding vectors specific to a given
+   * task are used to select such glyphs, and these glyphs can be often
+   * recognized by having a suffix in its glyph names.  For example, a
+   * superscript glyph `A' might be called `A.sup'.  Unfortunately, this
+   * naming scheme is not standardized and thus unusable for us.
    *
-   *  In the OpenType world, a better solution was invented, namely
-   *  `features', which cleanly separate a character's input encoding from
-   *  the corresponding glyph's appearance, and which don't use glyph names
-   *  at all.  For our purposes, and slightly generalized, an OpenType
-   *  feature is a name of a mapping that maps character codes to
-   *  non-standard glyph indices (features get used for other things also).
-   *  For example, the `sups' feature provides superscript glyphs, thus
-   *  mapping character codes like `A' or `B' to superscript glyph
-   *  representation forms.  How this mapping happens is completely
-   *  uninteresting to us.
+   * In the OpenType world, a better solution was invented, namely
+   * `features', which cleanly separate a character's input encoding from
+   * the corresponding glyph's appearance, and which don't use glyph names
+   * at all.  For our purposes, and slightly generalized, an OpenType
+   * feature is a name of a mapping that maps character codes to
+   * non-standard glyph indices (features get used for other things also).
+   * For example, the `sups' feature provides superscript glyphs, thus
+   * mapping character codes like `A' or `B' to superscript glyph
+   * representation forms.  How this mapping happens is completely
+   * uninteresting to us.
    *
-   *  For the auto-hinter, a `coverage' represents all glyphs of an OpenType
-   *  feature collected in a set (as listed below) that can be hinted
-   *  together.  To continue the above example, superscript glyphs must not
-   *  be hinted together with normal glyphs because the blue zones
-   *  completely differ.
+   * For the auto-hinter, a `coverage' represents all glyphs of an OpenType
+   * feature collected in a set (as listed below) that can be hinted
+   * together.  To continue the above example, superscript glyphs must not
+   * be hinted together with normal glyphs because the blue zones
+   * completely differ.
    *
-   *  Note that FreeType itself doesn't compute coverages; it only provides
-   *  the glyphs addressable by the default Unicode character map.  Instead,
-   *  we use the HarfBuzz library (if available), which has many functions
-   *  exactly for this purpose.
+   * Note that FreeType itself doesn't compute coverages; it only provides
+   * the glyphs addressable by the default Unicode character map.  Instead,
+   * we use the HarfBuzz library (if available), which has many functions
+   * exactly for this purpose.
    *
-   *  AF_COVERAGE_DEFAULT is special: It should cover everything that isn't
-   *  listed separately (including the glyphs addressable by the character
-   *  map).  In case HarfBuzz isn't available, it exactly covers the glyphs
-   *  addressable by the character map.
+   * AF_COVERAGE_DEFAULT is special: It should cover everything that isn't
+   * listed separately (including the glyphs addressable by the character
+   * map).  In case HarfBuzz isn't available, it exactly covers the glyphs
+   * addressable by the character map.
    *
    */
 
@@ -423,8 +425,8 @@ extern void*  _af_debug_hints;
   /*************************************************************************/
 
   /*
-   *  The topmost structure for modelling the auto-hinter glyph input data
-   *  is a `style class', grouping everything together.
+   * The topmost structure for modelling the auto-hinter glyph input data
+   * is a `style class', grouping everything together.
    */
 
 #undef  STYLE
diff --git a/src/autofit/afwarp.c b/src/autofit/afwarp.c
index 2a75ea7..636f01f 100644
--- a/src/autofit/afwarp.c
+++ b/src/autofit/afwarp.c
@@ -1,38 +1,38 @@
-/***************************************************************************/
-/*                                                                         */
-/*  afwarp.c                                                               */
-/*                                                                         */
-/*    Auto-fitter warping algorithm (body).                                */
-/*                                                                         */
-/*  Copyright 2006-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afwarp.c
+ *
+ *   Auto-fitter warping algorithm (body).
+ *
+ * Copyright 2006-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
   /*
-   *  The idea of the warping code is to slightly scale and shift a glyph
-   *  within a single dimension so that as much of its segments are aligned
-   *  (more or less) on the grid.  To find out the optimal scaling and
-   *  shifting value, various parameter combinations are tried and scored.
+   * The idea of the warping code is to slightly scale and shift a glyph
+   * within a single dimension so that as much of its segments are aligned
+   * (more or less) on the grid.  To find out the optimal scaling and
+   * shifting value, various parameter combinations are tried and scored.
    */
 
 #include "afwarp.h"
 
 #ifdef AF_CONFIG_OPTION_USE_WARPER
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_afwarp
 
diff --git a/src/autofit/afwarp.h b/src/autofit/afwarp.h
index 38b7479..d454dfb 100644
--- a/src/autofit/afwarp.h
+++ b/src/autofit/afwarp.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  afwarp.h                                                               */
-/*                                                                         */
-/*    Auto-fitter warping algorithm (specification).                       */
-/*                                                                         */
-/*  Copyright 2006-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afwarp.h
+ *
+ *   Auto-fitter warping algorithm (specification).
+ *
+ * Copyright 2006-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef AFWARP_H_
diff --git a/src/autofit/afwrtsys.h b/src/autofit/afwrtsys.h
index 4675f32..20311da 100644
--- a/src/autofit/afwrtsys.h
+++ b/src/autofit/afwrtsys.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  afwrtsys.h                                                             */
-/*                                                                         */
-/*    Auto-fitter writing systems (specification only).                    */
-/*                                                                         */
-/*  Copyright 2013-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afwrtsys.h
+ *
+ *   Auto-fitter writing systems (specification only).
+ *
+ * Copyright 2013-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef AFWRTSYS_H_
diff --git a/src/autofit/autofit.c b/src/autofit/autofit.c
index 1710675..1fba44a 100644
--- a/src/autofit/autofit.c
+++ b/src/autofit/autofit.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  autofit.c                                                              */
-/*                                                                         */
-/*    Auto-fitter module (body).                                           */
-/*                                                                         */
-/*  Copyright 2003-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * autofit.c
+ *
+ *   Auto-fitter module (body).
+ *
+ * Copyright 2003-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #define FT_MAKE_OPTION_SINGLE_OBJECT
diff --git a/src/base/ftadvanc.c b/src/base/ftadvanc.c
index 230c84d..22f4ec9 100644
--- a/src/base/ftadvanc.c
+++ b/src/base/ftadvanc.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftadvanc.c                                                             */
-/*                                                                         */
-/*    Quick computation of advance widths (body).                          */
-/*                                                                         */
-/*  Copyright 2008-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftadvanc.c
+ *
+ *   Quick computation of advance widths (body).
+ *
+ * Copyright 2008-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
diff --git a/src/base/ftapi.c b/src/base/ftapi.c
index 32d6e95..2e6f942 100644
--- a/src/base/ftapi.c
+++ b/src/base/ftapi.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftapi.c                                                                */
-/*                                                                         */
-/*    The FreeType compatibility functions (body).                         */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftapi.c
+ *
+ *   The FreeType compatibility functions (body).
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
diff --git a/src/base/ftbase.c b/src/base/ftbase.c
index f96a232..47412fc 100644
--- a/src/base/ftbase.c
+++ b/src/base/ftbase.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftbase.c                                                               */
-/*                                                                         */
-/*    Single object library component (body only).                         */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftbase.c
+ *
+ *   Single object library component (body only).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
diff --git a/src/base/ftbase.h b/src/base/ftbase.h
index 7e8cfad..feb0f4e 100644
--- a/src/base/ftbase.h
+++ b/src/base/ftbase.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftbase.h                                                               */
-/*                                                                         */
-/*    Private functions used in the `base' module (specification).         */
-/*                                                                         */
-/*  Copyright 2008-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, Werner Lemberg, and suzuki toshiya.      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftbase.h
+ *
+ *   Private functions used in the `base' module (specification).
+ *
+ * Copyright 2008-2018 by
+ * David Turner, Robert Wilhelm, Werner Lemberg, and suzuki toshiya.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef FTBASE_H_
diff --git a/src/base/ftbbox.c b/src/base/ftbbox.c
index 131e6d5..86cefe4 100644
--- a/src/base/ftbbox.c
+++ b/src/base/ftbbox.c
@@ -1,27 +1,27 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftbbox.c                                                               */
-/*                                                                         */
-/*    FreeType bbox computation (body).                                    */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used        */
-/*  modified and distributed under the terms of the FreeType project       */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This component has a _single_ role: to compute exact outline bounding */
-  /* boxes.                                                                */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * ftbbox.c
+ *
+ *   FreeType bbox computation (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used
+ * modified and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+
+  /**************************************************************************
+   *
+   * This component has a _single_ role: to compute exact outline bounding
+   * boxes.
+   *
+   */
 
 
 #include <ft2build.h>
@@ -61,26 +61,28 @@
           ( p->y < bbox.yMin || p->y > bbox.yMax )
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    BBox_Move_To                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This function is used as a `move_to' emitter during                */
-  /*    FT_Outline_Decompose().  It simply records the destination point   */
-  /*    in `user->last'. We also update bbox in case contour starts with   */
-  /*    an implicit `on' point.                                            */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    to   :: A pointer to the destination vector.                       */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    user :: A pointer to the current walk context.                     */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    Always 0.  Needed for the interface only.                          */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   BBox_Move_To
+   *
+   * @Description:
+   *   This function is used as a `move_to' emitter during
+   *   FT_Outline_Decompose().  It simply records the destination point
+   *   in `user->last'. We also update bbox in case contour starts with
+   *   an implicit `on' point.
+   *
+   * @Input:
+   *   to ::
+   *     A pointer to the destination vector.
+   *
+   * @InOut:
+   *   user ::
+   *     A pointer to the current walk context.
+   *
+   * @Return:
+   *   Always 0.  Needed for the interface only.
+   */
   static int
   BBox_Move_To( FT_Vector*  to,
                 TBBox_Rec*  user )
@@ -93,26 +95,28 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    BBox_Line_To                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This function is used as a `line_to' emitter during                */
-  /*    FT_Outline_Decompose().  It simply records the destination point   */
-  /*    in `user->last'; no further computations are necessary because     */
-  /*    bbox already contains both explicit ends of the line segment.      */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    to   :: A pointer to the destination vector.                       */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    user :: A pointer to the current walk context.                     */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    Always 0.  Needed for the interface only.                          */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   BBox_Line_To
+   *
+   * @Description:
+   *   This function is used as a `line_to' emitter during
+   *   FT_Outline_Decompose().  It simply records the destination point
+   *   in `user->last'; no further computations are necessary because
+   *   bbox already contains both explicit ends of the line segment.
+   *
+   * @Input:
+   *   to ::
+   *     A pointer to the destination vector.
+   *
+   * @InOut:
+   *   user ::
+   *     A pointer to the current walk context.
+   *
+   * @Return:
+   *   Always 0.  Needed for the interface only.
+   */
   static int
   BBox_Line_To( FT_Vector*  to,
                 TBBox_Rec*  user )
@@ -123,28 +127,33 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    BBox_Conic_Check                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Find the extrema of a 1-dimensional conic Bezier curve and update  */
-  /*    a bounding range.  This version uses direct computation, as it     */
-  /*    doesn't need square roots.                                         */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    y1  :: The start coordinate.                                       */
-  /*                                                                       */
-  /*    y2  :: The coordinate of the control point.                        */
-  /*                                                                       */
-  /*    y3  :: The end coordinate.                                         */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    min :: The address of the current minimum.                         */
-  /*                                                                       */
-  /*    max :: The address of the current maximum.                         */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   BBox_Conic_Check
+   *
+   * @Description:
+   *   Find the extrema of a 1-dimensional conic Bezier curve and update
+   *   a bounding range.  This version uses direct computation, as it
+   *   doesn't need square roots.
+   *
+   * @Input:
+   *   y1 ::
+   *     The start coordinate.
+   *
+   *   y2 ::
+   *     The coordinate of the control point.
+   *
+   *   y3 ::
+   *     The end coordinate.
+   *
+   * @InOut:
+   *   min ::
+   *     The address of the current minimum.
+   *
+   *   max ::
+   *     The address of the current maximum.
+   */
   static void
   BBox_Conic_Check( FT_Pos   y1,
                     FT_Pos   y2,
@@ -168,32 +177,35 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    BBox_Conic_To                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This function is used as a `conic_to' emitter during               */
-  /*    FT_Outline_Decompose().  It checks a conic Bezier curve with the   */
-  /*    current bounding box, and computes its extrema if necessary to     */
-  /*    update it.                                                         */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    control :: A pointer to a control point.                           */
-  /*                                                                       */
-  /*    to      :: A pointer to the destination vector.                    */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    user    :: The address of the current walk context.                */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    Always 0.  Needed for the interface only.                          */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    In the case of a non-monotonous arc, we compute directly the       */
-  /*    extremum coordinates, as it is sufficiently fast.                  */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   BBox_Conic_To
+   *
+   * @Description:
+   *   This function is used as a `conic_to' emitter during
+   *   FT_Outline_Decompose().  It checks a conic Bezier curve with the
+   *   current bounding box, and computes its extrema if necessary to
+   *   update it.
+   *
+   * @Input:
+   *   control ::
+   *     A pointer to a control point.
+   *
+   *   to ::
+   *     A pointer to the destination vector.
+   *
+   * @InOut:
+   *   user ::
+   *     The address of the current walk context.
+   *
+   * @Return:
+   *   Always 0.  Needed for the interface only.
+   *
+   * @Note:
+   *   In the case of a non-monotonous arc, we compute directly the
+   *   extremum coordinates, as it is sufficiently fast.
+   */
   static int
   BBox_Conic_To( FT_Vector*  control,
                  FT_Vector*  to,
@@ -222,30 +234,36 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    BBox_Cubic_Check                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Find the extrema of a 1-dimensional cubic Bezier curve and         */
-  /*    update a bounding range.  This version uses iterative splitting    */
-  /*    because it is faster than the exact solution with square roots.    */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    p1  :: The start coordinate.                                       */
-  /*                                                                       */
-  /*    p2  :: The coordinate of the first control point.                  */
-  /*                                                                       */
-  /*    p3  :: The coordinate of the second control point.                 */
-  /*                                                                       */
-  /*    p4  :: The end coordinate.                                         */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    min :: The address of the current minimum.                         */
-  /*                                                                       */
-  /*    max :: The address of the current maximum.                         */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   BBox_Cubic_Check
+   *
+   * @Description:
+   *   Find the extrema of a 1-dimensional cubic Bezier curve and
+   *   update a bounding range.  This version uses iterative splitting
+   *   because it is faster than the exact solution with square roots.
+   *
+   * @Input:
+   *   p1 ::
+   *     The start coordinate.
+   *
+   *   p2 ::
+   *     The coordinate of the first control point.
+   *
+   *   p3 ::
+   *     The coordinate of the second control point.
+   *
+   *   p4 ::
+   *     The end coordinate.
+   *
+   * @InOut:
+   *   min ::
+   *     The address of the current minimum.
+   *
+   *   max ::
+   *     The address of the current maximum.
+   */
   static FT_Pos
   cubic_peak( FT_Pos  q1,
               FT_Pos  q2,
@@ -361,34 +379,38 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    BBox_Cubic_To                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This function is used as a `cubic_to' emitter during               */
-  /*    FT_Outline_Decompose().  It checks a cubic Bezier curve with the   */
-  /*    current bounding box, and computes its extrema if necessary to     */
-  /*    update it.                                                         */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    control1 :: A pointer to the first control point.                  */
-  /*                                                                       */
-  /*    control2 :: A pointer to the second control point.                 */
-  /*                                                                       */
-  /*    to       :: A pointer to the destination vector.                   */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    user     :: The address of the current walk context.               */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    Always 0.  Needed for the interface only.                          */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    In the case of a non-monotonous arc, we don't compute directly     */
-  /*    extremum coordinates, we subdivide instead.                        */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   BBox_Cubic_To
+   *
+   * @Description:
+   *   This function is used as a `cubic_to' emitter during
+   *   FT_Outline_Decompose().  It checks a cubic Bezier curve with the
+   *   current bounding box, and computes its extrema if necessary to
+   *   update it.
+   *
+   * @Input:
+   *   control1 ::
+   *     A pointer to the first control point.
+   *
+   *   control2 ::
+   *     A pointer to the second control point.
+   *
+   *   to ::
+   *     A pointer to the destination vector.
+   *
+   * @InOut:
+   *   user ::
+   *     The address of the current walk context.
+   *
+   * @Return:
+   *   Always 0.  Needed for the interface only.
+   *
+   * @Note:
+   *   In the case of a non-monotonous arc, we don't compute directly
+   *   extremum coordinates, we subdivide instead.
+   */
   static int
   BBox_Cubic_To( FT_Vector*  control1,
                  FT_Vector*  control2,
diff --git a/src/base/ftbdf.c b/src/base/ftbdf.c
index c4ea502..8a27c84 100644
--- a/src/base/ftbdf.c
+++ b/src/base/ftbdf.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftbdf.c                                                                */
-/*                                                                         */
-/*    FreeType API for accessing BDF-specific strings (body).              */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftbdf.c
+ *
+ *   FreeType API for accessing BDF-specific strings (body).
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
diff --git a/src/base/ftbitmap.c b/src/base/ftbitmap.c
index a974666..68647f8 100644
--- a/src/base/ftbitmap.c
+++ b/src/base/ftbitmap.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftbitmap.c                                                             */
-/*                                                                         */
-/*    FreeType utility functions for bitmaps (body).                       */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftbitmap.c
+ *
+ *   FreeType utility functions for bitmaps (body).
+ *
+ * Copyright 2004-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
diff --git a/src/base/ftcalc.c b/src/base/ftcalc.c
index f4ff45f..6abc4ed 100644
--- a/src/base/ftcalc.c
+++ b/src/base/ftcalc.c
@@ -1,35 +1,35 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftcalc.c                                                               */
-/*                                                                         */
-/*    Arithmetic computations (body).                                      */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* Support for 1-complement arithmetic has been totally dropped in this  */
-  /* release.  You can still write your own code if you need it.           */
-  /*                                                                       */
-  /*************************************************************************/
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* Implementing basic computation routines.                              */
-  /*                                                                       */
-  /* FT_MulDiv(), FT_MulFix(), FT_DivFix(), FT_RoundFix(), FT_CeilFix(),   */
-  /* and FT_FloorFix() are declared in freetype.h.                         */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * ftcalc.c
+ *
+ *   Arithmetic computations (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+  /**************************************************************************
+   *
+   * Support for 1-complement arithmetic has been totally dropped in this
+   * release.  You can still write your own code if you need it.
+   *
+   */
+
+  /**************************************************************************
+   *
+   * Implementing basic computation routines.
+   *
+   * FT_MulDiv(), FT_MulFix(), FT_DivFix(), FT_RoundFix(), FT_CeilFix(),
+   * and FT_FloorFix() are declared in freetype.h.
+   *
+   */
 
 
 #include <ft2build.h>
@@ -58,12 +58,12 @@
 #endif /* !FT_LONG64 */
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_calc
 
@@ -516,10 +516,10 @@
 #elif 0
 
     /*
-     *  This code is nonportable.  See comment below.
+     * This code is nonportable.  See comment below.
      *
-     *  However, on a platform where right-shift of a signed quantity fills
-     *  the leftmost bits by copying the sign bit, it might be faster.
+     * However, on a platform where right-shift of a signed quantity fills
+     * the leftmost bits by copying the sign bit, it might be faster.
      */
 
     FT_Long    sa, sb;
@@ -527,22 +527,22 @@
 
 
     /*
-     *  This is a clever way of converting a signed number `a' into its
-     *  absolute value (stored back into `a') and its sign.  The sign is
-     *  stored in `sa'; 0 means `a' was positive or zero, and -1 means `a'
-     *  was negative.  (Similarly for `b' and `sb').
+     * This is a clever way of converting a signed number `a' into its
+     * absolute value (stored back into `a') and its sign.  The sign is
+     * stored in `sa'; 0 means `a' was positive or zero, and -1 means `a'
+     * was negative.  (Similarly for `b' and `sb').
      *
-     *  Unfortunately, it doesn't work (at least not portably).
+     * Unfortunately, it doesn't work (at least not portably).
      *
-     *  It makes the assumption that right-shift on a negative signed value
-     *  fills the leftmost bits by copying the sign bit.  This is wrong.
-     *  According to K&R 2nd ed, section `A7.8 Shift Operators' on page 206,
-     *  the result of right-shift of a negative signed value is
-     *  implementation-defined.  At least one implementation fills the
-     *  leftmost bits with 0s (i.e., it is exactly the same as an unsigned
-     *  right shift).  This means that when `a' is negative, `sa' ends up
-     *  with the value 1 rather than -1.  After that, everything else goes
-     *  wrong.
+     * It makes the assumption that right-shift on a negative signed value
+     * fills the leftmost bits by copying the sign bit.  This is wrong.
+     * According to K&R 2nd ed, section `A7.8 Shift Operators' on page 206,
+     * the result of right-shift of a negative signed value is
+     * implementation-defined.  At least one implementation fills the
+     * leftmost bits with 0s (i.e., it is exactly the same as an unsigned
+     * right shift).  This means that when `a' is negative, `sa' ends up
+     * with the value 1 rather than -1.  After that, everything else goes
+     * wrong.
      */
     sa = ( a_ >> ( sizeof ( a_ ) * 8 - 1 ) );
     a  = ( a_ ^ sa ) - sa;
diff --git a/src/base/ftcid.c b/src/base/ftcid.c
index f518464..944e3e4 100644
--- a/src/base/ftcid.c
+++ b/src/base/ftcid.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftcid.c                                                                */
-/*                                                                         */
-/*    FreeType API for accessing CID font information.                     */
-/*                                                                         */
-/*  Copyright 2007-2018 by                                                 */
-/*  Derek Clegg and Michael Toftdal.                                       */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftcid.c
+ *
+ *   FreeType API for accessing CID font information.
+ *
+ * Copyright 2007-2018 by
+ * Derek Clegg and Michael Toftdal.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
diff --git a/src/base/ftdbgmem.c b/src/base/ftdbgmem.c
index c33d8ac..6e0a074 100644
--- a/src/base/ftdbgmem.c
+++ b/src/base/ftdbgmem.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftdbgmem.c                                                             */
-/*                                                                         */
-/*    Memory debugger (body).                                              */
-/*                                                                         */
-/*  Copyright 2001-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftdbgmem.c
+ *
+ *   Memory debugger (body).
+ *
+ * Copyright 2001-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -50,9 +50,9 @@
 #define FT_MEM_VAL( addr )  ( (FT_PtrDist)(FT_Pointer)( addr ) )
 
   /*
-   *  This structure holds statistics for a single allocation/release
-   *  site.  This is useful to know where memory operations happen the
-   *  most.
+   * This structure holds statistics for a single allocation/release
+   * site.  This is useful to know where memory operations happen the
+   * most.
    */
   typedef struct  FT_MemSourceRec_
   {
@@ -76,17 +76,17 @@
 
 
   /*
-   *  We don't need a resizable array for the memory sources because
-   *  their number is pretty limited within FreeType.
+   * We don't need a resizable array for the memory sources because
+   * their number is pretty limited within FreeType.
    */
 #define FT_MEM_SOURCE_BUCKETS  128
 
   /*
-   *  This structure holds information related to a single allocated
-   *  memory block.  If KEEPALIVE is defined, blocks that are freed by
-   *  FreeType are never released to the system.  Instead, their `size'
-   *  field is set to `-size'.  This is mainly useful to detect double
-   *  frees, at the price of a large memory footprint during execution.
+   * This structure holds information related to a single allocated
+   * memory block.  If KEEPALIVE is defined, blocks that are freed by
+   * FreeType are never released to the system.  Instead, their `size'
+   * field is set to `-size'.  This is mainly useful to detect double
+   * frees, at the price of a large memory footprint during execution.
    */
   typedef struct  FT_MemNodeRec_
   {
@@ -106,8 +106,8 @@
 
 
   /*
-   *  The global structure, containing compound statistics and all hash
-   *  tables.
+   * The global structure, containing compound statistics and all hash
+   * tables.
    */
   typedef struct  FT_MemTableRec_
   {
@@ -146,8 +146,8 @@
 
 
   /*
-   *  Prime numbers are ugly to handle.  It would be better to implement
-   *  L-Hashing, which is 10% faster and doesn't require divisions.
+   * Prime numbers are ugly to handle.  It would be better to implement
+   * L-Hashing, which is 10% faster and doesn't require divisions.
    */
   static const FT_Int  ft_mem_primes[] =
   {
diff --git a/src/base/ftdebug.c b/src/base/ftdebug.c
index fe26309..a5fae27 100644
--- a/src/base/ftdebug.c
+++ b/src/base/ftdebug.c
@@ -1,44 +1,44 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftdebug.c                                                              */
-/*                                                                         */
-/*    Debugging and logging component (body).                              */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This component contains various macros and functions used to ease the */
-  /* debugging of the FreeType engine.  Its main purpose is in assertion   */
-  /* checking, tracing, and error detection.                               */
-  /*                                                                       */
-  /* There are now three debugging modes:                                  */
-  /*                                                                       */
-  /* - trace mode                                                          */
-  /*                                                                       */
-  /*   Error and trace messages are sent to the log file (which can be the */
-  /*   standard error output).                                             */
-  /*                                                                       */
-  /* - error mode                                                          */
-  /*                                                                       */
-  /*   Only error messages are generated.                                  */
-  /*                                                                       */
-  /* - release mode:                                                       */
-  /*                                                                       */
-  /*   No error message is sent or generated.  The code is free from any   */
-  /*   debugging parts.                                                    */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * ftdebug.c
+ *
+ *   Debugging and logging component (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+
+  /**************************************************************************
+   *
+   * This component contains various macros and functions used to ease the
+   * debugging of the FreeType engine.  Its main purpose is in assertion
+   * checking, tracing, and error detection.
+   *
+   * There are now three debugging modes:
+   *
+   * - trace mode
+   *
+   *   Error and trace messages are sent to the log file (which can be the
+   *   standard error output).
+   *
+   * - error mode
+   *
+   *   Only error messages are generated.
+   *
+   * - release mode:
+   *
+   *   No error message is sent or generated.  The code is free from any
+   *   debugging parts.
+   *
+   */
 
 
 #include <ft2build.h>
@@ -140,24 +140,24 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Initialize the tracing sub-system.  This is done by retrieving the    */
-  /* value of the `FT2_DEBUG' environment variable.  It must be a list of  */
-  /* toggles, separated by spaces, `;', or `,'.  Example:                  */
-  /*                                                                       */
-  /*    export FT2_DEBUG="any:3 memory:7 stream:5"                         */
-  /*                                                                       */
-  /* This requests that all levels be set to 3, except the trace level for */
-  /* the memory and stream components which are set to 7 and 5,            */
-  /* respectively.                                                         */
-  /*                                                                       */
-  /* See the file `include/freetype/internal/fttrace.h' for details of     */
-  /* the available toggle names.                                           */
-  /*                                                                       */
-  /* The level must be between 0 and 7; 0 means quiet (except for serious  */
-  /* runtime errors), and 7 means _very_ verbose.                          */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * Initialize the tracing sub-system.  This is done by retrieving the
+   * value of the `FT2_DEBUG' environment variable.  It must be a list of
+   * toggles, separated by spaces, `;', or `,'.  Example:
+   *
+   *   export FT2_DEBUG="any:3 memory:7 stream:5"
+   *
+   * This requests that all levels be set to 3, except the trace level for
+   * the memory and stream components which are set to 7 and 5,
+   * respectively.
+   *
+   * See the file `include/freetype/internal/fttrace.h' for details of
+   * the available toggle names.
+   *
+   * The level must be between 0 and 7; 0 means quiet (except for serious
+   * runtime errors), and 7 means _very_ verbose.
+   */
   FT_BASE_DEF( void )
   ft_debug_init( void )
   {
diff --git a/src/base/ftfntfmt.c b/src/base/ftfntfmt.c
index a2900ce..610b6cf 100644
--- a/src/base/ftfntfmt.c
+++ b/src/base/ftfntfmt.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftfntfmt.c                                                             */
-/*                                                                         */
-/*    FreeType utility file for font formats (body).                       */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftfntfmt.c
+ *
+ *   FreeType utility file for font formats (body).
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
diff --git a/src/base/ftfstype.c b/src/base/ftfstype.c
index e6cdf6e..74e9e56 100644
--- a/src/base/ftfstype.c
+++ b/src/base/ftfstype.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftfstype.c                                                             */
-/*                                                                         */
-/*    FreeType utility file to access FSType data (body).                  */
-/*                                                                         */
-/*  Copyright 2008-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftfstype.c
+ *
+ *   FreeType utility file to access FSType data (body).
+ *
+ * Copyright 2008-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 #include <ft2build.h>
 #include FT_TYPE1_TABLES_H
diff --git a/src/base/ftgasp.c b/src/base/ftgasp.c
index 4f80bba..15e0ef0 100644
--- a/src/base/ftgasp.c
+++ b/src/base/ftgasp.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftgasp.c                                                               */
-/*                                                                         */
-/*    Access of TrueType's `gasp' table (body).                            */
-/*                                                                         */
-/*  Copyright 2007-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftgasp.c
+ *
+ *   Access of TrueType's `gasp' table (body).
+ *
+ * Copyright 2007-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
diff --git a/src/base/ftgloadr.c b/src/base/ftgloadr.c
index 020a2cf..475d5cc 100644
--- a/src/base/ftgloadr.c
+++ b/src/base/ftgloadr.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftgloadr.c                                                             */
-/*                                                                         */
-/*    The FreeType glyph loader (body).                                    */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg                       */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftgloadr.c
+ *
+ *   The FreeType glyph loader (body).
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -38,31 +38,31 @@
   /*************************************************************************/
   /*************************************************************************/
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The glyph loader is a simple object which is used to load a set of    */
-  /* glyphs easily.  It is critical for the correct loading of composites. */
-  /*                                                                       */
-  /* Ideally, one can see it as a stack of abstract `glyph' objects.       */
-  /*                                                                       */
-  /*   loader.base     Is really the bottom of the stack.  It describes a  */
-  /*                   single glyph image made of the juxtaposition of     */
-  /*                   several glyphs (those `in the stack').              */
-  /*                                                                       */
-  /*   loader.current  Describes the top of the stack, on which a new      */
-  /*                   glyph can be loaded.                                */
-  /*                                                                       */
-  /*   Rewind          Clears the stack.                                   */
-  /*   Prepare         Set up `loader.current' for addition of a new glyph */
-  /*                   image.                                              */
-  /*   Add             Add the `current' glyph image to the `base' one,    */
-  /*                   and prepare for another one.                        */
-  /*                                                                       */
-  /* The glyph loader is now a base object.  Each driver used to           */
-  /* re-implement it in one way or the other, which wasted code and        */
-  /* energy.                                                               */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * The glyph loader is a simple object which is used to load a set of
+   * glyphs easily.  It is critical for the correct loading of composites.
+   *
+   * Ideally, one can see it as a stack of abstract `glyph' objects.
+   *
+   *   loader.base     Is really the bottom of the stack.  It describes a
+   *                   single glyph image made of the juxtaposition of
+   *                   several glyphs (those `in the stack').
+   *
+   *   loader.current  Describes the top of the stack, on which a new
+   *                   glyph can be loaded.
+   *
+   *   Rewind          Clears the stack.
+   *   Prepare         Set up `loader.current' for addition of a new glyph
+   *                   image.
+   *   Add             Add the `current' glyph image to the `base' one,
+   *                   and prepare for another one.
+   *
+   * The glyph loader is now a base object.  Each driver used to
+   * re-implement it in one way or the other, which wasted code and
+   * energy.
+   *
+   */
 
 
   /* create a new glyph loader */
diff --git a/src/base/ftglyph.c b/src/base/ftglyph.c
index 82e6947..c326e9b 100644
--- a/src/base/ftglyph.c
+++ b/src/base/ftglyph.c
@@ -1,31 +1,31 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftglyph.c                                                              */
-/*                                                                         */
-/*    FreeType convenience functions to handle glyphs (body).              */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-  /*************************************************************************/
-  /*                                                                       */
-  /*  This file contains the definition of several convenience functions   */
-  /*  that can be used by client applications to easily retrieve glyph     */
-  /*  bitmaps and outlines from a given face.                              */
-  /*                                                                       */
-  /*  These functions should be optional if you are writing a font server  */
-  /*  or text layout engine on top of FreeType.  However, they are pretty  */
-  /*  handy for many other simple uses of the library.                     */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * ftglyph.c
+ *
+ *   FreeType convenience functions to handle glyphs (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+  /**************************************************************************
+   *
+   * This file contains the definition of several convenience functions
+   * that can be used by client applications to easily retrieve glyph
+   * bitmaps and outlines from a given face.
+   *
+   * These functions should be optional if you are writing a font server
+   * or text layout engine on top of FreeType.  However, they are pretty
+   * handy for many other simple uses of the library.
+   *
+   */
 
 
 #include <ft2build.h>
@@ -37,12 +37,12 @@
 #include FT_INTERNAL_OBJECTS_H
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_glyph
 
diff --git a/src/base/ftgxval.c b/src/base/ftgxval.c
index 19e2d6a..f3961e2 100644
--- a/src/base/ftgxval.c
+++ b/src/base/ftgxval.c
@@ -1,28 +1,28 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftgxval.c                                                              */
-/*                                                                         */
-/*    FreeType API for validating TrueTypeGX/AAT tables (body).            */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  Masatake YAMATO, Redhat K.K,                                           */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* gxvalid is derived from both gxlayout module and otvalid module.        */
-/* Development of gxlayout is supported by the Information-technology      */
-/* Promotion Agency(IPA), Japan.                                           */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftgxval.c
+ *
+ *   FreeType API for validating TrueTypeGX/AAT tables (body).
+ *
+ * Copyright 2004-2018 by
+ * Masatake YAMATO, Redhat K.K,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ *
+ * gxvalid is derived from both gxlayout module and otvalid module.
+ * Development of gxlayout is supported by the Information-technology
+ * Promotion Agency(IPA), Japan.
+ *
+ */
 
 
 #include <ft2build.h>
diff --git a/src/base/fthash.c b/src/base/fthash.c
index 21bc8dd..387e6d2 100644
--- a/src/base/fthash.c
+++ b/src/base/fthash.c
@@ -1,10 +1,10 @@
-/***************************************************************************/
-/*                                                                         */
-/*  fthash.c                                                               */
-/*                                                                         */
-/*    Hashing functions (body).                                            */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * fthash.c
+ *
+ *   Hashing functions (body).
+ *
+ */
 
 /*
  * Copyright 2000 Computing Research Labs, New Mexico State University
@@ -30,13 +30,13 @@
  * THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  */
 
-  /*************************************************************************/
-  /*                                                                       */
-  /*  This file is based on code from bdf.c,v 1.22 2000/03/16 20:08:50     */
-  /*                                                                       */
-  /*  taken from Mark Leisher's xmbdfed package                            */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * This file is based on code from bdf.c,v 1.22 2000/03/16 20:08:50
+   *
+   * taken from Mark Leisher's xmbdfed package
+   *
+   */
 
 
 #include <ft2build.h>
diff --git a/src/base/ftinit.c b/src/base/ftinit.c
index 5c281e9..e0f2ccd 100644
--- a/src/base/ftinit.c
+++ b/src/base/ftinit.c
@@ -1,40 +1,40 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftinit.c                                                               */
-/*                                                                         */
-/*    FreeType initialization layer (body).                                */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-  /*************************************************************************/
-  /*                                                                       */
-  /*  The purpose of this file is to implement the following two           */
-  /*  functions:                                                           */
-  /*                                                                       */
-  /*  FT_Add_Default_Modules():                                            */
-  /*     This function is used to add the set of default modules to a      */
-  /*     fresh new library object.  The set is taken from the header file  */
-  /*     `freetype/config/ftmodule.h'.  See the document `FreeType 2.0     */
-  /*     Build System' for more information.                               */
-  /*                                                                       */
-  /*  FT_Init_FreeType():                                                  */
-  /*     This function creates a system object for the current platform,   */
-  /*     builds a library out of it, then calls FT_Default_Drivers().      */
-  /*                                                                       */
-  /*  Note that even if FT_Init_FreeType() uses the implementation of the  */
-  /*  system object defined at build time, client applications are still   */
-  /*  able to provide their own `ftsystem.c'.                              */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * ftinit.c
+ *
+ *   FreeType initialization layer (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+  /**************************************************************************
+   *
+   * The purpose of this file is to implement the following two
+   * functions:
+   *
+   * FT_Add_Default_Modules():
+   *   This function is used to add the set of default modules to a
+   *   fresh new library object.  The set is taken from the header file
+   *   `freetype/config/ftmodule.h'.  See the document `FreeType 2.0
+   *   Build System' for more information.
+   *
+   * FT_Init_FreeType():
+   *   This function creates a system object for the current platform,
+   *   builds a library out of it, then calls FT_Default_Drivers().
+   *
+   * Note that even if FT_Init_FreeType() uses the implementation of the
+   * system object defined at build time, client applications are still
+   * able to provide their own `ftsystem.c'.
+   *
+   */
 
 
 #include <ft2build.h>
@@ -44,12 +44,12 @@
 #include FT_MODULE_H
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_init
 
diff --git a/src/base/ftlcdfil.c b/src/base/ftlcdfil.c
index 213f3f1..341fae6 100644
--- a/src/base/ftlcdfil.c
+++ b/src/base/ftlcdfil.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftlcdfil.c                                                             */
-/*                                                                         */
-/*    FreeType API for color filtering of subpixel bitmap glyphs (body).   */
-/*                                                                         */
-/*  Copyright 2006-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftlcdfil.c
+ *
+ *   FreeType API for color filtering of subpixel bitmap glyphs (body).
+ *
+ * Copyright 2006-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
diff --git a/src/base/ftmac.c b/src/base/ftmac.c
index fd4c0cc..878dd3c 100644
--- a/src/base/ftmac.c
+++ b/src/base/ftmac.c
@@ -1,23 +1,23 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftmac.c                                                                */
-/*                                                                         */
-/*    Mac FOND support.  Written by address@hidden                    */
-/*  Heavily modified by mpsuzuki, George Williams, and Sean McBride.       */
-/*                                                                         */
-/*  This file is for Mac OS X only; see builds/mac/ftoldmac.c for          */
-/*  classic platforms built by MPW.                                        */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  Just van Rossum, David Turner, Robert Wilhelm, and Werner Lemberg.     */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftmac.c
+ *
+ *   Mac FOND support.  Written by address@hidden
+ * Heavily modified by mpsuzuki, George Williams, and Sean McBride.
+ *
+ * This file is for Mac OS X only; see builds/mac/ftoldmac.c for
+ * classic platforms built by MPW.
+ *
+ * Copyright 1996-2018 by
+ * Just van Rossum, David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
   /*
@@ -954,17 +954,17 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_New_Face                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This is the Mac-specific implementation of FT_New_Face.  In        */
-  /*    addition to the standard FT_New_Face() functionality, it also      */
-  /*    accepts pathnames to Mac suitcase files.  For further              */
-  /*    documentation see the original FT_New_Face() in freetype.h.        */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   FT_New_Face
+   *
+   * @Description:
+   *   This is the Mac-specific implementation of FT_New_Face.  In
+   *   addition to the standard FT_New_Face() functionality, it also
+   *   accepts pathnames to Mac suitcase files.  For further
+   *   documentation see the original FT_New_Face() in freetype.h.
+   */
   FT_EXPORT_DEF( FT_Error )
   FT_New_Face( FT_Library   library,
                const char*  pathname,
@@ -995,17 +995,17 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_New_Face_From_FSRef                                             */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    FT_New_Face_From_FSRef is identical to FT_New_Face except it       */
-  /*    accepts an FSRef instead of a path.                                */
-  /*                                                                       */
-  /* This function is deprecated because Carbon data types (FSRef)         */
-  /* are not cross-platform, and thus not suitable for the FreeType API.   */
+  /**************************************************************************
+   *
+   * @Function:
+   *   FT_New_Face_From_FSRef
+   *
+   * @Description:
+   *   FT_New_Face_From_FSRef is identical to FT_New_Face except it
+   *   accepts an FSRef instead of a path.
+   *
+   * This function is deprecated because Carbon data types (FSRef)
+   */
   FT_EXPORT_DEF( FT_Error )
   FT_New_Face_From_FSRef( FT_Library    library,
                           const FSRef*  ref,
@@ -1040,16 +1040,16 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_New_Face_From_FSSpec                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    FT_New_Face_From_FSSpec is identical to FT_New_Face except it      */
-  /*    accepts an FSSpec instead of a path.                               */
-  /*                                                                       */
-  /* This function is deprecated because FSSpec is deprecated in Mac OS X  */
+  /**************************************************************************
+   *
+   * @Function:
+   *   FT_New_Face_From_FSSpec
+   *
+   * @Description:
+   *   FT_New_Face_From_FSSpec is identical to FT_New_Face except it
+   *   accepts an FSSpec instead of a path.
+   *
+   */
   FT_EXPORT_DEF( FT_Error )
   FT_New_Face_From_FSSpec( FT_Library     library,
                            const FSSpec*  spec,
diff --git a/src/base/ftmm.c b/src/base/ftmm.c
index 800441b..b0d9d4b 100644
--- a/src/base/ftmm.c
+++ b/src/base/ftmm.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftmm.c                                                                 */
-/*                                                                         */
-/*    Multiple Master font support (body).                                 */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftmm.c
+ *
+ *   Multiple Master font support (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -25,12 +25,12 @@
 #include FT_SERVICE_METRICS_VARIATIONS_H
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_mm
 
diff --git a/src/base/ftobjs.c b/src/base/ftobjs.c
index 4770007..364d2ad 100644
--- a/src/base/ftobjs.c
+++ b/src/base/ftobjs.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftobjs.c                                                               */
-/*                                                                         */
-/*    The FreeType private base classes (body).                            */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftobjs.c
+ *
+ *   The FreeType private base classes (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -259,12 +259,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_objs
 
@@ -1185,20 +1185,20 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    find_unicode_charmap                                               */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This function finds a Unicode charmap, if there is one.            */
-  /*    And if there is more than one, it tries to favour the more         */
-  /*    extensive one, i.e., one that supports UCS-4 against those which   */
-  /*    are limited to the BMP (said UCS-2 encoding.)                      */
-  /*                                                                       */
-  /*    This function is called from open_face() (just below), and also    */
-  /*    from FT_Select_Charmap( ..., FT_ENCODING_UNICODE ).                */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   find_unicode_charmap
+   *
+   * @Description:
+   *   This function finds a Unicode charmap, if there is one.
+   *   And if there is more than one, it tries to favour the more
+   *   extensive one, i.e., one that supports UCS-4 against those which
+   *   are limited to the BMP (said UCS-2 encoding.)
+   *
+   *   This function is called from open_face() (just below), and also
+   *   from FT_Select_Charmap( ..., FT_ENCODING_UNICODE ).
+   */
   static FT_Error
   find_unicode_charmap( FT_Face  face )
   {
@@ -1215,26 +1215,26 @@
       return FT_THROW( Invalid_CharMap_Handle );
 
     /*
-     *  The original TrueType specification(s) only specified charmap
-     *  formats that are capable of mapping 8 or 16 bit character codes to
-     *  glyph indices.
+     * The original TrueType specification(s) only specified charmap
+     * formats that are capable of mapping 8 or 16 bit character codes to
+     * glyph indices.
      *
-     *  However, recent updates to the Apple and OpenType specifications
-     *  introduced new formats that are capable of mapping 32-bit character
-     *  codes as well.  And these are already used on some fonts, mainly to
-     *  map non-BMP Asian ideographs as defined in Unicode.
+     * However, recent updates to the Apple and OpenType specifications
+     * introduced new formats that are capable of mapping 32-bit character
+     * codes as well.  And these are already used on some fonts, mainly to
+     * map non-BMP Asian ideographs as defined in Unicode.
      *
-     *  For compatibility purposes, these fonts generally come with
-     *  *several* Unicode charmaps:
+     * For compatibility purposes, these fonts generally come with
+     * *several* Unicode charmaps:
      *
-     *   - One of them in the "old" 16-bit format, that cannot access
-     *     all glyphs in the font.
+     * - One of them in the "old" 16-bit format, that cannot access
+     *   all glyphs in the font.
      *
-     *   - Another one in the "new" 32-bit format, that can access all
-     *     the glyphs.
+     * - Another one in the "new" 32-bit format, that can access all
+     *   the glyphs.
      *
-     *  This function has been written to always favor a 32-bit charmap
-     *  when found.  Otherwise, a 16-bit one is returned when found.
+     * This function has been written to always favor a 32-bit charmap
+     * when found.  Otherwise, a 16-bit one is returned when found.
      */
 
     /* Since the `interesting' table, with IDs (3,10), is normally the */
@@ -1278,15 +1278,15 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    find_variant_selector_charmap                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This function finds the variant selector charmap, if there is one. */
-  /*    There can only be one (platform=0, specific=5, format=14).         */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   find_variant_selector_charmap
+   *
+   * @Description:
+   *   This function finds the variant selector charmap, if there is one.
+   *   There can only be one (platform=0, specific=5, format=14).
+   */
   static FT_CharMap
   find_variant_selector_charmap( FT_Face  face )
   {
@@ -1317,14 +1317,14 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    open_face                                                          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This function does some work for FT_Open_Face().                   */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   open_face
+   *
+   * @Description:
+   *   This function does some work for FT_Open_Face().
+   */
   static FT_Error
   open_face( FT_Driver      driver,
              FT_Stream      *astream,
@@ -2205,7 +2205,7 @@
     FT_Error   error  = FT_ERR( Unknown_File_Format );
     FT_UInt    i;
 
-    char *     file_names[FT_RACCESS_N_RULES];
+    char*      file_names[FT_RACCESS_N_RULES];
     FT_Long    offsets[FT_RACCESS_N_RULES];
     FT_Error   errors[FT_RACCESS_N_RULES];
     FT_Bool    is_darwin_vfs, vfs_rfork_has_no_font = FALSE; /* not tested */
@@ -4753,21 +4753,22 @@
   /*************************************************************************/
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Destroy_Module                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Destroys a given module object.  For drivers, this also destroys   */
-  /*    all child faces.                                                   */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    module :: A handle to the target driver object.                    */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The driver _must_ be LOCKED!                                       */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Destroy_Module
+   *
+   * @Description:
+   *   Destroys a given module object.  For drivers, this also destroys
+   *   all child faces.
+   *
+   * @InOut:
+   *   module ::
+   *     A handle to the target driver object.
+   *
+   * @Note:
+   *   The driver _must_ be LOCKED!
+   */
   static void
   Destroy_Module( FT_Module  module )
   {
@@ -5301,10 +5302,10 @@
      *
      * Example:
      *
-     *  - the cff font driver uses the pshinter module in cff_size_done
-     *  - if the pshinter module is destroyed before the cff font driver,
-     *    opened FT_Face objects managed by the driver are not properly
-     *    destroyed, resulting in a memory leak
+     * - the cff font driver uses the pshinter module in cff_size_done
+     * - if the pshinter module is destroyed before the cff font driver,
+     *   opened FT_Face objects managed by the driver are not properly
+     *   destroyed, resulting in a memory leak
      *
      * Some faces are dependent on other faces, like Type42 faces that
      * depend on TrueType faces synthesized internally.
diff --git a/src/base/ftotval.c b/src/base/ftotval.c
index a2944a7..50825bd 100644
--- a/src/base/ftotval.c
+++ b/src/base/ftotval.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftotval.c                                                              */
-/*                                                                         */
-/*    FreeType API for validating OpenType tables (body).                  */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftotval.c
+ *
+ *   FreeType API for validating OpenType tables (body).
+ *
+ * Copyright 2004-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 #include <ft2build.h>
 #include FT_INTERNAL_DEBUG_H
diff --git a/src/base/ftoutln.c b/src/base/ftoutln.c
index cb91321..2d2fc20 100644
--- a/src/base/ftoutln.c
+++ b/src/base/ftoutln.c
@@ -1,26 +1,26 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftoutln.c                                                              */
-/*                                                                         */
-/*    FreeType outline management (body).                                  */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* All functions are declared in freetype.h.                             */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * ftoutln.c
+ *
+ *   FreeType outline management (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+
+  /**************************************************************************
+   *
+   * All functions are declared in freetype.h.
+   *
+   */
 
 
 #include <ft2build.h>
@@ -31,12 +31,12 @@
 #include FT_TRIGONOMETRY_H
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_outline
 
diff --git a/src/base/ftpatent.c b/src/base/ftpatent.c
index e23ee2e..24331c1 100644
--- a/src/base/ftpatent.c
+++ b/src/base/ftpatent.c
@@ -1,20 +1,20 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftpatent.c                                                             */
-/*                                                                         */
-/*    FreeType API for checking patented TrueType bytecode instructions    */
-/*    (body).  Obsolete, retained for backward compatibility.              */
-/*                                                                         */
-/*  Copyright 2007-2018 by                                                 */
-/*  David Turner.                                                          */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftpatent.c
+ *
+ *   FreeType API for checking patented TrueType bytecode instructions
+ *   (body).  Obsolete, retained for backward compatibility.
+ *
+ * Copyright 2007-2018 by
+ * David Turner.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 #include <ft2build.h>
 #include FT_FREETYPE_H
diff --git a/src/base/ftpfr.c b/src/base/ftpfr.c
index bfe1352..2761ad0 100644
--- a/src/base/ftpfr.c
+++ b/src/base/ftpfr.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftpfr.c                                                                */
-/*                                                                         */
-/*    FreeType API for accessing PFR-specific data (body).                 */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftpfr.c
+ *
+ *   FreeType API for accessing PFR-specific data (body).
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 #include <ft2build.h>
 #include FT_INTERNAL_DEBUG_H
diff --git a/src/base/ftpsprop.c b/src/base/ftpsprop.c
index 459b5e6..9c5344a 100644
--- a/src/base/ftpsprop.c
+++ b/src/base/ftpsprop.c
@@ -1,20 +1,20 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftpsprop.c                                                             */
-/*                                                                         */
-/*    Get and set properties of PostScript drivers (body).                 */
-/*    See `ftdriver.h' for available properties.                           */
-/*                                                                         */
-/*  Copyright 2017-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftpsprop.c
+ *
+ *   Get and set properties of PostScript drivers (body).
+ *   See `ftdriver.h' for available properties.
+ *
+ * Copyright 2017-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -25,12 +25,12 @@
 #include FT_INTERNAL_POSTSCRIPT_PROPS_H
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_psprops
 
diff --git a/src/base/ftrfork.c b/src/base/ftrfork.c
index a08e884..c61765b 100644
--- a/src/base/ftrfork.c
+++ b/src/base/ftrfork.c
@@ -1,27 +1,27 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftrfork.c                                                              */
-/*                                                                         */
-/*    Embedded resource forks accessor (body).                             */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  Masatake YAMATO and Redhat K.K.                                        */
-/*                                                                         */
-/*  FT_Raccess_Get_HeaderInfo() and raccess_guess_darwin_hfsplus() are     */
-/*  derived from ftobjs.c.                                                 */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/* Development of the code in this file is support of                      */
-/* Information-technology Promotion Agency, Japan.                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftrfork.c
+ *
+ *   Embedded resource forks accessor (body).
+ *
+ * Copyright 2004-2018 by
+ * Masatake YAMATO and Redhat K.K.
+ *
+ * FT_Raccess_Get_HeaderInfo() and raccess_guess_darwin_hfsplus() are
+ * derived from ftobjs.c.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ * Development of the code in this file is support of
+ * Information-technology Promotion Agency, Japan.
+ */
 
 
 #include <ft2build.h>
@@ -438,7 +438,7 @@
 
   static FT_Error
   raccess_guess_linux_double_from_file_name( FT_Library  library,
-                                             char *      file_name,
+                                             char*       file_name,
                                              FT_Long    *result_offset );
 
   static char *
@@ -847,7 +847,7 @@
   {
     FT_Open_Args  args2;
     FT_Stream     stream2;
-    char *        nouse = NULL;
+    char*         nouse = NULL;
     FT_Error      error;
 
 
@@ -909,9 +909,9 @@
 #else   /* !FT_CONFIG_OPTION_GUESSING_EMBEDDED_RFORK */
 
 
-  /*************************************************************************/
-  /*                  Dummy function; just sets errors                     */
-  /*************************************************************************/
+  /**************************************************************************
+   *                 Dummy function; just sets errors
+   */
 
   FT_BASE_DEF( void )
   FT_Raccess_Guess( FT_Library  library,
diff --git a/src/base/ftsnames.c b/src/base/ftsnames.c
index fd747ed..9135e48 100644
--- a/src/base/ftsnames.c
+++ b/src/base/ftsnames.c
@@ -1,22 +1,22 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftsnames.c                                                             */
-/*                                                                         */
-/*    Simple interface to access SFNT name tables (which are used          */
-/*    to hold font names, copyright info, notices, etc.) (body).           */
-/*                                                                         */
-/*    This is _not_ used to retrieve glyph names!                          */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftsnames.c
+ *
+ *   Simple interface to access SFNT name tables (which are used
+ *   to hold font names, copyright info, notices, etc.) (body).
+ *
+ *   This is _not_ used to retrieve glyph names!
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
diff --git a/src/base/ftstream.c b/src/base/ftstream.c
index 18df7dc..031d69c 100644
--- a/src/base/ftstream.c
+++ b/src/base/ftstream.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftstream.c                                                             */
-/*                                                                         */
-/*    I/O stream support (body).                                           */
-/*                                                                         */
-/*  Copyright 2000-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftstream.c
+ *
+ *   I/O stream support (body).
+ *
+ * Copyright 2000-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -21,12 +21,12 @@
 #include FT_INTERNAL_DEBUG_H
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_stream
 
diff --git a/src/base/ftstroke.c b/src/base/ftstroke.c
index ffbeb06..4455e7c 100644
--- a/src/base/ftstroke.c
+++ b/src/base/ftstroke.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftstroke.c                                                             */
-/*                                                                         */
-/*    FreeType path stroker (body).                                        */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftstroke.c
+ *
+ *   FreeType path stroker (body).
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -2082,8 +2082,8 @@
   /* documentation is in ftstroke.h */
 
   /*
-   *  The following is very similar to FT_Outline_Decompose, except
-   *  that we do support opened paths, and do not scale the outline.
+   * The following is very similar to FT_Outline_Decompose, except
+   * that we do support opened paths, and do not scale the outline.
    */
   FT_EXPORT_DEF( FT_Error )
   FT_Stroker_ParseOutline( FT_Stroker   stroker,
diff --git a/src/base/ftsynth.c b/src/base/ftsynth.c
index c283467..5539105 100644
--- a/src/base/ftsynth.c
+++ b/src/base/ftsynth.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftsynth.c                                                              */
-/*                                                                         */
-/*    FreeType synthesizing code for emboldening and slanting (body).      */
-/*                                                                         */
-/*  Copyright 2000-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftsynth.c
+ *
+ *   FreeType synthesizing code for emboldening and slanting (body).
+ *
+ * Copyright 2000-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -24,12 +24,12 @@
 #include FT_BITMAP_H
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_synth
 
diff --git a/src/base/ftsystem.c b/src/base/ftsystem.c
index 6adebdb..d761ad9 100644
--- a/src/base/ftsystem.c
+++ b/src/base/ftsystem.c
@@ -1,28 +1,28 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftsystem.c                                                             */
-/*                                                                         */
-/*    ANSI-specific FreeType low-level system interface (body).            */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This file contains the default interface used by FreeType to access   */
-  /* low-level, i.e. memory management, i/o access as well as thread       */
-  /* synchronisation.  It can be replaced by user-specific routines if     */
-  /* necessary.                                                            */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * ftsystem.c
+ *
+ *   ANSI-specific FreeType low-level system interface (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+  /**************************************************************************
+   *
+   * This file contains the default interface used by FreeType to access
+   * low-level, i.e. memory management, i/o access as well as thread
+   * synchronisation.  It can be replaced by user-specific routines if
+   * necessary.
+   *
+   */
 
 
 #include <ft2build.h>
@@ -34,37 +34,39 @@
 #include FT_TYPES_H
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /*                       MEMORY MANAGEMENT INTERFACE                     */
-  /*                                                                       */
-  /*************************************************************************/
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* It is not necessary to do any error checking for the                  */
-  /* allocation-related functions.  This will be done by the higher level  */
-  /* routines like ft_mem_alloc() or ft_mem_realloc().                     */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    ft_alloc                                                           */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    The memory allocation function.                                    */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    memory :: A pointer to the memory object.                          */
-  /*                                                                       */
-  /*    size   :: The requested size in bytes.                             */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    The address of newly allocated block.                              */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   *                      MEMORY MANAGEMENT INTERFACE
+   *
+   */
+
+  /**************************************************************************
+   *
+   * It is not necessary to do any error checking for the
+   * allocation-related functions.  This will be done by the higher level
+   * routines like ft_mem_alloc() or ft_mem_realloc().
+   *
+   */
+
+
+  /**************************************************************************
+   *
+   * @Function:
+   *   ft_alloc
+   *
+   * @Description:
+   *   The memory allocation function.
+   *
+   * @Input:
+   *   memory ::
+   *     A pointer to the memory object.
+   *
+   *   size ::
+   *     The requested size in bytes.
+   *
+   * @Return:
+   *   The address of newly allocated block.
+   */
   FT_CALLBACK_DEF( void* )
   ft_alloc( FT_Memory  memory,
             long       size )
@@ -75,26 +77,30 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    ft_realloc                                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    The memory reallocation function.                                  */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    memory   :: A pointer to the memory object.                        */
-  /*                                                                       */
-  /*    cur_size :: The current size of the allocated memory block.        */
-  /*                                                                       */
-  /*    new_size :: The newly requested size in bytes.                     */
-  /*                                                                       */
-  /*    block    :: The current address of the block in memory.            */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    The address of the reallocated memory block.                       */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   ft_realloc
+   *
+   * @Description:
+   *   The memory reallocation function.
+   *
+   * @Input:
+   *   memory ::
+   *     A pointer to the memory object.
+   *
+   *   cur_size ::
+   *     The current size of the allocated memory block.
+   *
+   *   new_size ::
+   *     The newly requested size in bytes.
+   *
+   *   block ::
+   *     The current address of the block in memory.
+   *
+   * @Return:
+   *   The address of the reallocated memory block.
+   */
   FT_CALLBACK_DEF( void* )
   ft_realloc( FT_Memory  memory,
               long       cur_size,
@@ -108,19 +114,21 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    ft_free                                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    The memory release function.                                       */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    memory  :: A pointer to the memory object.                         */
-  /*                                                                       */
-  /*    block   :: The address of block in memory to be freed.             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   ft_free
+   *
+   * @Description:
+   *   The memory release function.
+   *
+   * @Input:
+   *   memory ::
+   *     A pointer to the memory object.
+   *
+   *   block ::
+   *     The address of block in memory to be freed.
+   */
   FT_CALLBACK_DEF( void )
   ft_free( FT_Memory  memory,
            void*      block )
@@ -131,20 +139,20 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /*                     RESOURCE MANAGEMENT INTERFACE                     */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   *                    RESOURCE MANAGEMENT INTERFACE
+   *
+   */
 
 #ifndef FT_CONFIG_OPTION_DISABLE_STREAM_SUPPORT
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_io
 
@@ -153,17 +161,18 @@
 #define STREAM_FILE( stream )  ( (FT_FILE*)stream->descriptor.pointer )
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    ft_ansi_stream_close                                               */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    The function to close a stream.                                    */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    stream :: A pointer to the stream object.                          */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   ft_ansi_stream_close
+   *
+   * @Description:
+   *   The function to close a stream.
+   *
+   * @Input:
+   *   stream ::
+   *     A pointer to the stream object.
+   */
   FT_CALLBACK_DEF( void )
   ft_ansi_stream_close( FT_Stream  stream )
   {
@@ -175,28 +184,32 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    ft_ansi_stream_io                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    The function to open a stream.                                     */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    stream :: A pointer to the stream object.                          */
-  /*                                                                       */
-  /*    offset :: The position in the data stream to start reading.        */
-  /*                                                                       */
-  /*    buffer :: The address of buffer to store the read data.            */
-  /*                                                                       */
-  /*    count  :: The number of bytes to read from the stream.             */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    The number of bytes actually read.  If `count' is zero (this is,   */
-  /*    the function is used for seeking), a non-zero return value         */
-  /*    indicates an error.                                                */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   ft_ansi_stream_io
+   *
+   * @Description:
+   *   The function to open a stream.
+   *
+   * @Input:
+   *   stream ::
+   *     A pointer to the stream object.
+   *
+   *   offset ::
+   *     The position in the data stream to start reading.
+   *
+   *   buffer ::
+   *     The address of buffer to store the read data.
+   *
+   *   count ::
+   *     The number of bytes to read from the stream.
+   *
+   * @Return:
+   *   The number of bytes actually read.  If `count' is zero (this is,
+   *   the function is used for seeking), a non-zero return value
+   *   indicates an error.
+   */
   FT_CALLBACK_DEF( unsigned long )
   ft_ansi_stream_io( FT_Stream       stream,
                      unsigned long   offset,
diff --git a/src/base/fttrigon.c b/src/base/fttrigon.c
index d6dd098..6a10492 100644
--- a/src/base/fttrigon.c
+++ b/src/base/fttrigon.c
@@ -1,33 +1,33 @@
-/***************************************************************************/
-/*                                                                         */
-/*  fttrigon.c                                                             */
-/*                                                                         */
-/*    FreeType trigonometric functions (body).                             */
-/*                                                                         */
-/*  Copyright 2001-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This is a fixed-point CORDIC implementation of trigonometric          */
-  /* functions as well as transformations between Cartesian and polar      */
-  /* coordinates.  The angles are represented as 16.16 fixed-point values  */
-  /* in degrees, i.e., the angular resolution is 2^-16 degrees.  Note that */
-  /* only vectors longer than 2^16*180/pi (or at least 22 bits) on a       */
-  /* discrete Cartesian grid can have the same or better angular           */
-  /* resolution.  Therefore, to maintain this precision, some functions    */
-  /* require an interim upscaling of the vectors, whereas others operate   */
-  /* with 24-bit long vectors directly.                                    */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * fttrigon.c
+ *
+ *   FreeType trigonometric functions (body).
+ *
+ * Copyright 2001-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+  /**************************************************************************
+   *
+   * This is a fixed-point CORDIC implementation of trigonometric
+   * functions as well as transformations between Cartesian and polar
+   * coordinates.  The angles are represented as 16.16 fixed-point values
+   * in degrees, i.e., the angular resolution is 2^-16 degrees.  Note that
+   * only vectors longer than 2^16*180/pi (or at least 22 bits) on a
+   * discrete Cartesian grid can have the same or better angular
+   * resolution.  Therefore, to maintain this precision, some functions
+   * require an interim upscaling of the vectors, whereas others operate
+   * with 24-bit long vectors directly.
+   *
+   */
 
 #include <ft2build.h>
 #include FT_INTERNAL_OBJECTS_H
diff --git a/src/base/fttype1.c b/src/base/fttype1.c
index aa8f8cc..229b0ac 100644
--- a/src/base/fttype1.c
+++ b/src/base/fttype1.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  fttype1.c                                                              */
-/*                                                                         */
-/*    FreeType utility file for PS names support (body).                   */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * fttype1.c
+ *
+ *   FreeType utility file for PS names support (body).
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
diff --git a/src/base/ftutil.c b/src/base/ftutil.c
index 4de5f2c..826541c 100644
--- a/src/base/ftutil.c
+++ b/src/base/ftutil.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftutil.c                                                               */
-/*                                                                         */
-/*    FreeType utility file for memory and list management (body).         */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftutil.c
+ *
+ *   FreeType utility file for memory and list management (body).
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -23,12 +23,12 @@
 #include FT_LIST_H
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_memory
 
diff --git a/src/base/ftwinfnt.c b/src/base/ftwinfnt.c
index 11bd28a..bd6548f 100644
--- a/src/base/ftwinfnt.c
+++ b/src/base/ftwinfnt.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftwinfnt.c                                                             */
-/*                                                                         */
-/*    FreeType API for accessing Windows FNT specific info (body).         */
-/*                                                                         */
-/*  Copyright 2003-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftwinfnt.c
+ *
+ *   FreeType API for accessing Windows FNT specific info (body).
+ *
+ * Copyright 2003-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
diff --git a/src/bdf/bdf.h b/src/bdf/bdf.h
index 9012727..a6ba82e 100644
--- a/src/bdf/bdf.h
+++ b/src/bdf/bdf.h
@@ -51,11 +51,11 @@ FT_BEGIN_HEADER
 /* end of bdfP.h */
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* BDF font options macros and types.                                    */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * BDF font options macros and types.
+   *
+   */
 
 
 #define BDF_CORRECT_METRICS  0x01 /* Correct invalid metrics when loading. */
@@ -93,11 +93,11 @@ FT_BEGIN_HEADER
                              void*           client_data );
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* BDF font property macros and types.                                   */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * BDF font property macros and types.
+   *
+   */
 
 
 #define BDF_ATOM      1
@@ -123,11 +123,11 @@ FT_BEGIN_HEADER
   } bdf_property_t;
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* BDF font metric and glyph types.                                      */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * BDF font metric and glyph types.
+   *
+   */
 
 
   typedef struct  bdf_bbx_t_
@@ -226,11 +226,11 @@ FT_BEGIN_HEADER
   } bdf_font_t;
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Types for load/save callbacks.                                        */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * Types for load/save callbacks.
+   *
+   */
 
 
   /* Error codes. */
@@ -247,11 +247,11 @@ FT_BEGIN_HEADER
 #define BDF_INVALID_LINE      -100
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* BDF font API.                                                         */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * BDF font API.
+   *
+   */
 
   FT_LOCAL( FT_Error )
   bdf_load_font( FT_Stream       stream,
diff --git a/src/bdf/bdfdrivr.c b/src/bdf/bdfdrivr.c
index ca937f8..ecb4128 100644
--- a/src/bdf/bdfdrivr.c
+++ b/src/bdf/bdfdrivr.c
@@ -41,12 +41,12 @@ THE SOFTWARE.
 #include "bdferror.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_bdfdriver
 
@@ -863,7 +863,7 @@ THE SOFTWARE.
 
  /*
   *
-  *  BDF SERVICE
+  * BDF SERVICE
   *
   */
 
@@ -939,7 +939,7 @@ THE SOFTWARE.
 
  /*
   *
-  *  SERVICES LIST
+  * SERVICES LIST
   *
   */
 
diff --git a/src/bdf/bdferror.h b/src/bdf/bdferror.h
index b462c7d..dbe41c0 100644
--- a/src/bdf/bdferror.h
+++ b/src/bdf/bdferror.h
@@ -20,11 +20,11 @@
  * THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  */
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* This file is used to define the BDF error enumeration constants.      */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * This file is used to define the BDF error enumeration constants.
+   *
+   */
 
 #ifndef BDFERROR_H_
 #define BDFERROR_H_
diff --git a/src/bdf/bdflib.c b/src/bdf/bdflib.c
index 2f5c99d..1b8d460 100644
--- a/src/bdf/bdflib.c
+++ b/src/bdf/bdflib.c
@@ -22,13 +22,13 @@
  * THE USE OR OTHER DEALINGS IN THE SOFTWARE.
  */
 
-  /*************************************************************************/
-  /*                                                                       */
-  /*  This file is based on bdf.c,v 1.22 2000/03/16 20:08:50               */
-  /*                                                                       */
-  /*  taken from Mark Leisher's xmbdfed package                            */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * This file is based on bdf.c,v 1.22 2000/03/16 20:08:50
+   *
+   * taken from Mark Leisher's xmbdfed package
+   *
+   */
 
 
 #include <ft2build.h>
@@ -42,21 +42,21 @@
 #include "bdferror.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_bdflib
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Default BDF font options.                                             */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * Default BDF font options.
+   *
+   */
 
 
   static const bdf_options_t  _bdf_opts =
@@ -68,11 +68,11 @@
   };
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Builtin BDF font properties.                                          */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * Builtin BDF font properties.
+   *
+   */
 
   /* List of most properties that might appear in a font.  Doesn't include */
   /* the RAW_* and AXIS_* properties in X11R6 polymorphic fonts.           */
@@ -219,11 +219,11 @@
 #define DBGMSG2  " (0x%lX)\n"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Utility types and functions.                                          */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * Utility types and functions.
+   *
+   */
 
 
   /* Function type for parsing lines of a BDF font. */
@@ -900,11 +900,11 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* BDF font file parsing flags and functions.                            */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * BDF font file parsing flags and functions.
+   *
+   */
 
 
   /* Parse flags. */
@@ -2196,11 +2196,11 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* API.                                                                  */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * API.
+   *
+   */
 
 
   FT_LOCAL_DEF( FT_Error )
diff --git a/src/bzip2/ftbzip2.c b/src/bzip2/ftbzip2.c
index 4115518..0f6ab15 100644
--- a/src/bzip2/ftbzip2.c
+++ b/src/bzip2/ftbzip2.c
@@ -1,25 +1,25 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftbzip2.c                                                              */
-/*                                                                         */
-/*    FreeType support for .bz2 compressed files.                          */
-/*                                                                         */
-/*  This optional component relies on libbz2.  It should mainly be used to */
-/*  parse compressed PCF fonts, as found with many X11 server              */
-/*  distributions.                                                         */
-/*                                                                         */
-/*  Copyright 2010-2018 by                                                 */
-/*  Joel Klinghed.                                                         */
-/*                                                                         */
-/*  based on `src/gzip/ftgzip.c'                                           */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftbzip2.c
+ *
+ *   FreeType support for .bz2 compressed files.
+ *
+ * This optional component relies on libbz2.  It should mainly be used to
+ * parse compressed PCF fonts, as found with many X11 server
+ * distributions.
+ *
+ * Copyright 2010-2018 by
+ * Joel Klinghed.
+ *
+ * based on `src/gzip/ftgzip.c'
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -471,8 +471,8 @@
     memory = source->memory;
 
     /*
-     *  check the header right now; this prevents allocating unnecessary
-     *  objects when we don't need them
+     * check the header right now; this prevents allocating unnecessary
+     * objects when we don't need them
      */
     error = ft_bzip2_check_header( source );
     if ( error )
diff --git a/src/cache/ftcache.c b/src/cache/ftcache.c
index 1b425af..fb78b81 100644
--- a/src/cache/ftcache.c
+++ b/src/cache/ftcache.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftcache.c                                                              */
-/*                                                                         */
-/*    The FreeType Caching sub-system (body only).                         */
-/*                                                                         */
-/*  Copyright 2000-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftcache.c
+ *
+ *   The FreeType Caching sub-system (body only).
+ *
+ * Copyright 2000-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #define FT_MAKE_OPTION_SINGLE_OBJECT
diff --git a/src/cache/ftcbasic.c b/src/cache/ftcbasic.c
index 994aa12..f2b75ee 100644
--- a/src/cache/ftcbasic.c
+++ b/src/cache/ftcbasic.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftcbasic.c                                                             */
-/*                                                                         */
-/*    The FreeType basic cache interface (body).                           */
-/*                                                                         */
-/*  Copyright 2003-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftcbasic.c
+ *
+ *   The FreeType basic cache interface (body).
+ *
+ * Copyright 2003-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -31,7 +31,7 @@
 
 
   /*
-   *  Basic Families
+   * Basic Families
    *
    */
   typedef struct  FTC_BasicAttrRec_
diff --git a/src/cache/ftccache.c b/src/cache/ftccache.c
index 12ec585..a9aa5d4 100644
--- a/src/cache/ftccache.c
+++ b/src/cache/ftccache.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftccache.c                                                             */
-/*                                                                         */
-/*    The FreeType internal cache interface (body).                        */
-/*                                                                         */
-/*  Copyright 2000-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftccache.c
+ *
+ *   The FreeType internal cache interface (body).
+ *
+ * Copyright 2000-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
diff --git a/src/cache/ftccache.h b/src/cache/ftccache.h
index 859c547..c1f8c29 100644
--- a/src/cache/ftccache.h
+++ b/src/cache/ftccache.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftccache.h                                                             */
-/*                                                                         */
-/*    FreeType internal cache interface (specification).                   */
-/*                                                                         */
-/*  Copyright 2000-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftccache.h
+ *
+ *   FreeType internal cache interface (specification).
+ *
+ * Copyright 2000-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef FTCCACHE_H_
@@ -42,17 +42,17 @@ FT_BEGIN_HEADER
   /*************************************************************************/
   /*************************************************************************/
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Each cache controls one or more cache nodes.  Each node is part of    */
-  /* the global_lru list of the manager.  Its `data' field however is used */
-  /* as a reference count for now.                                         */
-  /*                                                                       */
-  /* A node can be anything, depending on the type of information held by  */
-  /* the cache.  It can be an individual glyph image, a set of bitmaps     */
-  /* glyphs for a given size, some metrics, etc.                           */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * Each cache controls one or more cache nodes.  Each node is part of
+   * the global_lru list of the manager.  Its `data' field however is used
+   * as a reference count for now.
+   *
+   * A node can be anything, depending on the type of information held by
+   * the cache.  It can be an individual glyph image, a set of bitmaps
+   * glyphs for a given size, some metrics, etc.
+   *
+   */
 
   /* structure size should be 20 bytes on 32-bits machines */
   typedef struct  FTC_NodeRec_
@@ -302,11 +302,11 @@ FT_BEGIN_HEADER
    *
    * Example:
    *
-   *   {
-   *     FTC_CACHE_TRYLOOP( cache )
-   *       error = load_data( ... );
-   *     FTC_CACHE_TRYLOOP_END()
-   *   }
+   * {
+   *   FTC_CACHE_TRYLOOP( cache )
+   *     error = load_data( ... );
+   *   FTC_CACHE_TRYLOOP_END()
+   * }
    *
    */
 #define FTC_CACHE_TRYLOOP( cache )                           \
diff --git a/src/cache/ftccback.h b/src/cache/ftccback.h
index e51d8d6..1e414aa 100644
--- a/src/cache/ftccback.h
+++ b/src/cache/ftccback.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftccback.h                                                             */
-/*                                                                         */
-/*    Callback functions of the caching sub-system (specification only).   */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftccback.h
+ *
+ *   Callback functions of the caching sub-system (specification only).
+ *
+ * Copyright 2004-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 #ifndef FTCCBACK_H_
 #define FTCCBACK_H_
diff --git a/src/cache/ftccmap.c b/src/cache/ftccmap.c
index d20b0f4..47b8b76 100644
--- a/src/cache/ftccmap.c
+++ b/src/cache/ftccmap.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftccmap.c                                                              */
-/*                                                                         */
-/*    FreeType CharMap cache (body)                                        */
-/*                                                                         */
-/*  Copyright 2000-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftccmap.c
+ *
+ *   FreeType CharMap cache (body)
+ *
+ * Copyright 2000-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -31,18 +31,18 @@
 #define FT_COMPONENT  trace_cache
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Each FTC_CMapNode contains a simple array to map a range of character */
-  /* codes to equivalent glyph indices.                                    */
-  /*                                                                       */
-  /* For now, the implementation is very basic: Each node maps a range of  */
-  /* 128 consecutive character codes to their corresponding glyph indices. */
-  /*                                                                       */
-  /* We could do more complex things, but I don't think it is really very  */
-  /* useful.                                                               */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * Each FTC_CMapNode contains a simple array to map a range of character
+   * codes to equivalent glyph indices.
+   *
+   * For now, the implementation is very basic: Each node maps a range of
+   * 128 consecutive character codes to their corresponding glyph indices.
+   *
+   * We could do more complex things, but I don't think it is really very
+   * useful.
+   *
+   */
 
 
   /* number of glyph indices / character code per node */
diff --git a/src/cache/ftcerror.h b/src/cache/ftcerror.h
index a26cd59..6ed9e9e 100644
--- a/src/cache/ftcerror.h
+++ b/src/cache/ftcerror.h
@@ -1,27 +1,27 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftcerror.h                                                             */
-/*                                                                         */
-/*    Caching sub-system error codes (specification only).                 */
-/*                                                                         */
-/*  Copyright 2001-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This file is used to define the caching sub-system error enumeration  */
-  /* constants.                                                            */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * ftcerror.h
+ *
+ *   Caching sub-system error codes (specification only).
+ *
+ * Copyright 2001-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+
+  /**************************************************************************
+   *
+   * This file is used to define the caching sub-system error enumeration
+   * constants.
+   *
+   */
 
 #ifndef FTCERROR_H_
 #define FTCERROR_H_
diff --git a/src/cache/ftcglyph.c b/src/cache/ftcglyph.c
index 782cc0e..1b86429 100644
--- a/src/cache/ftcglyph.c
+++ b/src/cache/ftcglyph.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftcglyph.c                                                             */
-/*                                                                         */
-/*    FreeType Glyph Image (FT_Glyph) cache (body).                        */
-/*                                                                         */
-/*  Copyright 2000-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftcglyph.c
+ *
+ *   FreeType Glyph Image (FT_Glyph) cache (body).
+ *
+ * Copyright 2000-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
diff --git a/src/cache/ftcglyph.h b/src/cache/ftcglyph.h
index 23c24d2..234ec89 100644
--- a/src/cache/ftcglyph.h
+++ b/src/cache/ftcglyph.h
@@ -1,101 +1,101 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftcglyph.h                                                             */
-/*                                                                         */
-/*    FreeType abstract glyph cache (specification).                       */
-/*                                                                         */
-/*  Copyright 2000-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftcglyph.h
+ *
+ *   FreeType abstract glyph cache (specification).
+ *
+ * Copyright 2000-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
   /*
    *
-   *  FTC_GCache is an _abstract_ cache object optimized to store glyph
-   *  data.  It works as follows:
+   * FTC_GCache is an _abstract_ cache object optimized to store glyph
+   * data.  It works as follows:
    *
-   *   - It manages FTC_GNode objects. Each one of them can hold one or more
-   *     glyph `items'.  Item types are not specified in the FTC_GCache but
-   *     in classes that extend it.
+   * - It manages FTC_GNode objects. Each one of them can hold one or more
+   *   glyph `items'.  Item types are not specified in the FTC_GCache but
+   *   in classes that extend it.
    *
-   *   - Glyph attributes, like face ID, character size, render mode, etc.,
-   *     can be grouped into abstract `glyph families'.  This avoids storing
-   *     the attributes within the FTC_GCache, since it is likely that many
-   *     FTC_GNodes will belong to the same family in typical uses.
+   * - Glyph attributes, like face ID, character size, render mode, etc.,
+   *   can be grouped into abstract `glyph families'.  This avoids storing
+   *   the attributes within the FTC_GCache, since it is likely that many
+   *   FTC_GNodes will belong to the same family in typical uses.
    *
-   *   - Each FTC_GNode is thus an FTC_Node with two additional fields:
+   * - Each FTC_GNode is thus an FTC_Node with two additional fields:
    *
-   *       * gindex: A glyph index, or the first index in a glyph range.
-   *       * family: A pointer to a glyph `family'.
+   *   * gindex: A glyph index, or the first index in a glyph range.
+   *   * family: A pointer to a glyph `family'.
    *
-   *   - Family types are not fully specific in the FTC_Family type, but
-   *     by classes that extend it.
+   * - Family types are not fully specific in the FTC_Family type, but
+   *   by classes that extend it.
    *
-   *  Note that both FTC_ImageCache and FTC_SBitCache extend FTC_GCache.
-   *  They share an FTC_Family sub-class called FTC_BasicFamily which is
-   *  used to store the following data: face ID, pixel/point sizes, load
-   *  flags.  For more details see the file `src/cache/ftcbasic.c'.
+   * Note that both FTC_ImageCache and FTC_SBitCache extend FTC_GCache.
+   * They share an FTC_Family sub-class called FTC_BasicFamily which is
+   * used to store the following data: face ID, pixel/point sizes, load
+   * flags.  For more details see the file `src/cache/ftcbasic.c'.
    *
-   *  Client applications can extend FTC_GNode with their own FTC_GNode
-   *  and FTC_Family sub-classes to implement more complex caches (e.g.,
-   *  handling automatic synthesis, like obliquing & emboldening, colored
-   *  glyphs, etc.).
+   * Client applications can extend FTC_GNode with their own FTC_GNode
+   * and FTC_Family sub-classes to implement more complex caches (e.g.,
+   * handling automatic synthesis, like obliquing & emboldening, colored
+   * glyphs, etc.).
    *
-   *  See also the FTC_ICache & FTC_SCache classes in `ftcimage.h' and
-   *  `ftcsbits.h', which both extend FTC_GCache with additional
-   *  optimizations.
+   * See also the FTC_ICache & FTC_SCache classes in `ftcimage.h' and
+   * `ftcsbits.h', which both extend FTC_GCache with additional
+   * optimizations.
    *
-   *  A typical FTC_GCache implementation must provide at least the
-   *  following:
+   * A typical FTC_GCache implementation must provide at least the
+   * following:
    *
-   *  - FTC_GNode sub-class, e.g. MyNode, with relevant methods:
-   *        my_node_new            (must call FTC_GNode_Init)
-   *        my_node_free           (must call FTC_GNode_Done)
-   *        my_node_compare        (must call FTC_GNode_Compare)
-   *        my_node_remove_faceid  (must call ftc_gnode_unselect in case
-   *                                of match)
+   * - FTC_GNode sub-class, e.g. MyNode, with relevant methods:
+   *     my_node_new            (must call FTC_GNode_Init)
+   *     my_node_free           (must call FTC_GNode_Done)
+   *     my_node_compare        (must call FTC_GNode_Compare)
+   *     my_node_remove_faceid  (must call ftc_gnode_unselect in case
+   *                             of match)
    *
-   *  - FTC_Family sub-class, e.g. MyFamily, with relevant methods:
-   *        my_family_compare
-   *        my_family_init
-   *        my_family_reset (optional)
-   *        my_family_done
+   * - FTC_Family sub-class, e.g. MyFamily, with relevant methods:
+   *     my_family_compare
+   *     my_family_init
+   *     my_family_reset (optional)
+   *     my_family_done
    *
-   *  - FTC_GQuery sub-class, e.g. MyQuery, to hold cache-specific query
-   *    data.
+   * - FTC_GQuery sub-class, e.g. MyQuery, to hold cache-specific query
+   *   data.
    *
-   *  - Constant structures for a FTC_GNodeClass.
+   * - Constant structures for a FTC_GNodeClass.
    *
-   *  - MyCacheNew() can be implemented easily as a call to the convenience
-   *    function FTC_GCache_New.
+   * - MyCacheNew() can be implemented easily as a call to the convenience
+   *   function FTC_GCache_New.
    *
-   *  - MyCacheLookup with a call to FTC_GCache_Lookup.  This function will
-   *    automatically:
+   * - MyCacheLookup with a call to FTC_GCache_Lookup.  This function will
+   *   automatically:
    *
-   *    - Search for the corresponding family in the cache, or create
-   *      a new one if necessary.  Put it in FTC_GQUERY(myquery).family
+   *   - Search for the corresponding family in the cache, or create
+   *     a new one if necessary.  Put it in FTC_GQUERY(myquery).family
    *
-   *    - Call FTC_Cache_Lookup.
+   *   - Call FTC_Cache_Lookup.
    *
-   *    If it returns NULL, you should create a new node, then call
-   *    ftc_cache_add as usual.
+   *   If it returns NULL, you should create a new node, then call
+   *   ftc_cache_add as usual.
    */
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Important: The functions defined in this file are only used to        */
-  /*            implement an abstract glyph cache class.  You need to      */
-  /*            provide additional logic to implement a complete cache.    */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * Important: The functions defined in this file are only used to
+   *            implement an abstract glyph cache class.  You need to
+   *            provide additional logic to implement a complete cache.
+   *
+   */
 
 
   /*************************************************************************/
@@ -125,11 +125,11 @@ FT_BEGIN_HEADER
 
 
  /*
-  *  We can group glyphs into `families'.  Each family correspond to a
-  *  given face ID, character size, transform, etc.
+  * We can group glyphs into `families'.  Each family correspond to a
+  * given face ID, character size, transform, etc.
   *
-  *  Families are implemented as MRU list nodes.  They are
-  *  reference-counted.
+  * Families are implemented as MRU list nodes.  They are
+  * reference-counted.
   */
 
   typedef struct  FTC_FamilyRec_
@@ -167,12 +167,12 @@ FT_BEGIN_HEADER
 #define FTC_GQUERY( x )  ( (FTC_GQuery)(x) )
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* These functions are exported so that they can be called from          */
-  /* user-provided cache classes; otherwise, they are really part of the   */
-  /* cache sub-system internals.                                           */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * These functions are exported so that they can be called from
+   * user-provided cache classes; otherwise, they are really part of the
+   * cache sub-system internals.
+   */
 
   /* must be called by derived FTC_Node_InitFunc routines */
   FT_LOCAL( void )
diff --git a/src/cache/ftcimage.c b/src/cache/ftcimage.c
index 77a1001..597e341 100644
--- a/src/cache/ftcimage.c
+++ b/src/cache/ftcimage.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftcimage.c                                                             */
-/*                                                                         */
-/*    FreeType Image cache (body).                                         */
-/*                                                                         */
-/*  Copyright 2000-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftcimage.c
+ *
+ *   FreeType Image cache (body).
+ *
+ * Copyright 2000-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
diff --git a/src/cache/ftcimage.h b/src/cache/ftcimage.h
index 24a2210..ad47f8d 100644
--- a/src/cache/ftcimage.h
+++ b/src/cache/ftcimage.h
@@ -1,35 +1,35 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftcimage.h                                                             */
-/*                                                                         */
-/*    FreeType Generic Image cache (specification)                         */
-/*                                                                         */
-/*  Copyright 2000-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftcimage.h
+ *
+ *   FreeType Generic Image cache (specification)
+ *
+ * Copyright 2000-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
  /*
-  *  FTC_ICache is an _abstract_ cache used to store a single FT_Glyph
-  *  image per cache node.
+  * FTC_ICache is an _abstract_ cache used to store a single FT_Glyph
+  * image per cache node.
   *
-  *  FTC_ICache extends FTC_GCache.  For an implementation example,
-  *  see FTC_ImageCache in `src/cache/ftbasic.c'.
+  * FTC_ICache extends FTC_GCache.  For an implementation example,
+  * see FTC_ImageCache in `src/cache/ftbasic.c'.
   */
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Each image cache really manages FT_Glyph objects.                     */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * Each image cache really manages FT_Glyph objects.
+   *
+   */
 
 
 #ifndef FTCIMAGE_H_
diff --git a/src/cache/ftcmanag.c b/src/cache/ftcmanag.c
index 60e64db..9be1773 100644
--- a/src/cache/ftcmanag.c
+++ b/src/cache/ftcmanag.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftcmanag.c                                                             */
-/*                                                                         */
-/*    FreeType Cache Manager (body).                                       */
-/*                                                                         */
-/*  Copyright 2000-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftcmanag.c
+ *
+ *   FreeType Cache Manager (body).
+ *
+ * Copyright 2000-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
diff --git a/src/cache/ftcmanag.h b/src/cache/ftcmanag.h
index b4b4755..8d0a1e1 100644
--- a/src/cache/ftcmanag.h
+++ b/src/cache/ftcmanag.h
@@ -1,47 +1,47 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftcmanag.h                                                             */
-/*                                                                         */
-/*    FreeType Cache Manager (specification).                              */
-/*                                                                         */
-/*  Copyright 2000-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* A cache manager is in charge of the following:                        */
-  /*                                                                       */
-  /*  - Maintain a mapping between generic FTC_FaceIDs and live FT_Face    */
-  /*    objects.  The mapping itself is performed through a user-provided  */
-  /*    callback.  However, the manager maintains a small cache of FT_Face */
-  /*    and FT_Size objects in order to speed up things considerably.      */
-  /*                                                                       */
-  /*  - Manage one or more cache objects.  Each cache is in charge of      */
-  /*    holding a varying number of `cache nodes'.  Each cache node        */
-  /*    represents a minimal amount of individually accessible cached      */
-  /*    data.  For example, a cache node can be an FT_Glyph image          */
-  /*    containing a vector outline, or some glyph metrics, or anything    */
-  /*    else.                                                              */
-  /*                                                                       */
-  /*    Each cache node has a certain size in bytes that is added to the   */
-  /*    total amount of `cache memory' within the manager.                 */
-  /*                                                                       */
-  /*    All cache nodes are located in a global LRU list, where the oldest */
-  /*    node is at the tail of the list.                                   */
-  /*                                                                       */
-  /*    Each node belongs to a single cache, and includes a reference      */
-  /*    count to avoid destroying it (due to caching).                     */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * ftcmanag.h
+ *
+ *   FreeType Cache Manager (specification).
+ *
+ * Copyright 2000-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+
+  /**************************************************************************
+   *
+   * A cache manager is in charge of the following:
+   *
+   * - Maintain a mapping between generic FTC_FaceIDs and live FT_Face
+   *   objects.  The mapping itself is performed through a user-provided
+   *   callback.  However, the manager maintains a small cache of FT_Face
+   *   and FT_Size objects in order to speed up things considerably.
+   *
+   * - Manage one or more cache objects.  Each cache is in charge of
+   *   holding a varying number of `cache nodes'.  Each cache node
+   *   represents a minimal amount of individually accessible cached
+   *   data.  For example, a cache node can be an FT_Glyph image
+   *   containing a vector outline, or some glyph metrics, or anything
+   *   else.
+   *
+   *   Each cache node has a certain size in bytes that is added to the
+   *   total amount of `cache memory' within the manager.
+   *
+   *   All cache nodes are located in a global LRU list, where the oldest
+   *   node is at the tail of the list.
+   *
+   *   Each node belongs to a single cache, and includes a reference
+   *   count to avoid destroying it (due to caching).
+   *
+   */
 
 
   /*************************************************************************/
@@ -72,12 +72,12 @@
 FT_BEGIN_HEADER
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Section>                                                             */
-  /*    cache_subsystem                                                    */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * @Section:
+   *   cache_subsystem
+   *
+   */
 
 
 #define FTC_MAX_FACES_DEFAULT  2
@@ -110,27 +110,28 @@ FT_BEGIN_HEADER
   } FTC_ManagerRec;
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FTC_Manager_Compress                                               */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This function is used to check the state of the cache manager if   */
-  /*    its `num_bytes' field is greater than its `max_bytes' field.  It   */
-  /*    will flush as many old cache nodes as possible (ignoring cache     */
-  /*    nodes with a non-zero reference count).                            */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    manager :: A handle to the cache manager.                          */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    Client applications should not call this function directly.  It is */
-  /*    normally invoked by specific cache implementations.                */
-  /*                                                                       */
-  /*    The reason this function is exported is to allow client-specific   */
-  /*    cache classes.                                                     */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   FTC_Manager_Compress
+   *
+   * @Description:
+   *   This function is used to check the state of the cache manager if
+   *   its `num_bytes' field is greater than its `max_bytes' field.  It
+   *   will flush as many old cache nodes as possible (ignoring cache
+   *   nodes with a non-zero reference count).
+   *
+   * @InOut:
+   *   manager ::
+   *     A handle to the cache manager.
+   *
+   * @Note:
+   *   Client applications should not call this function directly.  It is
+   *   normally invoked by specific cache implementations.
+   *
+   *   The reason this function is exported is to allow client-specific
+   *   cache classes.
+   */
   FT_LOCAL( void )
   FTC_Manager_Compress( FTC_Manager  manager );
 
diff --git a/src/cache/ftcmru.c b/src/cache/ftcmru.c
index 1087be4..c704f4e 100644
--- a/src/cache/ftcmru.c
+++ b/src/cache/ftcmru.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftcmru.c                                                               */
-/*                                                                         */
-/*    FreeType MRU support (body).                                         */
-/*                                                                         */
-/*  Copyright 2003-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftcmru.c
+ *
+ *   FreeType MRU support (body).
+ *
+ * Copyright 2003-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
diff --git a/src/cache/ftcmru.h b/src/cache/ftcmru.h
index 82396b9..936c66e 100644
--- a/src/cache/ftcmru.h
+++ b/src/cache/ftcmru.h
@@ -1,43 +1,43 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftcmru.h                                                               */
-/*                                                                         */
-/*    Simple MRU list-cache (specification).                               */
-/*                                                                         */
-/*  Copyright 2000-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* An MRU is a list that cannot hold more than a certain number of       */
-  /* elements (`max_elements').  All elements in the list are sorted in    */
-  /* least-recently-used order, i.e., the `oldest' element is at the tail  */
-  /* of the list.                                                          */
-  /*                                                                       */
-  /* When doing a lookup (either through `Lookup()' or `Lookup_Node()'),   */
-  /* the list is searched for an element with the corresponding key.  If   */
-  /* it is found, the element is moved to the head of the list and is      */
-  /* returned.                                                             */
-  /*                                                                       */
-  /* If no corresponding element is found, the lookup routine will try to  */
-  /* obtain a new element with the relevant key.  If the list is already   */
-  /* full, the oldest element from the list is discarded and replaced by a */
-  /* new one; a new element is added to the list otherwise.                */
-  /*                                                                       */
-  /* Note that it is possible to pre-allocate the element list nodes.      */
-  /* This is handy if `max_elements' is sufficiently small, as it saves    */
-  /* allocations/releases during the lookup process.                       */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * ftcmru.h
+ *
+ *   Simple MRU list-cache (specification).
+ *
+ * Copyright 2000-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+
+  /**************************************************************************
+   *
+   * An MRU is a list that cannot hold more than a certain number of
+   * elements (`max_elements').  All elements in the list are sorted in
+   * least-recently-used order, i.e., the `oldest' element is at the tail
+   * of the list.
+   *
+   * When doing a lookup (either through `Lookup()' or `Lookup_Node()'),
+   * the list is searched for an element with the corresponding key.  If
+   * it is found, the element is moved to the head of the list and is
+   * returned.
+   *
+   * If no corresponding element is found, the lookup routine will try to
+   * obtain a new element with the relevant key.  If the list is already
+   * full, the oldest element from the list is discarded and replaced by a
+   * new one; a new element is added to the list otherwise.
+   *
+   * Note that it is possible to pre-allocate the element list nodes.
+   * This is handy if `max_elements' is sufficiently small, as it saves
+   * allocations/releases during the lookup process.
+   *
+   */
 
 
 #ifndef FTCMRU_H_
diff --git a/src/cache/ftcsbits.c b/src/cache/ftcsbits.c
index 018f1ec..c802bf0 100644
--- a/src/cache/ftcsbits.c
+++ b/src/cache/ftcsbits.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftcsbits.c                                                             */
-/*                                                                         */
-/*    FreeType sbits manager (body).                                       */
-/*                                                                         */
-/*  Copyright 2000-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftcsbits.c
+ *
+ *   FreeType sbits manager (body).
+ *
+ * Copyright 2000-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -91,14 +91,14 @@
 
 
   /*
-   *  This function tries to load a small bitmap within a given FTC_SNode.
-   *  Note that it returns a non-zero error code _only_ in the case of
-   *  out-of-memory condition.  For all other errors (e.g., corresponding
-   *  to a bad font file), this function will mark the sbit as `unavailable'
-   *  and return a value of 0.
+   * This function tries to load a small bitmap within a given FTC_SNode.
+   * Note that it returns a non-zero error code _only_ in the case of
+   * out-of-memory condition.  For all other errors (e.g., corresponding
+   * to a bad font file), this function will mark the sbit as `unavailable'
+   * and return a value of 0.
    *
-   *  You should also read the comment within the @ftc_snode_compare
-   *  function below to see how out-of-memory is handled during a lookup.
+   * You should also read the comment within the @ftc_snode_compare
+   * function below to see how out-of-memory is handled during a lookup.
    */
   static FT_Error
   ftc_snode_load( FTC_SNode    snode,
@@ -347,34 +347,34 @@
 
 
       /*
-       *  The following code illustrates what to do when you want to
-       *  perform operations that may fail within a lookup function.
+       * The following code illustrates what to do when you want to
+       * perform operations that may fail within a lookup function.
        *
-       *  Here, we want to load a small bitmap on-demand; we thus
-       *  need to call the `ftc_snode_load' function which may return
-       *  a non-zero error code only when we are out of memory (OOM).
+       * Here, we want to load a small bitmap on-demand; we thus
+       * need to call the `ftc_snode_load' function which may return
+       * a non-zero error code only when we are out of memory (OOM).
        *
-       *  The correct thing to do is to use @FTC_CACHE_TRYLOOP and
-       *  @FTC_CACHE_TRYLOOP_END in order to implement a retry loop
-       *  that is capable of flushing the cache incrementally when
-       *  an OOM errors occur.
+       * The correct thing to do is to use @FTC_CACHE_TRYLOOP and
+       * @FTC_CACHE_TRYLOOP_END in order to implement a retry loop
+       * that is capable of flushing the cache incrementally when
+       * an OOM errors occur.
        *
-       *  However, we need to `lock' the node before this operation to
-       *  prevent it from being flushed within the loop.
+       * However, we need to `lock' the node before this operation to
+       * prevent it from being flushed within the loop.
        *
-       *  When we exit the loop, we unlock the node, then check the `error'
-       *  variable.  If it is non-zero, this means that the cache was
-       *  completely flushed and that no usable memory was found to load
-       *  the bitmap.
+       * When we exit the loop, we unlock the node, then check the `error'
+       * variable.  If it is non-zero, this means that the cache was
+       * completely flushed and that no usable memory was found to load
+       * the bitmap.
        *
-       *  We then prefer to return a value of 0 (i.e., NO MATCH).  This
-       *  ensures that the caller will try to allocate a new node.
-       *  This operation consequently _fail_ and the lookup function
-       *  returns the appropriate OOM error code.
+       * We then prefer to return a value of 0 (i.e., NO MATCH).  This
+       * ensures that the caller will try to allocate a new node.
+       * This operation consequently _fail_ and the lookup function
+       * returns the appropriate OOM error code.
        *
-       *  Note that `buffer == NULL && width == 255' is a hack used to
-       *  tag `unavailable' bitmaps in the array.  We should never try
-       *  to load these.
+       * Note that `buffer == NULL && width == 255' is a hack used to
+       * tag `unavailable' bitmaps in the array.  We should never try
+       * to load these.
        *
        */
 
diff --git a/src/cache/ftcsbits.h b/src/cache/ftcsbits.h
index 206a1bb..e698e35 100644
--- a/src/cache/ftcsbits.h
+++ b/src/cache/ftcsbits.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftcsbits.h                                                             */
-/*                                                                         */
-/*    A small-bitmap cache (specification).                                */
-/*                                                                         */
-/*  Copyright 2000-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftcsbits.h
+ *
+ *   A small-bitmap cache (specification).
+ *
+ * Copyright 2000-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef FTCSBITS_H_
diff --git a/src/cff/cff.c b/src/cff/cff.c
index 5911298..6c7e2c9 100644
--- a/src/cff/cff.c
+++ b/src/cff/cff.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  cff.c                                                                  */
-/*                                                                         */
-/*    FreeType OpenType driver component (body only).                      */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * cff.c
+ *
+ *   FreeType OpenType driver component (body only).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #define FT_MAKE_OPTION_SINGLE_OBJECT
diff --git a/src/cff/cffcmap.c b/src/cff/cffcmap.c
index e45ae11..f7316e1 100644
--- a/src/cff/cffcmap.c
+++ b/src/cff/cffcmap.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  cffcmap.c                                                              */
-/*                                                                         */
-/*    CFF character mapping table (cmap) support (body).                   */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * cffcmap.c
+ *
+ *   CFF character mapping table (cmap) support (body).
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
diff --git a/src/cff/cffcmap.h b/src/cff/cffcmap.h
index 856a43d..5cf86ac 100644
--- a/src/cff/cffcmap.h
+++ b/src/cff/cffcmap.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  cffcmap.h                                                              */
-/*                                                                         */
-/*    CFF character mapping table (cmap) support (specification).          */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * cffcmap.h
+ *
+ *   CFF character mapping table (cmap) support (specification).
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef CFFCMAP_H_
diff --git a/src/cff/cffdrivr.c b/src/cff/cffdrivr.c
index 9900701..298d935 100644
--- a/src/cff/cffdrivr.c
+++ b/src/cff/cffdrivr.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  cffdrivr.c                                                             */
-/*                                                                         */
-/*    OpenType font driver implementation (body).                          */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * cffdrivr.c
+ *
+ *   OpenType font driver implementation (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -49,12 +49,12 @@
 #include FT_DRIVER_H
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_cffdriver
 
@@ -72,38 +72,42 @@
   /*************************************************************************/
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    cff_get_kerning                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A driver method used to return the kerning vector between two      */
-  /*    glyphs of the same face.                                           */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face        :: A handle to the source face object.                 */
-  /*                                                                       */
-  /*    left_glyph  :: The index of the left glyph in the kern pair.       */
-  /*                                                                       */
-  /*    right_glyph :: The index of the right glyph in the kern pair.      */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    kerning     :: The kerning vector.  This is in font units for      */
-  /*                   scalable formats, and in pixels for fixed-sizes     */
-  /*                   formats.                                            */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    Only horizontal layouts (left-to-right & right-to-left) are        */
-  /*    supported by this function.  Other layouts, or more sophisticated  */
-  /*    kernings, are out of scope of this method (the basic driver        */
-  /*    interface is meant to be simple).                                  */
-  /*                                                                       */
-  /*    They can be implemented by format-specific interfaces.             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   cff_get_kerning
+   *
+   * @Description:
+   *   A driver method used to return the kerning vector between two
+   *   glyphs of the same face.
+   *
+   * @Input:
+   *   face ::
+   *     A handle to the source face object.
+   *
+   *   left_glyph ::
+   *     The index of the left glyph in the kern pair.
+   *
+   *   right_glyph ::
+   *     The index of the right glyph in the kern pair.
+   *
+   * @Output:
+   *   kerning ::
+   *     The kerning vector.  This is in font units for
+   *     scalable formats, and in pixels for fixed-sizes
+   *     formats.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   *
+   * @Note:
+   *   Only horizontal layouts (left-to-right & right-to-left) are
+   *   supported by this function.  Other layouts, or more sophisticated
+   *   kernings, are out of scope of this method (the basic driver
+   *   interface is meant to be simple).
+   *
+   *   They can be implemented by format-specific interfaces.
+   */
   FT_CALLBACK_DEF( FT_Error )
   cff_get_kerning( FT_Face     ttface,          /* TT_Face */
                    FT_UInt     left_glyph,
@@ -124,32 +128,36 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    cff_glyph_load                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A driver method used to load a glyph within a given glyph slot.    */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    slot        :: A handle to the target slot object where the glyph  */
-  /*                   will be loaded.                                     */
-  /*                                                                       */
-  /*    size        :: A handle to the source face size at which the glyph */
-  /*                   must be scaled, loaded, etc.                        */
-  /*                                                                       */
-  /*    glyph_index :: The index of the glyph in the font file.            */
-  /*                                                                       */
-  /*    load_flags  :: A flag indicating what to load for this glyph.  The */
-  /*                   FT_LOAD_??? constants can be used to control the    */
-  /*                   glyph loading process (e.g., whether the outline    */
-  /*                   should be scaled, whether to load bitmaps or not,   */
-  /*                   whether to hint the outline, etc).                  */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   cff_glyph_load
+   *
+   * @Description:
+   *   A driver method used to load a glyph within a given glyph slot.
+   *
+   * @Input:
+   *   slot ::
+   *     A handle to the target slot object where the glyph
+   *     will be loaded.
+   *
+   *   size ::
+   *     A handle to the source face size at which the glyph
+   *     must be scaled, loaded, etc.
+   *
+   *   glyph_index ::
+   *     The index of the glyph in the font file.
+   *
+   *   load_flags ::
+   *     A flag indicating what to load for this glyph.  The
+   *     FT_LOAD_??? constants can be used to control the
+   *     glyph loading process (e.g., whether the outline
+   *     should be scaled, whether to load bitmaps or not,
+   *     whether to hint the outline, etc).
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_CALLBACK_DEF( FT_Error )
   cff_glyph_load( FT_GlyphSlot  cffslot,      /* CFF_GlyphSlot */
                   FT_Size       cffsize,      /* CFF_Size      */
@@ -301,7 +309,7 @@
 
 
   /*
-   *  GLYPH DICT SERVICE
+   * GLYPH DICT SERVICE
    *
    */
 
@@ -445,7 +453,7 @@
 
 
   /*
-   *  POSTSCRIPT INFO SERVICE
+   * POSTSCRIPT INFO SERVICE
    *
    */
 
@@ -592,7 +600,7 @@
 
 
   /*
-   *  POSTSCRIPT NAME SERVICE
+   * POSTSCRIPT NAME SERVICE
    *
    */
 
@@ -681,7 +689,7 @@
 
 
   /*
-   *  CID INFO SERVICE
+   * CID INFO SERVICE
    *
    */
   static FT_Error
@@ -817,7 +825,7 @@
 
 
   /*
-   *  PROPERTY SERVICE
+   * PROPERTY SERVICE
    *
    */
 
@@ -831,7 +839,7 @@
 #ifdef TT_CONFIG_OPTION_GX_VAR_SUPPORT
 
   /*
-   *  MULTIPLE MASTER SERVICE
+   * MULTIPLE MASTER SERVICE
    *
    */
 
@@ -923,7 +931,7 @@
 
 
   /*
-   *  METRICS VARIATIONS SERVICE
+   * METRICS VARIATIONS SERVICE
    *
    */
 
@@ -967,7 +975,7 @@
 
 
   /*
-   *  CFFLOAD SERVICE
+   * CFFLOAD SERVICE
    *
    */
 
diff --git a/src/cff/cffdrivr.h b/src/cff/cffdrivr.h
index 277a5e1..30d3e13 100644
--- a/src/cff/cffdrivr.h
+++ b/src/cff/cffdrivr.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  cffdrivr.h                                                             */
-/*                                                                         */
-/*    High-level OpenType driver interface (specification).                */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * cffdrivr.h
+ *
+ *   High-level OpenType driver interface (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef CFFDRIVER_H_
diff --git a/src/cff/cfferrs.h b/src/cff/cfferrs.h
index b2e1bfa..b5ccc67 100644
--- a/src/cff/cfferrs.h
+++ b/src/cff/cfferrs.h
@@ -1,26 +1,26 @@
-/***************************************************************************/
-/*                                                                         */
-/*  cfferrs.h                                                              */
-/*                                                                         */
-/*    CFF error codes (specification only).                                */
-/*                                                                         */
-/*  Copyright 2001-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This file is used to define the CFF error enumeration constants.      */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * cfferrs.h
+ *
+ *   CFF error codes (specification only).
+ *
+ * Copyright 2001-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+
+  /**************************************************************************
+   *
+   * This file is used to define the CFF error enumeration constants.
+   *
+   */
 
 #ifndef CFFERRS_H_
 #define CFFERRS_H_
diff --git a/src/cff/cffgload.c b/src/cff/cffgload.c
index c58471c..852515d 100644
--- a/src/cff/cffgload.c
+++ b/src/cff/cffgload.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  cffgload.c                                                             */
-/*                                                                         */
-/*    OpenType Glyph Loader (body).                                        */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * cffgload.c
+ *
+ *   OpenType Glyph Loader (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -31,12 +31,12 @@
 #include "cfferrs.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_cffgload
 
diff --git a/src/cff/cffgload.h b/src/cff/cffgload.h
index 803f397..5a486cd 100644
--- a/src/cff/cffgload.h
+++ b/src/cff/cffgload.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  cffgload.h                                                             */
-/*                                                                         */
-/*    OpenType Glyph Loader (specification).                               */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * cffgload.h
+ *
+ *   OpenType Glyph Loader (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef CFFGLOAD_H_
diff --git a/src/cff/cffload.c b/src/cff/cffload.c
index 1c6fe51..9942d57 100644
--- a/src/cff/cffload.c
+++ b/src/cff/cffload.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  cffload.c                                                              */
-/*                                                                         */
-/*    OpenType and CFF data/program tables loader (body).                  */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * cffload.c
+ *
+ *   OpenType and CFF data/program tables loader (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -196,12 +196,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_cffload
 
@@ -2080,13 +2080,13 @@
       /*
        * Initialize the random number generator.
        *
-       * . If we have a face-specific seed, use it.
+       * - If we have a face-specific seed, use it.
        *   If non-zero, update it to a positive value.
        *
-       * . Otherwise, use the seed from the CFF driver.
+       * - Otherwise, use the seed from the CFF driver.
        *   If non-zero, update it to a positive value.
        *
-       * . If the random value is zero, use the seed given by the subfont's
+       * - If the random value is zero, use the seed given by the subfont's
        *   `initialRandomSeed' value.
        *
        */
diff --git a/src/cff/cffload.h b/src/cff/cffload.h
index 14d14e2..7ba9e45 100644
--- a/src/cff/cffload.h
+++ b/src/cff/cffload.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  cffload.h                                                              */
-/*                                                                         */
-/*    OpenType & CFF data/program tables loader (specification).           */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * cffload.h
+ *
+ *   OpenType & CFF data/program tables loader (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef CFFLOAD_H_
diff --git a/src/cff/cffobjs.c b/src/cff/cffobjs.c
index 61b736c..b3f0f99 100644
--- a/src/cff/cffobjs.c
+++ b/src/cff/cffobjs.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  cffobjs.c                                                              */
-/*                                                                         */
-/*    OpenType objects manager (body).                                     */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * cffobjs.c
+ *
+ *   OpenType objects manager (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -44,21 +44,21 @@
 #include FT_SERVICE_CFF_TABLE_LOAD_H
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_cffobjs
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /*                            SIZE FUNCTIONS                             */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   *                           SIZE FUNCTIONS
+   *
+   */
 
 
   static PSH_Globals_Funcs
@@ -340,11 +340,11 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /*                            SLOT  FUNCTIONS                            */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   *                           SLOT  FUNCTIONS
+   *
+   */
 
   FT_LOCAL_DEF( void )
   cff_slot_done( FT_GlyphSlot  slot )
@@ -382,11 +382,11 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /*                           FACE  FUNCTIONS                             */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   *                          FACE  FUNCTIONS
+   *
+   */
 
   static FT_String*
   cff_strcpy( FT_Memory         memory,
@@ -964,10 +964,10 @@
           /* assume "Regular" style if we don't know better */
           cffface->style_name = cff_strcpy( memory, (char *)"Regular" );
 
-        /*******************************************************************/
-        /*                                                                 */
-        /* Compute face flags.                                             */
-        /*                                                                 */
+        /********************************************************************
+         *
+         * Compute face flags.
+         */
         flags = FT_FACE_FLAG_SCALABLE   | /* scalable outlines */
                 FT_FACE_FLAG_HORIZONTAL | /* horizontal data   */
                 FT_FACE_FLAG_HINTER;      /* has native hinter */
@@ -988,10 +988,10 @@
 
         cffface->face_flags |= flags;
 
-        /*******************************************************************/
-        /*                                                                 */
-        /* Compute style flags.                                            */
-        /*                                                                 */
+        /********************************************************************
+         *
+         * Compute style flags.
+         */
         flags = 0;
 
         if ( dict->italic_angle )
@@ -1027,10 +1027,10 @@
       if ( dict->cid_registry != 0xFFFFU && pure_cff )
         cffface->face_flags |= FT_FACE_FLAG_CID_KEYED;
 
-      /*******************************************************************/
-      /*                                                                 */
-      /* Compute char maps.                                              */
-      /*                                                                 */
+      /********************************************************************
+       *
+       * Compute char maps.
+       */
 
       /* Try to synthesize a Unicode charmap if there is none available */
       /* already.  If an OpenType font contains a Unicode "cmap", we    */
diff --git a/src/cff/cffobjs.h b/src/cff/cffobjs.h
index 616a25b..2beb11b 100644
--- a/src/cff/cffobjs.h
+++ b/src/cff/cffobjs.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  cffobjs.h                                                              */
-/*                                                                         */
-/*    OpenType objects manager (specification).                            */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * cffobjs.h
+ *
+ *   OpenType objects manager (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef CFFOBJS_H_
@@ -51,10 +51,10 @@ FT_BEGIN_HEADER
   cff_slot_init( FT_GlyphSlot  slot );
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Face functions                                                        */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * Face functions
+   */
   FT_LOCAL( FT_Error )
   cff_face_init( FT_Stream      stream,
                  FT_Face        face,           /* CFF_Face */
@@ -66,10 +66,10 @@ FT_BEGIN_HEADER
   cff_face_done( FT_Face  face );               /* CFF_Face */
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Driver functions                                                      */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * Driver functions
+   */
   FT_LOCAL( FT_Error )
   cff_driver_init( FT_Module  module );         /* PS_Driver */
 
diff --git a/src/cff/cffparse.c b/src/cff/cffparse.c
index 3e160e0..41cc1dd 100644
--- a/src/cff/cffparse.c
+++ b/src/cff/cffparse.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  cffparse.c                                                             */
-/*                                                                         */
-/*    CFF token stream parser (body)                                       */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * cffparse.c
+ *
+ *   CFF token stream parser (body)
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -27,12 +27,12 @@
 #include "cffload.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_cffparse
 
diff --git a/src/cff/cffparse.h b/src/cff/cffparse.h
index 8a8caec..9cefab7 100644
--- a/src/cff/cffparse.h
+++ b/src/cff/cffparse.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  cffparse.h                                                             */
-/*                                                                         */
-/*    CFF token stream parser (specification)                              */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * cffparse.h
+ *
+ *   CFF token stream parser (specification)
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef CFFPARSE_H_
@@ -33,11 +33,11 @@ FT_BEGIN_HEADER
 #define CFF_MAX_STACK_DEPTH  96
 
   /*
-   *  There are plans to remove the `maxstack' operator in a forthcoming
-   *  revision of the CFF2 specification, increasing the (then static) stack
-   *  size to 513.  By making the default stack size equal to the maximum
-   *  stack size, the operator is essentially disabled, which has the
-   *  desired effect in FreeType.
+   * There are plans to remove the `maxstack' operator in a forthcoming
+   * revision of the CFF2 specification, increasing the (then static) stack
+   * size to 513.  By making the default stack size equal to the maximum
+   * stack size, the operator is essentially disabled, which has the
+   * desired effect in FreeType.
    */
 #define CFF2_MAX_STACK      513
 #define CFF2_DEFAULT_STACK  513
diff --git a/src/cff/cfftoken.h b/src/cff/cfftoken.h
index fec1ca2..a7ccea8 100644
--- a/src/cff/cfftoken.h
+++ b/src/cff/cfftoken.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  cfftoken.h                                                             */
-/*                                                                         */
-/*    CFF token definitions (specification only).                          */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * cfftoken.h
+ *
+ *   CFF token definitions (specification only).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #undef  FT_STRUCTURE
diff --git a/src/cid/ciderrs.h b/src/cid/ciderrs.h
index a5a86e3..673b099 100644
--- a/src/cid/ciderrs.h
+++ b/src/cid/ciderrs.h
@@ -1,26 +1,26 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ciderrs.h                                                              */
-/*                                                                         */
-/*    CID error codes (specification only).                                */
-/*                                                                         */
-/*  Copyright 2001-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This file is used to define the CID error enumeration constants.      */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * ciderrs.h
+ *
+ *   CID error codes (specification only).
+ *
+ * Copyright 2001-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+
+  /**************************************************************************
+   *
+   * This file is used to define the CID error enumeration constants.
+   *
+   */
 
 #ifndef CIDERRS_H_
 #define CIDERRS_H_
diff --git a/src/cid/cidgload.c b/src/cid/cidgload.c
index d14f9a2..e47cd99 100644
--- a/src/cid/cidgload.c
+++ b/src/cid/cidgload.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  cidgload.c                                                             */
-/*                                                                         */
-/*    CID-keyed Type1 Glyph Loader (body).                                 */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * cidgload.c
+ *
+ *   CID-keyed Type1 Glyph Loader (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -31,12 +31,12 @@
 #include "ciderrs.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_cidgload
 
diff --git a/src/cid/cidgload.h b/src/cid/cidgload.h
index 4811852..21c5e16 100644
--- a/src/cid/cidgload.h
+++ b/src/cid/cidgload.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  cidgload.h                                                             */
-/*                                                                         */
-/*    OpenType Glyph Loader (specification).                               */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * cidgload.h
+ *
+ *   OpenType Glyph Loader (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef CIDGLOAD_H_
diff --git a/src/cid/cidload.c b/src/cid/cidload.c
index 27cd09b..dc458e8 100644
--- a/src/cid/cidload.c
+++ b/src/cid/cidload.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  cidload.c                                                              */
-/*                                                                         */
-/*    CID-keyed Type1 font loader (body).                                  */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * cidload.c
+ *
+ *   CID-keyed Type1 font loader (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -27,12 +27,12 @@
 #include "ciderrs.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_cidload
 
diff --git a/src/cid/cidload.h b/src/cid/cidload.h
index 3f8bd08..a3e6e28 100644
--- a/src/cid/cidload.h
+++ b/src/cid/cidload.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  cidload.h                                                              */
-/*                                                                         */
-/*    CID-keyed Type1 font loader (specification).                         */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * cidload.h
+ *
+ *   CID-keyed Type1 font loader (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef CIDLOAD_H_
diff --git a/src/cid/cidobjs.c b/src/cid/cidobjs.c
index 77afe1c..91c4ed9 100644
--- a/src/cid/cidobjs.c
+++ b/src/cid/cidobjs.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  cidobjs.c                                                              */
-/*                                                                         */
-/*    CID objects manager (body).                                          */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * cidobjs.c
+ *
+ *   CID objects manager (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -31,21 +31,21 @@
 #include "ciderrs.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_cidobjs
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /*                            SLOT  FUNCTIONS                            */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   *                           SLOT  FUNCTIONS
+   *
+   */
 
   FT_LOCAL_DEF( void )
   cid_slot_done( FT_GlyphSlot  slot )
@@ -85,11 +85,11 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /*                           SIZE  FUNCTIONS                             */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   *                          SIZE  FUNCTIONS
+   *
+   */
 
 
   static PSH_Globals_Funcs
@@ -174,23 +174,24 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /*                           FACE  FUNCTIONS                             */
-  /*                                                                       */
-  /*************************************************************************/
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    cid_face_done                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Finalizes a given face object.                                     */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face :: A pointer to the face object to destroy.                   */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   *                          FACE  FUNCTIONS
+   *
+   */
+
+  /**************************************************************************
+   *
+   * @Function:
+   *   cid_face_done
+   *
+   * @Description:
+   *   Finalizes a given face object.
+   *
+   * @Input:
+   *   face ::
+   *     A pointer to the face object to destroy.
+   */
   FT_LOCAL_DEF( void )
   cid_face_done( FT_Face  cidface )         /* CID_Face */
   {
@@ -252,29 +253,34 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    cid_face_init                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Initializes a given CID face object.                               */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    stream     :: The source font stream.                              */
-  /*                                                                       */
-  /*    face_index :: The index of the font face in the resource.          */
-  /*                                                                       */
-  /*    num_params :: Number of additional generic parameters.  Ignored.   */
-  /*                                                                       */
-  /*    params     :: Additional generic parameters.  Ignored.             */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    face       :: The newly built face object.                         */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   cid_face_init
+   *
+   * @Description:
+   *   Initializes a given CID face object.
+   *
+   * @Input:
+   *   stream ::
+   *     The source font stream.
+   *
+   *   face_index ::
+   *     The index of the font face in the resource.
+   *
+   *   num_params ::
+   *     Number of additional generic parameters.  Ignored.
+   *
+   *   params ::
+   *     Additional generic parameters.  Ignored.
+   *
+   * @InOut:
+   *   face ::
+   *     The newly built face object.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   cid_face_init( FT_Stream      stream,
                  FT_Face        cidface,        /* CID_Face */
@@ -449,20 +455,21 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    cid_driver_init                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Initializes a given CID driver object.                             */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    driver :: A handle to the target driver object.                    */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   cid_driver_init
+   *
+   * @Description:
+   *   Initializes a given CID driver object.
+   *
+   * @Input:
+   *   driver ::
+   *     A handle to the target driver object.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   cid_driver_init( FT_Module  module )
   {
@@ -505,17 +512,18 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    cid_driver_done                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Finalizes a given CID driver.                                      */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    driver :: A handle to the target CID driver.                       */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   cid_driver_done
+   *
+   * @Description:
+   *   Finalizes a given CID driver.
+   *
+   * @Input:
+   *   driver ::
+   *     A handle to the target CID driver.
+   */
   FT_LOCAL_DEF( void )
   cid_driver_done( FT_Module  driver )
   {
diff --git a/src/cid/cidobjs.h b/src/cid/cidobjs.h
index 0221f01..33a2e7a 100644
--- a/src/cid/cidobjs.h
+++ b/src/cid/cidobjs.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  cidobjs.h                                                              */
-/*                                                                         */
-/*    CID objects manager (specification).                                 */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * cidobjs.h
+ *
+ *   CID objects manager (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef CIDOBJS_H_
@@ -34,60 +34,60 @@ FT_BEGIN_HEADER
   typedef struct CID_Glyph_Hints_  CID_Glyph_Hints;
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    CID_Driver                                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A handle to a Type 1 driver object.                                */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Type:
+   *   CID_Driver
+   *
+   * @Description:
+   *   A handle to a Type 1 driver object.
+   */
   typedef struct CID_DriverRec_*  CID_Driver;
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    CID_Size                                                           */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A handle to a Type 1 size object.                                  */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Type:
+   *   CID_Size
+   *
+   * @Description:
+   *   A handle to a Type 1 size object.
+   */
   typedef struct CID_SizeRec_*  CID_Size;
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    CID_GlyphSlot                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A handle to a Type 1 glyph slot object.                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Type:
+   *   CID_GlyphSlot
+   *
+   * @Description:
+   *   A handle to a Type 1 glyph slot object.
+   */
   typedef struct CID_GlyphSlotRec_*  CID_GlyphSlot;
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    CID_CharMap                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A handle to a Type 1 character mapping object.                     */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The Type 1 format doesn't use a charmap but an encoding table.     */
-  /*    The driver is responsible for making up charmap objects            */
-  /*    corresponding to these tables.                                     */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Type:
+   *   CID_CharMap
+   *
+   * @Description:
+   *   A handle to a Type 1 character mapping object.
+   *
+   * @Note:
+   *   The Type 1 format doesn't use a charmap but an encoding table.
+   *   The driver is responsible for making up charmap objects
+   *   corresponding to these tables.
+   */
   typedef struct CID_CharMapRec_*  CID_CharMap;
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* HERE BEGINS THE TYPE 1 SPECIFIC STUFF                                 */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * HERE BEGINS THE TYPE 1 SPECIFIC STUFF
+   *
+   */
 
 
   typedef struct  CID_SizeRec_
diff --git a/src/cid/cidparse.c b/src/cid/cidparse.c
index b1c7f3c..861c157 100644
--- a/src/cid/cidparse.c
+++ b/src/cid/cidparse.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  cidparse.c                                                             */
-/*                                                                         */
-/*    CID-keyed Type1 parser (body).                                       */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * cidparse.c
+ *
+ *   CID-keyed Type1 parser (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -26,12 +26,12 @@
 #include "ciderrs.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_cidparse
 
diff --git a/src/cid/cidparse.h b/src/cid/cidparse.h
index 61602f7..029c6ae 100644
--- a/src/cid/cidparse.h
+++ b/src/cid/cidparse.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  cidparse.h                                                             */
-/*                                                                         */
-/*    CID-keyed Type1 parser (specification).                              */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * cidparse.h
+ *
+ *   CID-keyed Type1 parser (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef CIDPARSE_H_
@@ -29,35 +29,43 @@
 FT_BEGIN_HEADER
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    CID_Parser                                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A CID_Parser is an object used to parse a Type 1 fonts very        */
-  /*    quickly.                                                           */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    root           :: The root PS_ParserRec fields.                    */
-  /*                                                                       */
-  /*    stream         :: The current input stream.                        */
-  /*                                                                       */
-  /*    postscript     :: A pointer to the data to be parsed.              */
-  /*                                                                       */
-  /*    postscript_len :: The length of the data to be parsed.             */
-  /*                                                                       */
-  /*    data_offset    :: The start position of the binary data (i.e., the */
-  /*                      end of the data to be parsed.                    */
-  /*                                                                       */
-  /*    binary_length  :: The length of the data after the `StartData'     */
-  /*                      command if the data format is hexadecimal.       */
-  /*                                                                       */
-  /*    cid            :: A structure which holds the information about    */
-  /*                      the current font.                                */
-  /*                                                                       */
-  /*    num_dict       :: The number of font dictionaries.                 */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Struct:
+   *   CID_Parser
+   *
+   * @Description:
+   *   A CID_Parser is an object used to parse a Type 1 fonts very
+   *   quickly.
+   *
+   * @Fields:
+   *   root ::
+   *     The root PS_ParserRec fields.
+   *
+   *   stream ::
+   *     The current input stream.
+   *
+   *   postscript ::
+   *     A pointer to the data to be parsed.
+   *
+   *   postscript_len ::
+   *     The length of the data to be parsed.
+   *
+   *   data_offset ::
+   *     The start position of the binary data (i.e., the
+   *     end of the data to be parsed.
+   *
+   *   binary_length ::
+   *     The length of the data after the `StartData'
+   *     command if the data format is hexadecimal.
+   *
+   *   cid ::
+   *     A structure which holds the information about
+   *     the current font.
+   *
+   *   num_dict ::
+   *     The number of font dictionaries.
+   */
   typedef struct  CID_Parser_
   {
     PS_ParserRec  root;
@@ -86,11 +94,11 @@ FT_BEGIN_HEADER
   cid_parser_done( CID_Parser*  parser );
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /*                            PARSING ROUTINES                           */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   *                           PARSING ROUTINES
+   *
+   */
 
 #define cid_parser_skip_spaces( p )                 \
           (p)->root.funcs.skip_spaces( &(p)->root )
diff --git a/src/cid/cidriver.c b/src/cid/cidriver.c
index d9faf35..935c112 100644
--- a/src/cid/cidriver.c
+++ b/src/cid/cidriver.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  cidriver.c                                                             */
-/*                                                                         */
-/*    CID driver interface (body).                                         */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * cidriver.c
+ *
+ *   CID driver interface (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -34,18 +34,18 @@
 #include FT_INTERNAL_POSTSCRIPT_AUX_H
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_ciddriver
 
 
   /*
-   *  POSTSCRIPT NAME SERVICE
+   * POSTSCRIPT NAME SERVICE
    *
    */
 
@@ -69,7 +69,7 @@
 
 
   /*
-   *  POSTSCRIPT INFO SERVICE
+   * POSTSCRIPT INFO SERVICE
    *
    */
 
@@ -105,7 +105,7 @@
 
 
   /*
-   *  CID INFO SERVICE
+   * CID INFO SERVICE
    *
    */
   static FT_Error
@@ -173,7 +173,7 @@
 
 
   /*
-   *  PROPERTY SERVICE
+   * PROPERTY SERVICE
    *
    */
 
@@ -185,7 +185,7 @@
 
 
   /*
-   *  SERVICE LIST
+   * SERVICE LIST
    *
    */
 
diff --git a/src/cid/cidriver.h b/src/cid/cidriver.h
index dbb7497..2933808 100644
--- a/src/cid/cidriver.h
+++ b/src/cid/cidriver.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  cidriver.h                                                             */
-/*                                                                         */
-/*    High-level CID driver interface (specification).                     */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * cidriver.h
+ *
+ *   High-level CID driver interface (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef CIDRIVER_H_
diff --git a/src/cid/cidtoken.h b/src/cid/cidtoken.h
index b0e2dac..11883b1 100644
--- a/src/cid/cidtoken.h
+++ b/src/cid/cidtoken.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  cidtoken.h                                                             */
-/*                                                                         */
-/*    CID token definitions (specification only).                          */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * cidtoken.h
+ *
+ *   CID token definitions (specification only).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #undef  FT_STRUCTURE
diff --git a/src/cid/type1cid.c b/src/cid/type1cid.c
index 61770e3..02d9400 100644
--- a/src/cid/type1cid.c
+++ b/src/cid/type1cid.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  type1cid.c                                                             */
-/*                                                                         */
-/*    FreeType OpenType driver component (body only).                      */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * type1cid.c
+ *
+ *   FreeType OpenType driver component (body only).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #define FT_MAKE_OPTION_SINGLE_OBJECT
diff --git a/src/gxvalid/gxvalid.c b/src/gxvalid/gxvalid.c
index d0577a2..f49e8b7 100644
--- a/src/gxvalid/gxvalid.c
+++ b/src/gxvalid/gxvalid.c
@@ -1,20 +1,20 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxvalid.c                                                              */
-/*                                                                         */
-/*    FreeType validator for TrueTypeGX/AAT tables (body only).            */
-/*                                                                         */
-/*  Copyright 2005-2018 by                                                 */
-/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxvalid.c
+ *
+ *   FreeType validator for TrueTypeGX/AAT tables (body only).
+ *
+ * Copyright 2005-2018 by
+ * suzuki toshiya, Masatake YAMATO, Red Hat K.K.,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #define FT_MAKE_OPTION_SINGLE_OBJECT
diff --git a/src/gxvalid/gxvalid.h b/src/gxvalid/gxvalid.h
index 19f0379..cf02fcb 100644
--- a/src/gxvalid/gxvalid.h
+++ b/src/gxvalid/gxvalid.h
@@ -1,28 +1,28 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxvalid.h                                                              */
-/*                                                                         */
-/*    TrueTypeGX/AAT table validation (specification only).                */
-/*                                                                         */
-/*  Copyright 2005-2018 by                                                 */
-/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* gxvalid is derived from both gxlayout module and otvalid module.        */
-/* Development of gxlayout is supported by the Information-technology      */
-/* Promotion Agency(IPA), Japan.                                           */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxvalid.h
+ *
+ *   TrueTypeGX/AAT table validation (specification only).
+ *
+ * Copyright 2005-2018 by
+ * suzuki toshiya, Masatake YAMATO, Red Hat K.K.,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ *
+ * gxvalid is derived from both gxlayout module and otvalid module.
+ * Development of gxlayout is supported by the Information-technology
+ * Promotion Agency(IPA), Japan.
+ *
+ */
 
 
 #ifndef GXVALID_H_
diff --git a/src/gxvalid/gxvbsln.c b/src/gxvalid/gxvbsln.c
index c367d38..8b554fd 100644
--- a/src/gxvalid/gxvbsln.c
+++ b/src/gxvalid/gxvbsln.c
@@ -1,40 +1,40 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxvbsln.c                                                              */
-/*                                                                         */
-/*    TrueTypeGX/AAT bsln table validation (body).                         */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* gxvalid is derived from both gxlayout module and otvalid module.        */
-/* Development of gxlayout is supported by the Information-technology      */
-/* Promotion Agency(IPA), Japan.                                           */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxvbsln.c
+ *
+ *   TrueTypeGX/AAT bsln table validation (body).
+ *
+ * Copyright 2004-2018 by
+ * suzuki toshiya, Masatake YAMATO, Red Hat K.K.,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ *
+ * gxvalid is derived from both gxlayout module and otvalid module.
+ * Development of gxlayout is supported by the Information-technology
+ * Promotion Agency(IPA), Japan.
+ *
+ */
 
 
 #include "gxvalid.h"
 #include "gxvcommn.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_gxvbsln
 
diff --git a/src/gxvalid/gxvcommn.c b/src/gxvalid/gxvcommn.c
index b966011..9a22107 100644
--- a/src/gxvalid/gxvcommn.c
+++ b/src/gxvalid/gxvcommn.c
@@ -1,39 +1,39 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxvcommn.c                                                             */
-/*                                                                         */
-/*    TrueTypeGX/AAT common tables validation (body).                      */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* gxvalid is derived from both gxlayout module and otvalid module.        */
-/* Development of gxlayout is supported by the Information-technology      */
-/* Promotion Agency(IPA), Japan.                                           */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxvcommn.c
+ *
+ *   TrueTypeGX/AAT common tables validation (body).
+ *
+ * Copyright 2004-2018 by
+ * suzuki toshiya, Masatake YAMATO, Red Hat K.K.,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ *
+ * gxvalid is derived from both gxlayout module and otvalid module.
+ * Development of gxlayout is supported by the Information-technology
+ * Promotion Agency(IPA), Japan.
+ *
+ */
 
 
 #include "gxvcommn.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_gxvcommon
 
diff --git a/src/gxvalid/gxvcommn.h b/src/gxvalid/gxvcommn.h
index 8e4ff9c..9834c57 100644
--- a/src/gxvalid/gxvcommn.h
+++ b/src/gxvalid/gxvcommn.h
@@ -1,39 +1,39 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxvcommn.h                                                             */
-/*                                                                         */
-/*    TrueTypeGX/AAT common tables validation (specification).             */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* gxvalid is derived from both gxlayout module and otvalid module.        */
-/* Development of gxlayout is supported by the Information-technology      */
-/* Promotion Agency(IPA), Japan.                                           */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxvcommn.h
+ *
+ *   TrueTypeGX/AAT common tables validation (specification).
+ *
+ * Copyright 2004-2018 by
+ * suzuki toshiya, Masatake YAMATO, Red Hat K.K.,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ *
+ * gxvalid is derived from both gxlayout module and otvalid module.
+ * Development of gxlayout is supported by the Information-technology
+ * Promotion Agency(IPA), Japan.
+ *
+ */
 
 
   /*
    * keywords in variable naming
    * ---------------------------
-   *  table: Of type FT_Bytes, pointing to the start of this table/subtable.
-   *  limit: Of type FT_Bytes, pointing to the end of this table/subtable,
+   * table:  Of type FT_Bytes, pointing to the start of this table/subtable.
+   * limit:  Of type FT_Bytes, pointing to the end of this table/subtable,
    *         including padding for alignment.
-   *  offset: Of type FT_UInt, the number of octets from the start to target.
-   *  length: Of type FT_UInt, the number of octets from the start to the
-   *          end in this table/subtable, including padding for alignment.
+   * offset: Of type FT_UInt, the number of octets from the start to target.
+   * length: Of type FT_UInt, the number of octets from the start to the
+   *         end in this table/subtable, including padding for alignment.
    *
    *  _MIN, _MAX: Should be added to the tail of macros, as INT_MIN, etc.
    */
diff --git a/src/gxvalid/gxverror.h b/src/gxvalid/gxverror.h
index d115125..e36b076 100644
--- a/src/gxvalid/gxverror.h
+++ b/src/gxvalid/gxverror.h
@@ -1,36 +1,36 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxverror.h                                                             */
-/*                                                                         */
-/*    TrueTypeGX/AAT validation module error codes (specification only).   */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* gxvalid is derived from both gxlayout module and otvalid module.        */
-/* Development of gxlayout is supported by the Information-technology      */
-/* Promotion Agency(IPA), Japan.                                           */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This file is used to define the OpenType validation module error      */
-  /* enumeration constants.                                                */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * gxverror.h
+ *
+ *   TrueTypeGX/AAT validation module error codes (specification only).
+ *
+ * Copyright 2004-2018 by
+ * suzuki toshiya, Masatake YAMATO, Red Hat K.K.,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ *
+ * gxvalid is derived from both gxlayout module and otvalid module.
+ * Development of gxlayout is supported by the Information-technology
+ * Promotion Agency(IPA), Japan.
+ *
+ */
+
+
+  /**************************************************************************
+   *
+   * This file is used to define the OpenType validation module error
+   * enumeration constants.
+   *
+   */
 
 #ifndef GXVERROR_H_
 #define GXVERROR_H_
diff --git a/src/gxvalid/gxvfeat.c b/src/gxvalid/gxvfeat.c
index 2c805d1..91500bd 100644
--- a/src/gxvalid/gxvfeat.c
+++ b/src/gxvalid/gxvfeat.c
@@ -1,28 +1,28 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxvfeat.c                                                              */
-/*                                                                         */
-/*    TrueTypeGX/AAT feat table validation (body).                         */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* gxvalid is derived from both gxlayout module and otvalid module.        */
-/* Development of gxlayout is supported by the Information-technology      */
-/* Promotion Agency(IPA), Japan.                                           */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxvfeat.c
+ *
+ *   TrueTypeGX/AAT feat table validation (body).
+ *
+ * Copyright 2004-2018 by
+ * suzuki toshiya, Masatake YAMATO, Red Hat K.K.,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ *
+ * gxvalid is derived from both gxlayout module and otvalid module.
+ * Development of gxlayout is supported by the Information-technology
+ * Promotion Agency(IPA), Japan.
+ *
+ */
 
 
 #include "gxvalid.h"
@@ -30,12 +30,12 @@
 #include "gxvfeat.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_gxvfeat
 
diff --git a/src/gxvalid/gxvfeat.h b/src/gxvalid/gxvfeat.h
index 2d94380..715791d 100644
--- a/src/gxvalid/gxvfeat.h
+++ b/src/gxvalid/gxvfeat.h
@@ -1,28 +1,28 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxvfeat.h                                                              */
-/*                                                                         */
-/*    TrueTypeGX/AAT feat table validation (specification).                */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* gxvalid is derived from both gxlayout module and otvalid module.        */
-/* Development of gxlayout is supported by the Information-technology      */
-/* Promotion Agency(IPA), Japan.                                           */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxvfeat.h
+ *
+ *   TrueTypeGX/AAT feat table validation (specification).
+ *
+ * Copyright 2004-2018 by
+ * suzuki toshiya, Masatake YAMATO, Red Hat K.K.,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ *
+ * gxvalid is derived from both gxlayout module and otvalid module.
+ * Development of gxlayout is supported by the Information-technology
+ * Promotion Agency(IPA), Japan.
+ *
+ */
 
 
 #ifndef GXVFEAT_H_
diff --git a/src/gxvalid/gxvfgen.c b/src/gxvalid/gxvfgen.c
index 840c0f3..c95aebd 100644
--- a/src/gxvalid/gxvfgen.c
+++ b/src/gxvalid/gxvfgen.c
@@ -1,62 +1,62 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxfgen.c                                                               */
-/*                                                                         */
-/*    Generate feature registry data for gxv `feat' validator.             */
-/*    This program is derived from gxfeatreg.c in gxlayout.                */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  Masatake YAMATO and Redhat K.K.                                        */
-/*                                                                         */
-/*  This file may only be used,                                            */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxfgen.c
+ *
+ *   Generate feature registry data for gxv `feat' validator.
+ *   This program is derived from gxfeatreg.c in gxlayout.
+ *
+ * Copyright 2004-2018 by
+ * Masatake YAMATO and Redhat K.K.
+ *
+ * This file may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
-/***************************************************************************/
-/*                                                                         */
-/*  gxfeatreg.c                                                            */
-/*                                                                         */
-/*    Database of font features pre-defined by Apple Computer, Inc.        */
-/*    
https://developer.apple.com/fonts/TrueType-Reference-Manual/RM09/AppendixF.html 
*/
-/*    (body).                                                              */
-/*                                                                         */
-/*  Copyright 2003 by                                                      */
-/*  Masatake YAMATO and Redhat K.K.                                        */
-/*                                                                         */
-/*  This file may only be used,                                            */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxfeatreg.c
+ *
+ *   Database of font features pre-defined by Apple Computer, Inc.
+ *   
https://developer.apple.com/fonts/TrueType-Reference-Manual/RM09/AppendixF.html
+ *   (body).
+ *
+ * Copyright 2003 by
+ * Masatake YAMATO and Redhat K.K.
+ *
+ * This file may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
-/***************************************************************************/
-/*                                                                         */
-/* Development of gxfeatreg.c is supported by                              */
-/* Information-technology Promotion Agency, Japan.                         */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * Development of gxfeatreg.c is supported by
+ * Information-technology Promotion Agency, Japan.
+ *
+ */
 
 
-/***************************************************************************/
-/*                                                                         */
-/* This file is compiled as a stand-alone executable.                      */
-/* This file is never compiled into `libfreetype2'.                        */
-/* The output of this file is used in `gxvfeat.c'.                         */
-/* ----------------------------------------------------------------------- */
-/* Compile: gcc `pkg-config --cflags freetype2` gxvfgen.c -o gxvfgen       */
-/* Run: ./gxvfgen > tmp.c                                                  */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * This file is compiled as a stand-alone executable.
+ * This file is never compiled into `libfreetype2'.
+ * The output of this file is used in `gxvfeat.c'.
+ * -----------------------------------------------------------------------
+ * Compile: gcc `pkg-config --cflags freetype2` gxvfgen.c -o gxvfgen
+ * Run: ./gxvfgen > tmp.c
+ *
+ */
 
-  /*******************************************************************/
-  /* WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING */
-  /*******************************************************************/
+  /********************************************************************
+   * WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING
+   */
 
   /*
    * If you add a new setting to a feature, check the number of settings
@@ -65,9 +65,9 @@
    */
 #define FEATREG_MAX_SETTING  12
 
-  /*******************************************************************/
-  /* WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING */
-  /*******************************************************************/
+  /********************************************************************
+   * WARNING WARNING WARNING WARNING WARNING WARNING WARNING WARNING
+   */
 
 
 #include <stdio.h>
diff --git a/src/gxvalid/gxvjust.c b/src/gxvalid/gxvjust.c
index 00c4293..c8a9ab6 100644
--- a/src/gxvalid/gxvjust.c
+++ b/src/gxvalid/gxvjust.c
@@ -1,28 +1,28 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxvjust.c                                                              */
-/*                                                                         */
-/*    TrueTypeGX/AAT just table validation (body).                         */
-/*                                                                         */
-/*  Copyright 2005-2018 by                                                 */
-/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* gxvalid is derived from both gxlayout module and otvalid module.        */
-/* Development of gxlayout is supported by the Information-technology      */
-/* Promotion Agency(IPA), Japan.                                           */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxvjust.c
+ *
+ *   TrueTypeGX/AAT just table validation (body).
+ *
+ * Copyright 2005-2018 by
+ * suzuki toshiya, Masatake YAMATO, Red Hat K.K.,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ *
+ * gxvalid is derived from both gxlayout module and otvalid module.
+ * Development of gxlayout is supported by the Information-technology
+ * Promotion Agency(IPA), Japan.
+ *
+ */
 
 
 #include "gxvalid.h"
@@ -31,12 +31,12 @@
 #include FT_SFNT_NAMES_H
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_gxvjust
 
diff --git a/src/gxvalid/gxvkern.c b/src/gxvalid/gxvkern.c
index 9c0efd7..df9f10e 100644
--- a/src/gxvalid/gxvkern.c
+++ b/src/gxvalid/gxvkern.c
@@ -1,28 +1,28 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxvkern.c                                                              */
-/*                                                                         */
-/*    TrueTypeGX/AAT kern table validation (body).                         */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* gxvalid is derived from both gxlayout module and otvalid module.        */
-/* Development of gxlayout is supported by the Information-technology      */
-/* Promotion Agency(IPA), Japan.                                           */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxvkern.c
+ *
+ *   TrueTypeGX/AAT kern table validation (body).
+ *
+ * Copyright 2004-2018 by
+ * suzuki toshiya, Masatake YAMATO, Red Hat K.K.,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ *
+ * gxvalid is derived from both gxlayout module and otvalid module.
+ * Development of gxlayout is supported by the Information-technology
+ * Promotion Agency(IPA), Japan.
+ *
+ */
 
 
 #include "gxvalid.h"
@@ -32,12 +32,12 @@
 #include FT_SERVICE_GX_VALIDATE_H
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_gxvkern
 
diff --git a/src/gxvalid/gxvlcar.c b/src/gxvalid/gxvlcar.c
index 0f261a9..fd167f6 100644
--- a/src/gxvalid/gxvlcar.c
+++ b/src/gxvalid/gxvlcar.c
@@ -1,40 +1,40 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxvlcar.c                                                              */
-/*                                                                         */
-/*    TrueTypeGX/AAT lcar table validation (body).                         */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* gxvalid is derived from both gxlayout module and otvalid module.        */
-/* Development of gxlayout is supported by the Information-technology      */
-/* Promotion Agency(IPA), Japan.                                           */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxvlcar.c
+ *
+ *   TrueTypeGX/AAT lcar table validation (body).
+ *
+ * Copyright 2004-2018 by
+ * suzuki toshiya, Masatake YAMATO, Red Hat K.K.,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ *
+ * gxvalid is derived from both gxlayout module and otvalid module.
+ * Development of gxlayout is supported by the Information-technology
+ * Promotion Agency(IPA), Japan.
+ *
+ */
 
 
 #include "gxvalid.h"
 #include "gxvcommn.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_gxvlcar
 
diff --git a/src/gxvalid/gxvmod.c b/src/gxvalid/gxvmod.c
index 1a3c862..847e0f1 100644
--- a/src/gxvalid/gxvmod.c
+++ b/src/gxvalid/gxvmod.c
@@ -1,28 +1,28 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxvmod.c                                                               */
-/*                                                                         */
-/*    FreeType's TrueTypeGX/AAT validation module implementation (body).   */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* gxvalid is derived from both gxlayout module and otvalid module.        */
-/* Development of gxlayout is supported by the Information-technology      */
-/* Promotion Agency(IPA), Japan.                                           */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxvmod.c
+ *
+ *   FreeType's TrueTypeGX/AAT validation module implementation (body).
+ *
+ * Copyright 2004-2018 by
+ * suzuki toshiya, Masatake YAMATO, Red Hat K.K.,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ *
+ * gxvalid is derived from both gxlayout module and otvalid module.
+ * Development of gxlayout is supported by the Information-technology
+ * Promotion Agency(IPA), Japan.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -37,12 +37,12 @@
 #include "gxvcommn.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_gxvmodule
 
diff --git a/src/gxvalid/gxvmod.h b/src/gxvalid/gxvmod.h
index b3aee14..f6a2502 100644
--- a/src/gxvalid/gxvmod.h
+++ b/src/gxvalid/gxvmod.h
@@ -1,29 +1,29 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxvmod.h                                                               */
-/*                                                                         */
-/*    FreeType's TrueTypeGX/AAT validation module implementation           */
-/*    (specification).                                                     */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* gxvalid is derived from both gxlayout module and otvalid module.        */
-/* Development of gxlayout is supported by the Information-technology      */
-/* Promotion Agency(IPA), Japan.                                           */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxvmod.h
+ *
+ *   FreeType's TrueTypeGX/AAT validation module implementation
+ *   (specification).
+ *
+ * Copyright 2004-2018 by
+ * suzuki toshiya, Masatake YAMATO, Red Hat K.K.,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ *
+ * gxvalid is derived from both gxlayout module and otvalid module.
+ * Development of gxlayout is supported by the Information-technology
+ * Promotion Agency(IPA), Japan.
+ *
+ */
 
 
 #ifndef GXVMOD_H_
diff --git a/src/gxvalid/gxvmort.c b/src/gxvalid/gxvmort.c
index b361cb2..1dfa5a3 100644
--- a/src/gxvalid/gxvmort.c
+++ b/src/gxvalid/gxvmort.c
@@ -1,40 +1,40 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxvmort.c                                                              */
-/*                                                                         */
-/*    TrueTypeGX/AAT mort table validation (body).                         */
-/*                                                                         */
-/*  Copyright 2005-2018 by                                                 */
-/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* gxvalid is derived from both gxlayout module and otvalid module.        */
-/* Development of gxlayout is supported by the Information-technology      */
-/* Promotion Agency(IPA), Japan.                                           */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxvmort.c
+ *
+ *   TrueTypeGX/AAT mort table validation (body).
+ *
+ * Copyright 2005-2018 by
+ * suzuki toshiya, Masatake YAMATO, Red Hat K.K.,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ *
+ * gxvalid is derived from both gxlayout module and otvalid module.
+ * Development of gxlayout is supported by the Information-technology
+ * Promotion Agency(IPA), Japan.
+ *
+ */
 
 
 #include "gxvmort.h"
 #include "gxvfeat.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_gxvmort
 
diff --git a/src/gxvalid/gxvmort.h b/src/gxvalid/gxvmort.h
index d803064..c2dc657 100644
--- a/src/gxvalid/gxvmort.h
+++ b/src/gxvalid/gxvmort.h
@@ -1,28 +1,28 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxvmort.h                                                              */
-/*                                                                         */
-/*    TrueTypeGX/AAT common definition for mort table (specification).     */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* gxvalid is derived from both gxlayout module and otvalid module.        */
-/* Development of gxlayout is supported by the Information-technology      */
-/* Promotion Agency(IPA), Japan.                                           */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxvmort.h
+ *
+ *   TrueTypeGX/AAT common definition for mort table (specification).
+ *
+ * Copyright 2004-2018 by
+ * suzuki toshiya, Masatake YAMATO, Red Hat K.K.,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ *
+ * gxvalid is derived from both gxlayout module and otvalid module.
+ * Development of gxlayout is supported by the Information-technology
+ * Promotion Agency(IPA), Japan.
+ *
+ */
 
 
 #ifndef GXVMORT_H_
diff --git a/src/gxvalid/gxvmort0.c b/src/gxvalid/gxvmort0.c
index 95cf53d..c7901cb 100644
--- a/src/gxvalid/gxvmort0.c
+++ b/src/gxvalid/gxvmort0.c
@@ -1,40 +1,40 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxvmort0.c                                                             */
-/*                                                                         */
-/*    TrueTypeGX/AAT mort table validation                                 */
-/*    body for type0 (Indic Script Rearrangement) subtable.                */
-/*                                                                         */
-/*  Copyright 2005-2018 by                                                 */
-/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* gxvalid is derived from both gxlayout module and otvalid module.        */
-/* Development of gxlayout is supported by the Information-technology      */
-/* Promotion Agency(IPA), Japan.                                           */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxvmort0.c
+ *
+ *   TrueTypeGX/AAT mort table validation
+ *   body for type0 (Indic Script Rearrangement) subtable.
+ *
+ * Copyright 2005-2018 by
+ * suzuki toshiya, Masatake YAMATO, Red Hat K.K.,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ *
+ * gxvalid is derived from both gxlayout module and otvalid module.
+ * Development of gxlayout is supported by the Information-technology
+ * Promotion Agency(IPA), Japan.
+ *
+ */
 
 
 #include "gxvmort.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_gxvmort
 
diff --git a/src/gxvalid/gxvmort1.c b/src/gxvalid/gxvmort1.c
index a7683a1..f2f4f57 100644
--- a/src/gxvalid/gxvmort1.c
+++ b/src/gxvalid/gxvmort1.c
@@ -1,40 +1,40 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxvmort1.c                                                             */
-/*                                                                         */
-/*    TrueTypeGX/AAT mort table validation                                 */
-/*    body for type1 (Contextual Substitution) subtable.                   */
-/*                                                                         */
-/*  Copyright 2005-2018 by                                                 */
-/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* gxvalid is derived from both gxlayout module and otvalid module.        */
-/* Development of gxlayout is supported by the Information-technology      */
-/* Promotion Agency(IPA), Japan.                                           */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxvmort1.c
+ *
+ *   TrueTypeGX/AAT mort table validation
+ *   body for type1 (Contextual Substitution) subtable.
+ *
+ * Copyright 2005-2018 by
+ * suzuki toshiya, Masatake YAMATO, Red Hat K.K.,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ *
+ * gxvalid is derived from both gxlayout module and otvalid module.
+ * Development of gxlayout is supported by the Information-technology
+ * Promotion Agency(IPA), Japan.
+ *
+ */
 
 
 #include "gxvmort.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_gxvmort
 
diff --git a/src/gxvalid/gxvmort2.c b/src/gxvalid/gxvmort2.c
index c23c277..33fea0f 100644
--- a/src/gxvalid/gxvmort2.c
+++ b/src/gxvalid/gxvmort2.c
@@ -1,40 +1,40 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxvmort2.c                                                             */
-/*                                                                         */
-/*    TrueTypeGX/AAT mort table validation                                 */
-/*    body for type2 (Ligature Substitution) subtable.                     */
-/*                                                                         */
-/*  Copyright 2005-2018 by                                                 */
-/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* gxvalid is derived from both gxlayout module and otvalid module.        */
-/* Development of gxlayout is supported by the Information-technology      */
-/* Promotion Agency(IPA), Japan.                                           */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxvmort2.c
+ *
+ *   TrueTypeGX/AAT mort table validation
+ *   body for type2 (Ligature Substitution) subtable.
+ *
+ * Copyright 2005-2018 by
+ * suzuki toshiya, Masatake YAMATO, Red Hat K.K.,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ *
+ * gxvalid is derived from both gxlayout module and otvalid module.
+ * Development of gxlayout is supported by the Information-technology
+ * Promotion Agency(IPA), Japan.
+ *
+ */
 
 
 #include "gxvmort.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_gxvmort
 
diff --git a/src/gxvalid/gxvmort4.c b/src/gxvalid/gxvmort4.c
index 9d21a5f..6cf1e80 100644
--- a/src/gxvalid/gxvmort4.c
+++ b/src/gxvalid/gxvmort4.c
@@ -1,40 +1,40 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxvmort4.c                                                             */
-/*                                                                         */
-/*    TrueTypeGX/AAT mort table validation                                 */
-/*    body for type4 (Non-Contextual Glyph Substitution) subtable.         */
-/*                                                                         */
-/*  Copyright 2005-2018 by                                                 */
-/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* gxvalid is derived from both gxlayout module and otvalid module.        */
-/* Development of gxlayout is supported by the Information-technology      */
-/* Promotion Agency(IPA), Japan.                                           */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxvmort4.c
+ *
+ *   TrueTypeGX/AAT mort table validation
+ *   body for type4 (Non-Contextual Glyph Substitution) subtable.
+ *
+ * Copyright 2005-2018 by
+ * suzuki toshiya, Masatake YAMATO, Red Hat K.K.,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ *
+ * gxvalid is derived from both gxlayout module and otvalid module.
+ * Development of gxlayout is supported by the Information-technology
+ * Promotion Agency(IPA), Japan.
+ *
+ */
 
 
 #include "gxvmort.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_gxvmort
 
diff --git a/src/gxvalid/gxvmort5.c b/src/gxvalid/gxvmort5.c
index 42cb428..ae94e22 100644
--- a/src/gxvalid/gxvmort5.c
+++ b/src/gxvalid/gxvmort5.c
@@ -1,40 +1,40 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxvmort5.c                                                             */
-/*                                                                         */
-/*    TrueTypeGX/AAT mort table validation                                 */
-/*    body for type5 (Contextual Glyph Insertion) subtable.                */
-/*                                                                         */
-/*  Copyright 2005-2018 by                                                 */
-/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* gxvalid is derived from both gxlayout module and otvalid module.        */
-/* Development of gxlayout is supported by the Information-technology      */
-/* Promotion Agency(IPA), Japan.                                           */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxvmort5.c
+ *
+ *   TrueTypeGX/AAT mort table validation
+ *   body for type5 (Contextual Glyph Insertion) subtable.
+ *
+ * Copyright 2005-2018 by
+ * suzuki toshiya, Masatake YAMATO, Red Hat K.K.,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ *
+ * gxvalid is derived from both gxlayout module and otvalid module.
+ * Development of gxlayout is supported by the Information-technology
+ * Promotion Agency(IPA), Japan.
+ *
+ */
 
 
 #include "gxvmort.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_gxvmort
 
diff --git a/src/gxvalid/gxvmorx.c b/src/gxvalid/gxvmorx.c
index 9fd6e6b..f02ff54 100644
--- a/src/gxvalid/gxvmorx.c
+++ b/src/gxvalid/gxvmorx.c
@@ -1,39 +1,39 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxvmorx.c                                                              */
-/*                                                                         */
-/*    TrueTypeGX/AAT morx table validation (body).                         */
-/*                                                                         */
-/*  Copyright 2005-2018 by                                                 */
-/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* gxvalid is derived from both gxlayout module and otvalid module.        */
-/* Development of gxlayout is supported by the Information-technology      */
-/* Promotion Agency(IPA), Japan.                                           */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxvmorx.c
+ *
+ *   TrueTypeGX/AAT morx table validation (body).
+ *
+ * Copyright 2005-2018 by
+ * suzuki toshiya, Masatake YAMATO, Red Hat K.K.,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ *
+ * gxvalid is derived from both gxlayout module and otvalid module.
+ * Development of gxlayout is supported by the Information-technology
+ * Promotion Agency(IPA), Japan.
+ *
+ */
 
 
 #include "gxvmorx.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_gxvmorx
 
diff --git a/src/gxvalid/gxvmorx.h b/src/gxvalid/gxvmorx.h
index 6d9925e..1ded623 100644
--- a/src/gxvalid/gxvmorx.h
+++ b/src/gxvalid/gxvmorx.h
@@ -1,28 +1,28 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxvmorx.h                                                              */
-/*                                                                         */
-/*    TrueTypeGX/AAT common definition for morx table (specification).     */
-/*                                                                         */
-/*  Copyright 2005-2018 by                                                 */
-/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* gxvalid is derived from both gxlayout module and otvalid module.        */
-/* Development of gxlayout is supported by the Information-technology      */
-/* Promotion Agency(IPA), Japan.                                           */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxvmorx.h
+ *
+ *   TrueTypeGX/AAT common definition for morx table (specification).
+ *
+ * Copyright 2005-2018 by
+ * suzuki toshiya, Masatake YAMATO, Red Hat K.K.,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ *
+ * gxvalid is derived from both gxlayout module and otvalid module.
+ * Development of gxlayout is supported by the Information-technology
+ * Promotion Agency(IPA), Japan.
+ *
+ */
 
 
 #ifndef GXVMORX_H_
diff --git a/src/gxvalid/gxvmorx0.c b/src/gxvalid/gxvmorx0.c
index 302261b..d65ced5 100644
--- a/src/gxvalid/gxvmorx0.c
+++ b/src/gxvalid/gxvmorx0.c
@@ -1,40 +1,40 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxvmorx0.c                                                             */
-/*                                                                         */
-/*    TrueTypeGX/AAT morx table validation                                 */
-/*    body for type0 (Indic Script Rearrangement) subtable.                */
-/*                                                                         */
-/*  Copyright 2005-2018 by                                                 */
-/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* gxvalid is derived from both gxlayout module and otvalid module.        */
-/* Development of gxlayout is supported by the Information-technology      */
-/* Promotion Agency(IPA), Japan.                                           */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxvmorx0.c
+ *
+ *   TrueTypeGX/AAT morx table validation
+ *   body for type0 (Indic Script Rearrangement) subtable.
+ *
+ * Copyright 2005-2018 by
+ * suzuki toshiya, Masatake YAMATO, Red Hat K.K.,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ *
+ * gxvalid is derived from both gxlayout module and otvalid module.
+ * Development of gxlayout is supported by the Information-technology
+ * Promotion Agency(IPA), Japan.
+ *
+ */
 
 
 #include "gxvmorx.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_gxvmorx
 
diff --git a/src/gxvalid/gxvmorx1.c b/src/gxvalid/gxvmorx1.c
index 890ca74..1c8da1b 100644
--- a/src/gxvalid/gxvmorx1.c
+++ b/src/gxvalid/gxvmorx1.c
@@ -1,40 +1,40 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxvmorx1.c                                                             */
-/*                                                                         */
-/*    TrueTypeGX/AAT morx table validation                                 */
-/*    body for type1 (Contextual Substitution) subtable.                   */
-/*                                                                         */
-/*  Copyright 2005-2018 by                                                 */
-/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* gxvalid is derived from both gxlayout module and otvalid module.        */
-/* Development of gxlayout is supported by the Information-technology      */
-/* Promotion Agency(IPA), Japan.                                           */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxvmorx1.c
+ *
+ *   TrueTypeGX/AAT morx table validation
+ *   body for type1 (Contextual Substitution) subtable.
+ *
+ * Copyright 2005-2018 by
+ * suzuki toshiya, Masatake YAMATO, Red Hat K.K.,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ *
+ * gxvalid is derived from both gxlayout module and otvalid module.
+ * Development of gxlayout is supported by the Information-technology
+ * Promotion Agency(IPA), Japan.
+ *
+ */
 
 
 #include "gxvmorx.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_gxvmorx
 
diff --git a/src/gxvalid/gxvmorx2.c b/src/gxvalid/gxvmorx2.c
index 3135031..d20fc57 100644
--- a/src/gxvalid/gxvmorx2.c
+++ b/src/gxvalid/gxvmorx2.c
@@ -1,40 +1,40 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxvmorx2.c                                                             */
-/*                                                                         */
-/*    TrueTypeGX/AAT morx table validation                                 */
-/*    body for type2 (Ligature Substitution) subtable.                     */
-/*                                                                         */
-/*  Copyright 2005-2018 by                                                 */
-/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* gxvalid is derived from both gxlayout module and otvalid module.        */
-/* Development of gxlayout is supported by the Information-technology      */
-/* Promotion Agency(IPA), Japan.                                           */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxvmorx2.c
+ *
+ *   TrueTypeGX/AAT morx table validation
+ *   body for type2 (Ligature Substitution) subtable.
+ *
+ * Copyright 2005-2018 by
+ * suzuki toshiya, Masatake YAMATO, Red Hat K.K.,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ *
+ * gxvalid is derived from both gxlayout module and otvalid module.
+ * Development of gxlayout is supported by the Information-technology
+ * Promotion Agency(IPA), Japan.
+ *
+ */
 
 
 #include "gxvmorx.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_gxvmorx
 
diff --git a/src/gxvalid/gxvmorx4.c b/src/gxvalid/gxvmorx4.c
index 1e2397b..fce219c 100644
--- a/src/gxvalid/gxvmorx4.c
+++ b/src/gxvalid/gxvmorx4.c
@@ -1,40 +1,40 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxvmorx4.c                                                             */
-/*                                                                         */
-/*    TrueTypeGX/AAT morx table validation                                 */
-/*    body for "morx" type4 (Non-Contextual Glyph Substitution) subtable.  */
-/*                                                                         */
-/*  Copyright 2005-2018 by                                                 */
-/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* gxvalid is derived from both gxlayout module and otvalid module.        */
-/* Development of gxlayout is supported by the Information-technology      */
-/* Promotion Agency(IPA), Japan.                                           */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxvmorx4.c
+ *
+ *   TrueTypeGX/AAT morx table validation
+ *   body for "morx" type4 (Non-Contextual Glyph Substitution) subtable.
+ *
+ * Copyright 2005-2018 by
+ * suzuki toshiya, Masatake YAMATO, Red Hat K.K.,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ *
+ * gxvalid is derived from both gxlayout module and otvalid module.
+ * Development of gxlayout is supported by the Information-technology
+ * Promotion Agency(IPA), Japan.
+ *
+ */
 
 
 #include "gxvmorx.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_gxvmorx
 
diff --git a/src/gxvalid/gxvmorx5.c b/src/gxvalid/gxvmorx5.c
index db4f929..8826954 100644
--- a/src/gxvalid/gxvmorx5.c
+++ b/src/gxvalid/gxvmorx5.c
@@ -1,40 +1,40 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxvmorx5.c                                                             */
-/*                                                                         */
-/*    TrueTypeGX/AAT morx table validation                                 */
-/*    body for type5 (Contextual Glyph Insertion) subtable.                */
-/*                                                                         */
-/*  Copyright 2005-2018 by                                                 */
-/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* gxvalid is derived from both gxlayout module and otvalid module.        */
-/* Development of gxlayout is supported by the Information-technology      */
-/* Promotion Agency(IPA), Japan.                                           */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxvmorx5.c
+ *
+ *   TrueTypeGX/AAT morx table validation
+ *   body for type5 (Contextual Glyph Insertion) subtable.
+ *
+ * Copyright 2005-2018 by
+ * suzuki toshiya, Masatake YAMATO, Red Hat K.K.,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ *
+ * gxvalid is derived from both gxlayout module and otvalid module.
+ * Development of gxlayout is supported by the Information-technology
+ * Promotion Agency(IPA), Japan.
+ *
+ */
 
 
 #include "gxvmorx.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_gxvmorx
 
diff --git a/src/gxvalid/gxvopbd.c b/src/gxvalid/gxvopbd.c
index e2c167e..76b6961 100644
--- a/src/gxvalid/gxvopbd.c
+++ b/src/gxvalid/gxvopbd.c
@@ -1,40 +1,40 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxvopbd.c                                                              */
-/*                                                                         */
-/*    TrueTypeGX/AAT opbd table validation (body).                         */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* gxvalid is derived from both gxlayout module and otvalid module.        */
-/* Development of gxlayout is supported by the Information-technology      */
-/* Promotion Agency(IPA), Japan.                                           */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxvopbd.c
+ *
+ *   TrueTypeGX/AAT opbd table validation (body).
+ *
+ * Copyright 2004-2018 by
+ * suzuki toshiya, Masatake YAMATO, Red Hat K.K.,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ *
+ * gxvalid is derived from both gxlayout module and otvalid module.
+ * Development of gxlayout is supported by the Information-technology
+ * Promotion Agency(IPA), Japan.
+ *
+ */
 
 
 #include "gxvalid.h"
 #include "gxvcommn.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_gxvopbd
 
diff --git a/src/gxvalid/gxvprop.c b/src/gxvalid/gxvprop.c
index a67b6bd..856dd10 100644
--- a/src/gxvalid/gxvprop.c
+++ b/src/gxvalid/gxvprop.c
@@ -1,40 +1,40 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxvprop.c                                                              */
-/*                                                                         */
-/*    TrueTypeGX/AAT prop table validation (body).                         */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* gxvalid is derived from both gxlayout module and otvalid module.        */
-/* Development of gxlayout is supported by the Information-technology      */
-/* Promotion Agency(IPA), Japan.                                           */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxvprop.c
+ *
+ *   TrueTypeGX/AAT prop table validation (body).
+ *
+ * Copyright 2004-2018 by
+ * suzuki toshiya, Masatake YAMATO, Red Hat K.K.,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ *
+ * gxvalid is derived from both gxlayout module and otvalid module.
+ * Development of gxlayout is supported by the Information-technology
+ * Promotion Agency(IPA), Japan.
+ *
+ */
 
 
 #include "gxvalid.h"
 #include "gxvcommn.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_gxvprop
 
diff --git a/src/gxvalid/gxvtrak.c b/src/gxvalid/gxvtrak.c
index d501b50..d2ceb66 100644
--- a/src/gxvalid/gxvtrak.c
+++ b/src/gxvalid/gxvtrak.c
@@ -1,40 +1,40 @@
-/***************************************************************************/
-/*                                                                         */
-/*  gxvtrak.c                                                              */
-/*                                                                         */
-/*    TrueTypeGX/AAT trak table validation (body).                         */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  suzuki toshiya, Masatake YAMATO, Red Hat K.K.,                         */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-/***************************************************************************/
-/*                                                                         */
-/* gxvalid is derived from both gxlayout module and otvalid module.        */
-/* Development of gxlayout is supported by the Information-technology      */
-/* Promotion Agency(IPA), Japan.                                           */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * gxvtrak.c
+ *
+ *   TrueTypeGX/AAT trak table validation (body).
+ *
+ * Copyright 2004-2018 by
+ * suzuki toshiya, Masatake YAMATO, Red Hat K.K.,
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+/****************************************************************************
+ *
+ * gxvalid is derived from both gxlayout module and otvalid module.
+ * Development of gxlayout is supported by the Information-technology
+ * Promotion Agency(IPA), Japan.
+ *
+ */
 
 
 #include "gxvalid.h"
 #include "gxvcommn.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_gxvtrak
 
diff --git a/src/gzip/ftgzip.c b/src/gzip/ftgzip.c
index 6cf8e69..91b343b 100644
--- a/src/gzip/ftgzip.c
+++ b/src/gzip/ftgzip.c
@@ -1,23 +1,23 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftgzip.c                                                               */
-/*                                                                         */
-/*    FreeType support for .gz compressed files.                           */
-/*                                                                         */
-/*  This optional component relies on zlib.  It should mainly be used to   */
-/*  parse compressed PCF fonts, as found with many X11 server              */
-/*  distributions.                                                         */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftgzip.c
+ *
+ *   FreeType support for .gz compressed files.
+ *
+ * This optional component relies on zlib.  It should mainly be used to
+ * parse compressed PCF fonts, as found with many X11 server
+ * distributions.
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -633,8 +633,8 @@
     memory = source->memory;
 
     /*
-     *  check the header right now; this prevents allocating un-necessary
-     *  objects when we don't need them
+     * check the header right now; this prevents allocating un-necessary
+     * objects when we don't need them
      */
     error = ft_gzip_check_header( source );
     if ( error )
@@ -656,12 +656,12 @@
     }
 
     /*
-     *  We use the following trick to try to dramatically improve the
-     *  performance while dealing with small files.  If the original stream
-     *  size is less than a certain threshold, we try to load the whole font
-     *  file into memory.  This saves us from using the 32KB buffer needed
-     *  to inflate the file, plus the two 4KB intermediate input/output
-     *  buffers used in the `FT_GZipFile' structure.
+     * We use the following trick to try to dramatically improve the
+     * performance while dealing with small files.  If the original stream
+     * size is less than a certain threshold, we try to load the whole font
+     * file into memory.  This saves us from using the 32KB buffer needed
+     * to inflate the file, plus the two 4KB intermediate input/output
+     * buffers used in the `FT_GZipFile' structure.
      */
     {
       FT_ULong  zip_size = ft_gzip_get_uncompressed_size( source );
diff --git a/src/lzw/ftlzw.c b/src/lzw/ftlzw.c
index cf6faf6..4a3d70b 100644
--- a/src/lzw/ftlzw.c
+++ b/src/lzw/ftlzw.c
@@ -1,25 +1,25 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftlzw.c                                                                */
-/*                                                                         */
-/*    FreeType support for .Z compressed files.                            */
-/*                                                                         */
-/*  This optional component relies on NetBSD's zopen().  It should mainly  */
-/*  be used to parse compressed PCF fonts, as found with many X11 server   */
-/*  distributions.                                                         */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  Albert Chin-A-Young.                                                   */
-/*                                                                         */
-/*  based on code in `src/gzip/ftgzip.c'                                   */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftlzw.c
+ *
+ *   FreeType support for .Z compressed files.
+ *
+ * This optional component relies on NetBSD's zopen().  It should mainly
+ * be used to parse compressed PCF fonts, as found with many X11 server
+ * distributions.
+ *
+ * Copyright 2004-2018 by
+ * Albert Chin-A-Young.
+ *
+ * based on code in `src/gzip/ftgzip.c'
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 #include <ft2build.h>
 #include FT_INTERNAL_MEMORY_H
@@ -357,11 +357,11 @@
     memory = source->memory;
 
     /*
-     *  Check the header right now; this prevents allocation of a huge
-     *  LZWFile object (400 KByte of heap memory) if not necessary.
+     * Check the header right now; this prevents allocation of a huge
+     * LZWFile object (400 KByte of heap memory) if not necessary.
      *
-     *  Did I mention that you should never use .Z compressed font
-     *  files?
+     * Did I mention that you should never use .Z compressed font
+     * files?
      */
     error = ft_lzw_check_header( source );
     if ( error )
diff --git a/src/lzw/ftzopen.c b/src/lzw/ftzopen.c
index 2b868ba..b699b2e 100644
--- a/src/lzw/ftzopen.c
+++ b/src/lzw/ftzopen.c
@@ -1,23 +1,23 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftzopen.c                                                              */
-/*                                                                         */
-/*    FreeType support for .Z compressed files.                            */
-/*                                                                         */
-/*  This optional component relies on NetBSD's zopen().  It should mainly  */
-/*  be used to parse compressed PCF fonts, as found with many X11 server   */
-/*  distributions.                                                         */
-/*                                                                         */
-/*  Copyright 2005-2018 by                                                 */
-/*  David Turner.                                                          */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftzopen.c
+ *
+ *   FreeType support for .Z compressed files.
+ *
+ * This optional component relies on NetBSD's zopen().  It should mainly
+ * be used to parse compressed PCF fonts, as found with many X11 server
+ * distributions.
+ *
+ * Copyright 2005-2018 by
+ * David Turner.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 #include "ftzopen.h"
 #include FT_INTERNAL_MEMORY_H
@@ -167,11 +167,11 @@
       new_size += new_size >> 2;  /* don't grow too fast */
 
     /*
-     *  Note that the `suffix' array is located in the same memory block
-     *  pointed to by `prefix'.
+     * Note that the `suffix' array is located in the same memory block
+     * pointed to by `prefix'.
      *
-     *  I know that sizeof(FT_Byte) == 1 by definition, but it is clearer
-     *  to write it literally.
+     * I know that sizeof(FT_Byte) == 1 by definition, but it is clearer
+     * to write it literally.
      *
      */
     if ( FT_REALLOC_MULT( state->prefix, old_size, new_size,
diff --git a/src/lzw/ftzopen.h b/src/lzw/ftzopen.h
index 4fd267e..4fbe257 100644
--- a/src/lzw/ftzopen.h
+++ b/src/lzw/ftzopen.h
@@ -1,23 +1,23 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftzopen.h                                                              */
-/*                                                                         */
-/*    FreeType support for .Z compressed files.                            */
-/*                                                                         */
-/*  This optional component relies on NetBSD's zopen().  It should mainly  */
-/*  be used to parse compressed PCF fonts, as found with many X11 server   */
-/*  distributions.                                                         */
-/*                                                                         */
-/*  Copyright 2005-2018 by                                                 */
-/*  David Turner.                                                          */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftzopen.h
+ *
+ *   FreeType support for .Z compressed files.
+ *
+ * This optional component relies on NetBSD's zopen().  It should mainly
+ * be used to parse compressed PCF fonts, as found with many X11 server
+ * distributions.
+ *
+ * Copyright 2005-2018 by
+ * David Turner.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 #ifndef FTZOPEN_H_
 #define FTZOPEN_H_
@@ -27,9 +27,9 @@
 
 
   /*
-   *  This is a complete re-implementation of the LZW file reader,
-   *  since the old one was incredibly badly written, using
-   *  400 KByte of heap memory before decompressing anything.
+   * This is a complete re-implementation of the LZW file reader,
+   * since the old one was incredibly badly written, using
+   * 400 KByte of heap memory before decompressing anything.
    *
    */
 
@@ -58,56 +58,56 @@
 
 
   /*
-   *  state of LZW decompressor
+   * state of LZW decompressor
    *
-   *  small technical note
-   *  --------------------
+   * small technical note
+   * --------------------
    *
-   *  We use a few tricks in this implementation that are explained here to
-   *  ease debugging and maintenance.
+   * We use a few tricks in this implementation that are explained here to
+   * ease debugging and maintenance.
    *
-   *  - First of all, the `prefix' and `suffix' arrays contain the suffix
-   *    and prefix for codes over 256; this means that
+   * - First of all, the `prefix' and `suffix' arrays contain the suffix
+   *   and prefix for codes over 256; this means that
    *
-   *      prefix_of(code) == state->prefix[code-256]
-   *      suffix_of(code) == state->suffix[code-256]
+   *     prefix_of(code) == state->prefix[code-256]
+   *     suffix_of(code) == state->suffix[code-256]
    *
-   *    Each prefix is a 16-bit code, and each suffix an 8-bit byte.
+   *   Each prefix is a 16-bit code, and each suffix an 8-bit byte.
    *
-   *    Both arrays are stored in a single memory block, pointed to by
-   *    `state->prefix'.  This means that the following equality is always
-   *    true:
+   *   Both arrays are stored in a single memory block, pointed to by
+   *   `state->prefix'.  This means that the following equality is always
+   *   true:
    *
-   *      state->suffix == (FT_Byte*)(state->prefix + state->prefix_size)
+   *     state->suffix == (FT_Byte*)(state->prefix + state->prefix_size)
    *
-   *    Of course, state->prefix_size is the number of prefix/suffix slots
-   *    in the arrays, corresponding to codes 256..255+prefix_size.
+   *   Of course, state->prefix_size is the number of prefix/suffix slots
+   *   in the arrays, corresponding to codes 256..255+prefix_size.
    *
-   *  - `free_ent' is the index of the next free entry in the `prefix'
-   *    and `suffix' arrays.  This means that the corresponding `next free
-   *    code' is really `256+free_ent'.
+   * - `free_ent' is the index of the next free entry in the `prefix'
+   *   and `suffix' arrays.  This means that the corresponding `next free
+   *   code' is really `256+free_ent'.
    *
-   *    Moreover, `max_free' is the maximum value that `free_ent' can reach.
+   *   Moreover, `max_free' is the maximum value that `free_ent' can reach.
    *
-   *    `max_free' corresponds to `(1 << max_bits) - 256'.  Note that this
-   *    value is always <= 0xFF00, which means that both `free_ent' and
-   *    `max_free' can be stored in an FT_UInt variable, even on 16-bit
-   *    machines.
+   *   `max_free' corresponds to `(1 << max_bits) - 256'.  Note that this
+   *   value is always <= 0xFF00, which means that both `free_ent' and
+   *   `max_free' can be stored in an FT_UInt variable, even on 16-bit
+   *   machines.
    *
-   *    If `free_ent == max_free', you cannot add new codes to the
-   *    prefix/suffix table.
+   *   If `free_ent == max_free', you cannot add new codes to the
+   *   prefix/suffix table.
    *
-   *  - `num_bits' is the current number of code bits, starting at 9 and
-   *    growing each time `free_ent' reaches the value of `free_bits'.  The
-   *    latter is computed as follows
+   * - `num_bits' is the current number of code bits, starting at 9 and
+   *   growing each time `free_ent' reaches the value of `free_bits'.  The
+   *   latter is computed as follows
    *
-   *      if num_bits < max_bits:
-   *         free_bits = (1 << num_bits)-256
-   *      else:
-   *         free_bits = max_free + 1
+   *     if num_bits < max_bits:
+   *        free_bits = (1 << num_bits)-256
+   *     else:
+   *        free_bits = max_free + 1
    *
-   *    Since the value of `max_free + 1' can never be reached by
-   *    `free_ent', `num_bits' cannot grow larger than `max_bits'.
+   *   Since the value of `max_free + 1' can never be reached by
+   *   `free_ent', `num_bits' cannot grow larger than `max_bits'.
    */
 
   typedef struct  FT_LzwStateRec_
diff --git a/src/otvalid/otvalid.c b/src/otvalid/otvalid.c
index 4423ca1..144be58 100644
--- a/src/otvalid/otvalid.c
+++ b/src/otvalid/otvalid.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  otvalid.c                                                              */
-/*                                                                         */
-/*    FreeType validator for OpenType tables (body only).                  */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * otvalid.c
+ *
+ *   FreeType validator for OpenType tables (body only).
+ *
+ * Copyright 2004-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #define FT_MAKE_OPTION_SINGLE_OBJECT
diff --git a/src/otvalid/otvalid.h b/src/otvalid/otvalid.h
index d7801ab..1ccdbbf 100644
--- a/src/otvalid/otvalid.h
+++ b/src/otvalid/otvalid.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  otvalid.h                                                              */
-/*                                                                         */
-/*    OpenType table validation (specification only).                      */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * otvalid.h
+ *
+ *   OpenType table validation (specification only).
+ *
+ * Copyright 2004-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef OTVALID_H_
diff --git a/src/otvalid/otvbase.c b/src/otvalid/otvbase.c
index a01d45c..918e383 100644
--- a/src/otvalid/otvbase.c
+++ b/src/otvalid/otvbase.c
@@ -1,31 +1,31 @@
-/***************************************************************************/
-/*                                                                         */
-/*  otvbase.c                                                              */
-/*                                                                         */
-/*    OpenType BASE table validation (body).                               */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * otvbase.c
+ *
+ *   OpenType BASE table validation (body).
+ *
+ * Copyright 2004-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include "otvalid.h"
 #include "otvcommn.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_otvbase
 
diff --git a/src/otvalid/otvcommn.c b/src/otvalid/otvcommn.c
index 0ccfb03..4a2c95e 100644
--- a/src/otvalid/otvcommn.c
+++ b/src/otvalid/otvcommn.c
@@ -1,30 +1,30 @@
-/***************************************************************************/
-/*                                                                         */
-/*  otvcommn.c                                                             */
-/*                                                                         */
-/*    OpenType common tables validation (body).                            */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * otvcommn.c
+ *
+ *   OpenType common tables validation (body).
+ *
+ * Copyright 2004-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include "otvcommn.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_otvcommon
 
diff --git a/src/otvalid/otvcommn.h b/src/otvalid/otvcommn.h
index a392784..3cd6d86 100644
--- a/src/otvalid/otvcommn.h
+++ b/src/otvalid/otvcommn.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  otvcommn.h                                                             */
-/*                                                                         */
-/*    OpenType common tables validation (specification).                   */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * otvcommn.h
+ *
+ *   OpenType common tables validation (specification).
+ *
+ * Copyright 2004-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef OTVCOMMN_H_
diff --git a/src/otvalid/otverror.h b/src/otvalid/otverror.h
index 2fcf42e..24e8d1d 100644
--- a/src/otvalid/otverror.h
+++ b/src/otvalid/otverror.h
@@ -1,27 +1,27 @@
-/***************************************************************************/
-/*                                                                         */
-/*  otverror.h                                                             */
-/*                                                                         */
-/*    OpenType validation module error codes (specification only).         */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This file is used to define the OpenType validation module error      */
-  /* enumeration constants.                                                */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * otverror.h
+ *
+ *   OpenType validation module error codes (specification only).
+ *
+ * Copyright 2004-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+
+  /**************************************************************************
+   *
+   * This file is used to define the OpenType validation module error
+   * enumeration constants.
+   *
+   */
 
 #ifndef OTVERROR_H_
 #define OTVERROR_H_
diff --git a/src/otvalid/otvgdef.c b/src/otvalid/otvgdef.c
index 08f3171..68c00a5 100644
--- a/src/otvalid/otvgdef.c
+++ b/src/otvalid/otvgdef.c
@@ -1,31 +1,31 @@
-/***************************************************************************/
-/*                                                                         */
-/*  otvgdef.c                                                              */
-/*                                                                         */
-/*    OpenType GDEF table validation (body).                               */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * otvgdef.c
+ *
+ *   OpenType GDEF table validation (body).
+ *
+ * Copyright 2004-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include "otvalid.h"
 #include "otvcommn.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_otvgdef
 
diff --git a/src/otvalid/otvgpos.c b/src/otvalid/otvgpos.c
index 696b35c..17f2437 100644
--- a/src/otvalid/otvgpos.c
+++ b/src/otvalid/otvgpos.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  otvgpos.c                                                              */
-/*                                                                         */
-/*    OpenType GPOS table validation (body).                               */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * otvgpos.c
+ *
+ *   OpenType GPOS table validation (body).
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include "otvalid.h"
@@ -21,12 +21,12 @@
 #include "otvgpos.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_otvgpos
 
diff --git a/src/otvalid/otvgpos.h b/src/otvalid/otvgpos.h
index 95f9ac3..c216609 100644
--- a/src/otvalid/otvgpos.h
+++ b/src/otvalid/otvgpos.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  otvgpos.h                                                              */
-/*                                                                         */
-/*    OpenType GPOS table validator (specification).                       */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * otvgpos.h
+ *
+ *   OpenType GPOS table validator (specification).
+ *
+ * Copyright 2004-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef OTVGPOS_H_
diff --git a/src/otvalid/otvgsub.c b/src/otvalid/otvgsub.c
index d35ea67..0180b1a 100644
--- a/src/otvalid/otvgsub.c
+++ b/src/otvalid/otvgsub.c
@@ -1,31 +1,31 @@
-/***************************************************************************/
-/*                                                                         */
-/*  otvgsub.c                                                              */
-/*                                                                         */
-/*    OpenType GSUB table validation (body).                               */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * otvgsub.c
+ *
+ *   OpenType GSUB table validation (body).
+ *
+ * Copyright 2004-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include "otvalid.h"
 #include "otvcommn.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_otvgsub
 
diff --git a/src/otvalid/otvjstf.c b/src/otvalid/otvjstf.c
index 94d4af9..7a5769a 100644
--- a/src/otvalid/otvjstf.c
+++ b/src/otvalid/otvjstf.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  otvjstf.c                                                              */
-/*                                                                         */
-/*    OpenType JSTF table validation (body).                               */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * otvjstf.c
+ *
+ *   OpenType JSTF table validation (body).
+ *
+ * Copyright 2004-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include "otvalid.h"
@@ -21,12 +21,12 @@
 #include "otvgpos.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_otvjstf
 
diff --git a/src/otvalid/otvmath.c b/src/otvalid/otvmath.c
index b9800f6..4a9f3b0 100644
--- a/src/otvalid/otvmath.c
+++ b/src/otvalid/otvmath.c
@@ -1,21 +1,21 @@
-/***************************************************************************/
-/*                                                                         */
-/*  otvmath.c                                                              */
-/*                                                                         */
-/*    OpenType MATH table validation (body).                               */
-/*                                                                         */
-/*  Copyright 2007-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  Written by George Williams.                                            */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * otvmath.c
+ *
+ *   OpenType MATH table validation (body).
+ *
+ * Copyright 2007-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * Written by George Williams.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include "otvalid.h"
@@ -23,12 +23,12 @@
 #include "otvgpos.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_otvmath
 
diff --git a/src/otvalid/otvmod.c b/src/otvalid/otvmod.c
index 89ee449..5dd543b 100644
--- a/src/otvalid/otvmod.c
+++ b/src/otvalid/otvmod.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  otvmod.c                                                               */
-/*                                                                         */
-/*    FreeType's OpenType validation module implementation (body).         */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * otvmod.c
+ *
+ *   FreeType's OpenType validation module implementation (body).
+ *
+ * Copyright 2004-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -28,12 +28,12 @@
 #include "otvcommn.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_otvmodule
 
diff --git a/src/otvalid/otvmod.h b/src/otvalid/otvmod.h
index 2112cf8..a08512f 100644
--- a/src/otvalid/otvmod.h
+++ b/src/otvalid/otvmod.h
@@ -1,20 +1,20 @@
-/***************************************************************************/
-/*                                                                         */
-/*  otvmod.h                                                               */
-/*                                                                         */
-/*    FreeType's OpenType validation module implementation                 */
-/*    (specification).                                                     */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * otvmod.h
+ *
+ *   FreeType's OpenType validation module implementation
+ *   (specification).
+ *
+ * Copyright 2004-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef OTVMOD_H_
diff --git a/src/pcf/pcfdrivr.c b/src/pcf/pcfdrivr.c
index 0119d94..c9b7796 100644
--- a/src/pcf/pcfdrivr.c
+++ b/src/pcf/pcfdrivr.c
@@ -53,12 +53,12 @@ THE SOFTWARE.
 #include FT_DRIVER_H
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_pcfdriver
 
@@ -601,11 +601,11 @@ THE SOFTWARE.
   }
 
 
- /*
-  *
-  *  BDF SERVICE
-  *
-  */
+  /*
+   *
+   * BDF SERVICE
+   *
+   */
 
   static FT_Error
   pcf_get_bdf_property( PCF_Face          face,
@@ -633,9 +633,9 @@ THE SOFTWARE.
         }
 
         /*
-         *  The PCF driver loads all properties as signed integers.
-         *  This really doesn't seem to be a problem, because this is
-         *  sufficient for any meaningful values.
+         * The PCF driver loads all properties as signed integers.
+         * This really doesn't seem to be a problem, because this is
+         * sufficient for any meaningful values.
          */
         aproperty->type      = BDF_PROPERTY_TYPE_INTEGER;
         aproperty->u.integer = (FT_Int32)prop->value.l;
@@ -668,7 +668,7 @@ THE SOFTWARE.
 
 
   /*
-   *  PROPERTY SERVICE
+   * PROPERTY SERVICE
    *
    */
   static FT_Error
@@ -777,11 +777,11 @@ THE SOFTWARE.
     (FT_Properties_GetFunc)pcf_property_get )     /* get_property */
 
 
- /*
-  *
-  *  SERVICE LIST
-  *
-  */
+  /*
+   *
+   * SERVICE LIST
+   *
+   */
 
   static const FT_ServiceDescRec  pcf_services[] =
   {
diff --git a/src/pcf/pcferror.h b/src/pcf/pcferror.h
index add8ef2..2e69d1d 100644
--- a/src/pcf/pcferror.h
+++ b/src/pcf/pcferror.h
@@ -1,26 +1,26 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pcferror.h                                                             */
-/*                                                                         */
-/*    PCF error codes (specification only).                                */
-/*                                                                         */
-/*  Copyright 2001, 2012 by                                                */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This file is used to define the PCF error enumeration constants.      */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * pcferror.h
+ *
+ *   PCF error codes (specification only).
+ *
+ * Copyright 2001, 2012 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+
+  /**************************************************************************
+   *
+   * This file is used to define the PCF error enumeration constants.
+   *
+   */
 
 #ifndef PCFERROR_H_
 #define PCFERROR_H_
diff --git a/src/pcf/pcfread.c b/src/pcf/pcfread.c
index 4e193b5..6545555 100644
--- a/src/pcf/pcfread.c
+++ b/src/pcf/pcfread.c
@@ -37,12 +37,12 @@ THE SOFTWARE.
 #include "pcferror.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_pcfread
 
@@ -178,23 +178,23 @@ THE SOFTWARE.
     }
 
     /*
-     *  We now check whether the `size' and `offset' values are reasonable:
-     *  `offset' + `size' must not exceed the stream size.
+     * We now check whether the `size' and `offset' values are reasonable:
+     * `offset' + `size' must not exceed the stream size.
      *
-     *  Note, however, that X11's `pcfWriteFont' routine (used by the
-     *  `bdftopcf' program to create PCF font files) has two special
-     *  features.
+     * Note, however, that X11's `pcfWriteFont' routine (used by the
+     * `bdftopcf' program to create PCF font files) has two special
+     * features.
      *
-     *  - It always assigns the accelerator table a size of 100 bytes in the
-     *    TOC, regardless of its real size, which can vary between 34 and 72
-     *    bytes.
+     * - It always assigns the accelerator table a size of 100 bytes in the
+     *   TOC, regardless of its real size, which can vary between 34 and 72
+     *   bytes.
      *
-     *  - Due to the way the routine is designed, it ships out the last font
-     *    table with its real size, ignoring the TOC's size value.  Since
-     *    the TOC size values are always rounded up to a multiple of 4, the
-     *    difference can be up to three bytes for all tables except the
-     *    accelerator table, for which the difference can be as large as 66
-     *    bytes.
+     * - Due to the way the routine is designed, it ships out the last font
+     *   table with its real size, ignoring the TOC's size value.  Since
+     *   the TOC size values are always rounded up to a multiple of 4, the
+     *   difference can be up to three bytes for all tables except the
+     *   accelerator table, for which the difference can be as large as 66
+     *   bytes.
      *
      */
 
diff --git a/src/pcf/pcfutil.c b/src/pcf/pcfutil.c
index 0451ee8..045c42d 100644
--- a/src/pcf/pcfutil.c
+++ b/src/pcf/pcfutil.c
@@ -37,7 +37,7 @@ in this Software without prior written authorization from The 
Open Group.
 
 
   /*
-   *  Invert bit order within each BYTE of an array.
+   * Invert bit order within each BYTE of an array.
    */
 
   FT_LOCAL_DEF( void )
@@ -59,7 +59,7 @@ in this Software without prior written authorization from The 
Open Group.
 
 
   /*
-   *  Invert byte order within each 16-bits of an array.
+   * Invert byte order within each 16-bits of an array.
    */
 
   FT_LOCAL_DEF( void )
@@ -78,7 +78,7 @@ in this Software without prior written authorization from The 
Open Group.
   }
 
   /*
-   *  Invert byte order within each 32-bits of an array.
+   * Invert byte order within each 32-bits of an array.
    */
 
   FT_LOCAL_DEF( void )
diff --git a/src/pfr/pfr.c b/src/pfr/pfr.c
index 1760882..2d34615 100644
--- a/src/pfr/pfr.c
+++ b/src/pfr/pfr.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pfr.c                                                                  */
-/*                                                                         */
-/*    FreeType PFR driver component.                                       */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * pfr.c
+ *
+ *   FreeType PFR driver component.
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #define FT_MAKE_OPTION_SINGLE_OBJECT
diff --git a/src/pfr/pfrcmap.c b/src/pfr/pfrcmap.c
index 6064378..d83dc58 100644
--- a/src/pfr/pfrcmap.c
+++ b/src/pfr/pfrcmap.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pfrcmap.c                                                              */
-/*                                                                         */
-/*    FreeType PFR cmap handling (body).                                   */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * pfrcmap.c
+ *
+ *   FreeType PFR cmap handling (body).
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
diff --git a/src/pfr/pfrcmap.h b/src/pfr/pfrcmap.h
index c70a0c8..6a43bdb 100644
--- a/src/pfr/pfrcmap.h
+++ b/src/pfr/pfrcmap.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pfrcmap.h                                                              */
-/*                                                                         */
-/*    FreeType PFR cmap handling (specification).                          */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * pfrcmap.h
+ *
+ *   FreeType PFR cmap handling (specification).
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef PFRCMAP_H_
diff --git a/src/pfr/pfrdrivr.c b/src/pfr/pfrdrivr.c
index 6c7e501..4b8707f 100644
--- a/src/pfr/pfrdrivr.c
+++ b/src/pfr/pfrdrivr.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pfrdrivr.c                                                             */
-/*                                                                         */
-/*    FreeType PFR driver interface (body).                                */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * pfrdrivr.c
+ *
+ *   FreeType PFR driver interface (body).
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -57,10 +57,10 @@
   }
 
 
- /*
-  *  PFR METRICS SERVICE
-  *
-  */
+  /*
+   * PFR METRICS SERVICE
+   *
+   */
 
   FT_CALLBACK_DEF( FT_Error )
   pfr_get_advance( FT_Face   pfrface,       /* PFR_Face */
@@ -145,10 +145,10 @@
   };
 
 
- /*
-  *  SERVICE LIST
-  *
-  */
+  /*
+   * SERVICE LIST
+   *
+   */
 
   static const FT_ServiceDescRec  pfr_services[] =
   {
diff --git a/src/pfr/pfrdrivr.h b/src/pfr/pfrdrivr.h
index 2d9b46d..6adb2fd 100644
--- a/src/pfr/pfrdrivr.h
+++ b/src/pfr/pfrdrivr.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pfrdrivr.h                                                             */
-/*                                                                         */
-/*    High-level Type PFR driver interface (specification).                */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * pfrdrivr.h
+ *
+ *   High-level Type PFR driver interface (specification).
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef PFRDRIVR_H_
diff --git a/src/pfr/pfrerror.h b/src/pfr/pfrerror.h
index 7027c81..f9fde3a 100644
--- a/src/pfr/pfrerror.h
+++ b/src/pfr/pfrerror.h
@@ -1,26 +1,26 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pfrerror.h                                                             */
-/*                                                                         */
-/*    PFR error codes (specification only).                                */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This file is used to define the PFR error enumeration constants.      */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * pfrerror.h
+ *
+ *   PFR error codes (specification only).
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+
+  /**************************************************************************
+   *
+   * This file is used to define the PFR error enumeration constants.
+   *
+   */
 
 #ifndef PFRERROR_H_
 #define PFRERROR_H_
diff --git a/src/pfr/pfrgload.c b/src/pfr/pfrgload.c
index b799019..06723ff 100644
--- a/src/pfr/pfrgload.c
+++ b/src/pfr/pfrgload.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pfrgload.c                                                             */
-/*                                                                         */
-/*    FreeType PFR glyph loader (body).                                    */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * pfrgload.c
+ *
+ *   FreeType PFR glyph loader (body).
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include "pfrgload.h"
@@ -359,9 +359,9 @@
         FT_UInt  format, format_low, args_format = 0, args_count, n;
 
 
-        /***************************************************************/
-        /*  read instruction                                           */
-        /*                                                             */
+        /****************************************************************
+         * read instruction
+         */
         PFR_CHECK( 1 );
         format     = PFR_NEXT_BYTE( p );
         format_low = format & 15;
@@ -426,9 +426,9 @@
           args_format = format_low;
         }
 
-        /***********************************************************/
-        /*  now read arguments                                     */
-        /*                                                         */
+        /************************************************************
+         * now read arguments
+         */
         cur = pos;
         for ( n = 0; n < args_count; n++ )
         {
@@ -513,9 +513,9 @@
 
         FT_TRACE7(( "\n" ));
 
-        /***********************************************************/
-        /*  finally, execute instruction                           */
-        /*                                                         */
+        /************************************************************
+         * finally, execute instruction
+         */
         switch ( format >> 4 )
         {
         case 0:                                       /* end glyph => EXIT */
diff --git a/src/pfr/pfrgload.h b/src/pfr/pfrgload.h
index 01f48d7..6a5de29 100644
--- a/src/pfr/pfrgload.h
+++ b/src/pfr/pfrgload.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pfrgload.h                                                             */
-/*                                                                         */
-/*    FreeType PFR glyph loader (specification).                           */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * pfrgload.h
+ *
+ *   FreeType PFR glyph loader (specification).
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef PFRGLOAD_H_
diff --git a/src/pfr/pfrload.c b/src/pfr/pfrload.c
index 2776da4..e9c0099 100644
--- a/src/pfr/pfrload.c
+++ b/src/pfr/pfrload.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pfrload.c                                                              */
-/*                                                                         */
-/*    FreeType PFR loader (body).                                          */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * pfrload.c
+ *
+ *   FreeType PFR loader (body).
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include "pfrload.h"
@@ -27,88 +27,88 @@
 
 
   /*
-   *  The overall structure of a PFR file is as follows.
+   * The overall structure of a PFR file is as follows.
    *
-   *    PFR header
-   *      58 bytes (contains nPhysFonts)
+   *   PFR header
+   *     58 bytes (contains nPhysFonts)
    *
-   *    Logical font directory (size at most 2^16 bytes)
-   *      2 bytes (nLogFonts)
-   *      + nLogFonts * 5 bytes
+   *   Logical font directory (size at most 2^16 bytes)
+   *     2 bytes (nLogFonts)
+   *     + nLogFonts * 5 bytes
    *
-   *         ==>   nLogFonts <= 13106
+   *        ==>  nLogFonts <= 13106
    *
-   *    Logical font section (size at most 2^24 bytes)
-   *      nLogFonts * logFontRecord
+   *   Logical font section (size at most 2^24 bytes)
+   *     nLogFonts * logFontRecord
    *
-   *      logFontRecord (size at most 2^16 bytes)
-   *        12 bytes (fontMatrix)
-   *        + 1 byte (flags)
-   *        + 0-5 bytes (depending on `flags')
-   *        + 0-(1+255*(2+255)) = 0-65536 (depending on `flags')
-   *        + 5 bytes (physical font info)
-   *        + 0-1 bytes (depending on PFR header)
+   *     logFontRecord (size at most 2^16 bytes)
+   *       12 bytes (fontMatrix)
+   *       + 1 byte (flags)
+   *       + 0-5 bytes (depending on `flags')
+   *       + 0-(1+255*(2+255)) = 0-65536 (depending on `flags')
+   *       + 5 bytes (physical font info)
+   *       + 0-1 bytes (depending on PFR header)
    *
-   *         ==>   minimum size 18 bytes
+   *        ==>  minimum size 18 bytes
    *
-   *    Physical font section (size at most 2^24 bytes)
-   *      nPhysFonts * (physFontRecord
-   *                    + nBitmapSizes * nBmapChars * bmapCharRecord)
+   *   Physical font section (size at most 2^24 bytes)
+   *     nPhysFonts * (physFontRecord
+   *                   + nBitmapSizes * nBmapChars * bmapCharRecord)
    *
-   *      physFontRecord (size at most 2^24 bytes)
-   *        14 bytes (font info)
-   *        + 1 byte (flags)
-   *        + 0-2 (depending on `flags')
-   *        + 0-? (structure too complicated to be shown here; depending on
-   *               `flags'; contains `nBitmapSizes' and `nBmapChars')
-   *        + 3 bytes (nAuxBytes)
-   *        + nAuxBytes
-   *        + 1 byte (nBlueValues)
-   *        + 2 * nBlueValues
-   *        + 6 bytes (hinting data)
-   *        + 2 bytes (nCharacters)
-   *        + nCharacters * (4-10 bytes) (depending on `flags')
+   *     physFontRecord (size at most 2^24 bytes)
+   *       14 bytes (font info)
+   *       + 1 byte (flags)
+   *       + 0-2 (depending on `flags')
+   *       + 0-? (structure too complicated to be shown here; depending on
+   *              `flags'; contains `nBitmapSizes' and `nBmapChars')
+   *       + 3 bytes (nAuxBytes)
+   *       + nAuxBytes
+   *       + 1 byte (nBlueValues)
+   *       + 2 * nBlueValues
+   *       + 6 bytes (hinting data)
+   *       + 2 bytes (nCharacters)
+   *       + nCharacters * (4-10 bytes) (depending on `flags')
    *
-   *         ==>   minimum size 27 bytes
+   *        ==>  minimum size 27 bytes
    *
-   *      bmapCharRecord
-   *        4-7 bytes
+   *     bmapCharRecord
+   *       4-7 bytes
    *
-   *    Glyph program strings (three possible types: simpleGps, compoundGps,
-   *                           and bitmapGps; size at most 2^24 bytes)
-   *      simpleGps (size at most 2^16 bytes)
-   *        1 byte (flags)
-   *        1-2 bytes (n[XY]orus, depending on `flags')
-   *        0-(64+512*2) = 0-1088 bytes (depending on `n[XY]orus')
-   *        0-? (structure too complicated to be shown here; depending on
-   *             `flags')
-   *        1-? glyph data (faintly resembling PS Type 1 charstrings)
+   *   Glyph program strings (three possible types: simpleGps, compoundGps,
+   *                          and bitmapGps; size at most 2^24 bytes)
+   *     simpleGps (size at most 2^16 bytes)
+   *       1 byte (flags)
+   *       1-2 bytes (n[XY]orus, depending on `flags')
+   *       0-(64+512*2) = 0-1088 bytes (depending on `n[XY]orus')
+   *       0-? (structure too complicated to be shown here; depending on
+   *            `flags')
+   *       1-? glyph data (faintly resembling PS Type 1 charstrings)
    *
-   *         ==>   minimum size 3 bytes
+   *        ==>  minimum size 3 bytes
    *
-   *      compoundGps (size at most 2^16 bytes)
-   *        1 byte (nElements <= 63, flags)
-   *        + 0-(1+255*(2+255)) = 0-65536 (depending on `flags')
-   *        + nElements * (6-14 bytes)
+   *     compoundGps (size at most 2^16 bytes)
+   *       1 byte (nElements <= 63, flags)
+   *       + 0-(1+255*(2+255)) = 0-65536 (depending on `flags')
+   *       + nElements * (6-14 bytes)
    *
-   *      bitmapGps (size at most 2^16 bytes)
-   *        1 byte (flags)
-   *        3-13 bytes (position info, depending on `flags')
-   *        0-? bitmap data
+   *     bitmapGps (size at most 2^16 bytes)
+   *       1 byte (flags)
+   *       3-13 bytes (position info, depending on `flags')
+   *       0-? bitmap data
    *
-   *         ==>   minimum size 4 bytes
+   *        ==>  minimum size 4 bytes
    *
-   *    PFR trailer
-   *        8 bytes
+   *   PFR trailer
+   *       8 bytes
    *
    *
-   * ==>   minimum size of a valid PFR:
-   *         58 (header)
-   *         + 2 (nLogFonts)
-   *         + 27 (1 physFontRecord)
-   *         + 8 (trailer)
-   *        -----
-   *         95 bytes
+   * ==>  minimum size of a valid PFR:
+   *        58 (header)
+   *        + 2 (nLogFonts)
+   *        + 27 (1 physFontRecord)
+   *        + 8 (trailer)
+   *       -----
+   *        95 bytes
    *
    */
 
diff --git a/src/pfr/pfrload.h b/src/pfr/pfrload.h
index 36e809a..ef29973 100644
--- a/src/pfr/pfrload.h
+++ b/src/pfr/pfrload.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pfrload.h                                                              */
-/*                                                                         */
-/*    FreeType PFR loader (specification).                                 */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * pfrload.h
+ *
+ *   FreeType PFR loader (specification).
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef PFRLOAD_H_
diff --git a/src/pfr/pfrobjs.c b/src/pfr/pfrobjs.c
index 737b97b..e51a842 100644
--- a/src/pfr/pfrobjs.c
+++ b/src/pfr/pfrobjs.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pfrobjs.c                                                              */
-/*                                                                         */
-/*    FreeType PFR object methods (body).                                  */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * pfrobjs.c
+ *
+ *   FreeType PFR object methods (body).
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include "pfrobjs.h"
diff --git a/src/pfr/pfrobjs.h b/src/pfr/pfrobjs.h
index 59c709f..e03573f 100644
--- a/src/pfr/pfrobjs.h
+++ b/src/pfr/pfrobjs.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pfrobjs.h                                                              */
-/*                                                                         */
-/*    FreeType PFR object methods (specification).                         */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * pfrobjs.h
+ *
+ *   FreeType PFR object methods (specification).
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef PFROBJS_H_
diff --git a/src/pfr/pfrsbit.c b/src/pfr/pfrsbit.c
index ba909dd..f5d3077 100644
--- a/src/pfr/pfrsbit.c
+++ b/src/pfr/pfrsbit.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pfrsbit.c                                                              */
-/*                                                                         */
-/*    FreeType PFR bitmap loader (body).                                   */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * pfrsbit.c
+ *
+ *   FreeType PFR bitmap loader (body).
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include "pfrsbit.h"
diff --git a/src/pfr/pfrsbit.h b/src/pfr/pfrsbit.h
index 07b27bc..7002df4 100644
--- a/src/pfr/pfrsbit.h
+++ b/src/pfr/pfrsbit.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pfrsbit.h                                                              */
-/*                                                                         */
-/*    FreeType PFR bitmap loader (specification).                          */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * pfrsbit.h
+ *
+ *   FreeType PFR bitmap loader (specification).
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef PFRSBIT_H_
diff --git a/src/pfr/pfrtypes.h b/src/pfr/pfrtypes.h
index 058d6aa..794706b 100644
--- a/src/pfr/pfrtypes.h
+++ b/src/pfr/pfrtypes.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pfrtypes.h                                                             */
-/*                                                                         */
-/*    FreeType PFR data structures (specification only).                   */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * pfrtypes.h
+ *
+ *   FreeType PFR data structures (specification only).
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef PFRTYPES_H_
diff --git a/src/psaux/afmparse.c b/src/psaux/afmparse.c
index 0c33d59..04c191f 100644
--- a/src/psaux/afmparse.c
+++ b/src/psaux/afmparse.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  afmparse.c                                                             */
-/*                                                                         */
-/*    AFM parser (body).                                                   */
-/*                                                                         */
-/*  Copyright 2006-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afmparse.c
+ *
+ *   AFM parser (body).
+ *
+ * Copyright 2006-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 #include <ft2build.h>
 #include FT_FREETYPE_H
@@ -28,13 +28,13 @@
 #include "psauxerr.h"
 
 
-/***************************************************************************/
-/*                                                                         */
-/*    AFM_Stream                                                           */
-/*                                                                         */
-/* The use of AFM_Stream is largely inspired by parseAFM.[ch] from t1lib.  */
-/*                                                                         */
-/*                                                                         */
+  /**************************************************************************
+   *
+   * AFM_Stream
+   *
+   * The use of AFM_Stream is largely inspired by parseAFM.[ch] from t1lib.
+   *
+   */
 
   enum
   {
@@ -193,11 +193,11 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /*    AFM_Parser                                                         */
-  /*                                                                       */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * AFM_Parser
+   *
+   */
 
   /* all keys defined in Ch. 7-10 of 5004.AFM_Spec.pdf */
   typedef enum  AFM_Token_
diff --git a/src/psaux/afmparse.h b/src/psaux/afmparse.h
index 86f852a..2fcc80e 100644
--- a/src/psaux/afmparse.h
+++ b/src/psaux/afmparse.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  afmparse.h                                                             */
-/*                                                                         */
-/*    AFM parser (specification).                                          */
-/*                                                                         */
-/*  Copyright 2006-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * afmparse.h
+ *
+ *   AFM parser (specification).
+ *
+ * Copyright 2006-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef AFMPARSE_H_
diff --git a/src/psaux/cffdecode.c b/src/psaux/cffdecode.c
index 80d622c..5bcb59b 100644
--- a/src/psaux/cffdecode.c
+++ b/src/psaux/cffdecode.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  cffdecode.c                                                            */
-/*                                                                         */
-/*    PostScript CFF (Type 2) decoding routines (body).                    */
-/*                                                                         */
-/*  Copyright 2017-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * cffdecode.c
+ *
+ *   PostScript CFF (Type 2) decoding routines (body).
+ *
+ * Copyright 2017-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -28,12 +28,12 @@
 #include "psauxerr.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_cffdecode
 
@@ -378,23 +378,25 @@
   /*************************************************************************/
   /*************************************************************************/
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    cff_compute_bias                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Computes the bias value in dependence of the number of glyph       */
-  /*    subroutines.                                                       */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    in_charstring_type :: The `CharstringType' value of the top DICT   */
-  /*                          dictionary.                                  */
-  /*                                                                       */
-  /*    num_subrs          :: The number of glyph subroutines.             */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    The bias value.                                                    */
+  /**************************************************************************
+   *
+   * @Function:
+   *   cff_compute_bias
+   *
+   * @Description:
+   *   Computes the bias value in dependence of the number of glyph
+   *   subroutines.
+   *
+   * @Input:
+   *   in_charstring_type ::
+   *     The `CharstringType' value of the top DICT
+   *     dictionary.
+   *
+   *   num_subrs ::
+   *     The number of glyph subroutines.
+   *
+   * @Return:
+   */
   static FT_Int
   cff_compute_bias( FT_Int   in_charstring_type,
                     FT_UInt  num_subrs )
@@ -464,28 +466,32 @@
 
 #ifdef CFF_CONFIG_OPTION_OLD_ENGINE
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    cff_decoder_parse_charstrings                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Parses a given Type 2 charstrings program.                         */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    decoder         :: The current Type 1 decoder.                     */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    charstring_base :: The base of the charstring stream.              */
-  /*                                                                       */
-  /*    charstring_len  :: The length in bytes of the charstring stream.   */
-  /*                                                                       */
-  /*    in_dict         :: Set to 1 if function is called from top or      */
-  /*                       private DICT (needed for Multiple Master CFFs). */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   cff_decoder_parse_charstrings
+   *
+   * @Description:
+   *   Parses a given Type 2 charstrings program.
+   *
+   * @InOut:
+   *   decoder ::
+   *     The current Type 1 decoder.
+   *
+   * @Input:
+   *   charstring_base ::
+   *     The base of the charstring stream.
+   *
+   *   charstring_len ::
+   *     The length in bytes of the charstring stream.
+   *
+   *   in_dict ::
+   *     Set to 1 if function is called from top or
+   *     private DICT (needed for Multiple Master CFFs).
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   cff_decoder_parse_charstrings( CFF_Decoder*  decoder,
                                  FT_Byte*      charstring_base,
@@ -543,10 +549,10 @@
       FT_Byte       v;
 
 
-      /********************************************************************/
-      /*                                                                  */
-      /* Decode operator or operand                                       */
-      /*                                                                  */
+      /*********************************************************************
+       *
+       * Decode operator or operand
+       */
       v = *ip++;
       if ( v >= 32 || v == 28 )
       {
@@ -2251,28 +2257,34 @@
 #endif /* CFF_CONFIG_OPTION_OLD_ENGINE */
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    cff_decoder_init                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Initializes a given glyph decoder.                                 */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    decoder :: A pointer to the glyph builder to initialize.           */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face      :: The current face object.                              */
-  /*                                                                       */
-  /*    size      :: The current size object.                              */
-  /*                                                                       */
-  /*    slot      :: The current glyph object.                             */
-  /*                                                                       */
-  /*    hinting   :: Whether hinting is active.                            */
-  /*                                                                       */
-  /*    hint_mode :: The hinting mode.                                     */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   cff_decoder_init
+   *
+   * @Description:
+   *   Initializes a given glyph decoder.
+   *
+   * @InOut:
+   *   decoder ::
+   *     A pointer to the glyph builder to initialize.
+   *
+   * @Input:
+   *   face ::
+   *     The current face object.
+   *
+   *   size ::
+   *     The current size object.
+   *
+   *   slot ::
+   *     The current glyph object.
+   *
+   *   hinting ::
+   *     Whether hinting is active.
+   *
+   *   hint_mode ::
+   *     The hinting mode.
+   */
   FT_LOCAL_DEF( void )
   cff_decoder_init( CFF_Decoder*                     decoder,
                     TT_Face                          face,
diff --git a/src/psaux/cffdecode.h b/src/psaux/cffdecode.h
index 0d4f5fe..b4003bc 100644
--- a/src/psaux/cffdecode.h
+++ b/src/psaux/cffdecode.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  cffdecode.h                                                            */
-/*                                                                         */
-/*    PostScript CFF (Type 2) decoding routines (specification).           */
-/*                                                                         */
-/*  Copyright 2017-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * cffdecode.h
+ *
+ *   PostScript CFF (Type 2) decoding routines (specification).
+ *
+ * Copyright 2017-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef CFFDECODE_H_
diff --git a/src/psaux/psarrst.c b/src/psaux/psarrst.c
index a878094..011803b 100644
--- a/src/psaux/psarrst.c
+++ b/src/psaux/psarrst.c
@@ -1,39 +1,39 @@
-/***************************************************************************/
-/*                                                                         */
-/*  psarrst.c                                                              */
-/*                                                                         */
-/*    Adobe's code for Array Stacks (body).                                */
-/*                                                                         */
-/*  Copyright 2007-2013 Adobe Systems Incorporated.                        */
-/*                                                                         */
-/*  This software, and all works of authorship, whether in source or       */
-/*  object code form as indicated by the copyright notice(s) included      */
-/*  herein (collectively, the "Work") is made available, and may only be   */
-/*  used, modified, and distributed under the FreeType Project License,    */
-/*  LICENSE.TXT.  Additionally, subject to the terms and conditions of the */
-/*  FreeType Project License, each contributor to the Work hereby grants   */
-/*  to any individual or legal entity exercising permissions granted by    */
-/*  the FreeType Project License and this section (hereafter, "You" or     */
-/*  "Your") a perpetual, worldwide, non-exclusive, no-charge,              */
-/*  royalty-free, irrevocable (except as stated in this section) patent    */
-/*  license to make, have made, use, offer to sell, sell, import, and      */
-/*  otherwise transfer the Work, where such license applies only to those  */
-/*  patent claims licensable by such contributor that are necessarily      */
-/*  infringed by their contribution(s) alone or by combination of their    */
-/*  contribution(s) with the Work to which such contribution(s) was        */
-/*  submitted.  If You institute patent litigation against any entity      */
-/*  (including a cross-claim or counterclaim in a lawsuit) alleging that   */
-/*  the Work or a contribution incorporated within the Work constitutes    */
-/*  direct or contributory patent infringement, then any patent licenses   */
-/*  granted to You under this License for that Work shall terminate as of  */
-/*  the date such litigation is filed.                                     */
-/*                                                                         */
-/*  By using, modifying, or distributing the Work you indicate that you    */
-/*  have read and understood the terms and conditions of the               */
-/*  FreeType Project License as well as those provided in this section,    */
-/*  and you accept them fully.                                             */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * psarrst.c
+ *
+ *   Adobe's code for Array Stacks (body).
+ *
+ * Copyright 2007-2013 Adobe Systems Incorporated.
+ *
+ * This software, and all works of authorship, whether in source or
+ * object code form as indicated by the copyright notice(s) included
+ * herein (collectively, the "Work") is made available, and may only be
+ * used, modified, and distributed under the FreeType Project License,
+ * LICENSE.TXT.  Additionally, subject to the terms and conditions of the
+ * FreeType Project License, each contributor to the Work hereby grants
+ * to any individual or legal entity exercising permissions granted by
+ * the FreeType Project License and this section (hereafter, "You" or
+ * "Your") a perpetual, worldwide, non-exclusive, no-charge,
+ * royalty-free, irrevocable (except as stated in this section) patent
+ * license to make, have made, use, offer to sell, sell, import, and
+ * otherwise transfer the Work, where such license applies only to those
+ * patent claims licensable by such contributor that are necessarily
+ * infringed by their contribution(s) alone or by combination of their
+ * contribution(s) with the Work to which such contribution(s) was
+ * submitted.  If You institute patent litigation against any entity
+ * (including a cross-claim or counterclaim in a lawsuit) alleging that
+ * the Work or a contribution incorporated within the Work constitutes
+ * direct or contributory patent infringement, then any patent licenses
+ * granted to You under this License for that Work shall terminate as of
+ * the date such litigation is filed.
+ *
+ * By using, modifying, or distributing the Work you indicate that you
+ * have read and understood the terms and conditions of the
+ * FreeType Project License as well as those provided in this section,
+ * and you accept them fully.
+ *
+ */
 
 
 #include "psft.h"
diff --git a/src/psaux/psarrst.h b/src/psaux/psarrst.h
index b3568eb..098617b 100644
--- a/src/psaux/psarrst.h
+++ b/src/psaux/psarrst.h
@@ -1,39 +1,39 @@
-/***************************************************************************/
-/*                                                                         */
-/*  psarrst.h                                                              */
-/*                                                                         */
-/*    Adobe's code for Array Stacks (specification).                       */
-/*                                                                         */
-/*  Copyright 2007-2013 Adobe Systems Incorporated.                        */
-/*                                                                         */
-/*  This software, and all works of authorship, whether in source or       */
-/*  object code form as indicated by the copyright notice(s) included      */
-/*  herein (collectively, the "Work") is made available, and may only be   */
-/*  used, modified, and distributed under the FreeType Project License,    */
-/*  LICENSE.TXT.  Additionally, subject to the terms and conditions of the */
-/*  FreeType Project License, each contributor to the Work hereby grants   */
-/*  to any individual or legal entity exercising permissions granted by    */
-/*  the FreeType Project License and this section (hereafter, "You" or     */
-/*  "Your") a perpetual, worldwide, non-exclusive, no-charge,              */
-/*  royalty-free, irrevocable (except as stated in this section) patent    */
-/*  license to make, have made, use, offer to sell, sell, import, and      */
-/*  otherwise transfer the Work, where such license applies only to those  */
-/*  patent claims licensable by such contributor that are necessarily      */
-/*  infringed by their contribution(s) alone or by combination of their    */
-/*  contribution(s) with the Work to which such contribution(s) was        */
-/*  submitted.  If You institute patent litigation against any entity      */
-/*  (including a cross-claim or counterclaim in a lawsuit) alleging that   */
-/*  the Work or a contribution incorporated within the Work constitutes    */
-/*  direct or contributory patent infringement, then any patent licenses   */
-/*  granted to You under this License for that Work shall terminate as of  */
-/*  the date such litigation is filed.                                     */
-/*                                                                         */
-/*  By using, modifying, or distributing the Work you indicate that you    */
-/*  have read and understood the terms and conditions of the               */
-/*  FreeType Project License as well as those provided in this section,    */
-/*  and you accept them fully.                                             */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * psarrst.h
+ *
+ *   Adobe's code for Array Stacks (specification).
+ *
+ * Copyright 2007-2013 Adobe Systems Incorporated.
+ *
+ * This software, and all works of authorship, whether in source or
+ * object code form as indicated by the copyright notice(s) included
+ * herein (collectively, the "Work") is made available, and may only be
+ * used, modified, and distributed under the FreeType Project License,
+ * LICENSE.TXT.  Additionally, subject to the terms and conditions of the
+ * FreeType Project License, each contributor to the Work hereby grants
+ * to any individual or legal entity exercising permissions granted by
+ * the FreeType Project License and this section (hereafter, "You" or
+ * "Your") a perpetual, worldwide, non-exclusive, no-charge,
+ * royalty-free, irrevocable (except as stated in this section) patent
+ * license to make, have made, use, offer to sell, sell, import, and
+ * otherwise transfer the Work, where such license applies only to those
+ * patent claims licensable by such contributor that are necessarily
+ * infringed by their contribution(s) alone or by combination of their
+ * contribution(s) with the Work to which such contribution(s) was
+ * submitted.  If You institute patent litigation against any entity
+ * (including a cross-claim or counterclaim in a lawsuit) alleging that
+ * the Work or a contribution incorporated within the Work constitutes
+ * direct or contributory patent infringement, then any patent licenses
+ * granted to You under this License for that Work shall terminate as of
+ * the date such litigation is filed.
+ *
+ * By using, modifying, or distributing the Work you indicate that you
+ * have read and understood the terms and conditions of the
+ * FreeType Project License as well as those provided in this section,
+ * and you accept them fully.
+ *
+ */
 
 
 #ifndef PSARRST_H_
diff --git a/src/psaux/psaux.c b/src/psaux/psaux.c
index fb447fc..3718876 100644
--- a/src/psaux/psaux.c
+++ b/src/psaux/psaux.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  psaux.c                                                                */
-/*                                                                         */
-/*    FreeType auxiliary PostScript driver component (body only).          */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * psaux.c
+ *
+ *   FreeType auxiliary PostScript driver component (body only).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #define FT_MAKE_OPTION_SINGLE_OBJECT
diff --git a/src/psaux/psauxerr.h b/src/psaux/psauxerr.h
index cc33fd2..3062ae5 100644
--- a/src/psaux/psauxerr.h
+++ b/src/psaux/psauxerr.h
@@ -1,27 +1,27 @@
-/***************************************************************************/
-/*                                                                         */
-/*  psauxerr.h                                                             */
-/*                                                                         */
-/*    PS auxiliary module error codes (specification only).                */
-/*                                                                         */
-/*  Copyright 2001-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This file is used to define the PS auxiliary module error enumeration */
-  /* constants.                                                            */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * psauxerr.h
+ *
+ *   PS auxiliary module error codes (specification only).
+ *
+ * Copyright 2001-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+
+  /**************************************************************************
+   *
+   * This file is used to define the PS auxiliary module error enumeration
+   * constants.
+   *
+   */
 
 #ifndef PSAUXERR_H_
 #define PSAUXERR_H_
diff --git a/src/psaux/psauxmod.c b/src/psaux/psauxmod.c
index ee49708..41ce294 100644
--- a/src/psaux/psauxmod.c
+++ b/src/psaux/psauxmod.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  psauxmod.c                                                             */
-/*                                                                         */
-/*    FreeType auxiliary PostScript module implementation (body).          */
-/*                                                                         */
-/*  Copyright 2000-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * psauxmod.c
+ *
+ *   FreeType auxiliary PostScript module implementation (body).
+ *
+ * Copyright 2000-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
diff --git a/src/psaux/psauxmod.h b/src/psaux/psauxmod.h
index 5fa6916..9d894f7 100644
--- a/src/psaux/psauxmod.h
+++ b/src/psaux/psauxmod.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  psauxmod.h                                                             */
-/*                                                                         */
-/*    FreeType auxiliary PostScript module implementation (specification). */
-/*                                                                         */
-/*  Copyright 2000-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * psauxmod.h
+ *
+ *   FreeType auxiliary PostScript module implementation (specification).
+ *
+ * Copyright 2000-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef PSAUXMOD_H_
diff --git a/src/psaux/psblues.c b/src/psaux/psblues.c
index ae39d03..e44f3c7 100644
--- a/src/psaux/psblues.c
+++ b/src/psaux/psblues.c
@@ -1,39 +1,39 @@
-/***************************************************************************/
-/*                                                                         */
-/*  psblues.c                                                              */
-/*                                                                         */
-/*    Adobe's code for handling Blue Zones (body).                         */
-/*                                                                         */
-/*  Copyright 2009-2014 Adobe Systems Incorporated.                        */
-/*                                                                         */
-/*  This software, and all works of authorship, whether in source or       */
-/*  object code form as indicated by the copyright notice(s) included      */
-/*  herein (collectively, the "Work") is made available, and may only be   */
-/*  used, modified, and distributed under the FreeType Project License,    */
-/*  LICENSE.TXT.  Additionally, subject to the terms and conditions of the */
-/*  FreeType Project License, each contributor to the Work hereby grants   */
-/*  to any individual or legal entity exercising permissions granted by    */
-/*  the FreeType Project License and this section (hereafter, "You" or     */
-/*  "Your") a perpetual, worldwide, non-exclusive, no-charge,              */
-/*  royalty-free, irrevocable (except as stated in this section) patent    */
-/*  license to make, have made, use, offer to sell, sell, import, and      */
-/*  otherwise transfer the Work, where such license applies only to those  */
-/*  patent claims licensable by such contributor that are necessarily      */
-/*  infringed by their contribution(s) alone or by combination of their    */
-/*  contribution(s) with the Work to which such contribution(s) was        */
-/*  submitted.  If You institute patent litigation against any entity      */
-/*  (including a cross-claim or counterclaim in a lawsuit) alleging that   */
-/*  the Work or a contribution incorporated within the Work constitutes    */
-/*  direct or contributory patent infringement, then any patent licenses   */
-/*  granted to You under this License for that Work shall terminate as of  */
-/*  the date such litigation is filed.                                     */
-/*                                                                         */
-/*  By using, modifying, or distributing the Work you indicate that you    */
-/*  have read and understood the terms and conditions of the               */
-/*  FreeType Project License as well as those provided in this section,    */
-/*  and you accept them fully.                                             */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * psblues.c
+ *
+ *   Adobe's code for handling Blue Zones (body).
+ *
+ * Copyright 2009-2014 Adobe Systems Incorporated.
+ *
+ * This software, and all works of authorship, whether in source or
+ * object code form as indicated by the copyright notice(s) included
+ * herein (collectively, the "Work") is made available, and may only be
+ * used, modified, and distributed under the FreeType Project License,
+ * LICENSE.TXT.  Additionally, subject to the terms and conditions of the
+ * FreeType Project License, each contributor to the Work hereby grants
+ * to any individual or legal entity exercising permissions granted by
+ * the FreeType Project License and this section (hereafter, "You" or
+ * "Your") a perpetual, worldwide, non-exclusive, no-charge,
+ * royalty-free, irrevocable (except as stated in this section) patent
+ * license to make, have made, use, offer to sell, sell, import, and
+ * otherwise transfer the Work, where such license applies only to those
+ * patent claims licensable by such contributor that are necessarily
+ * infringed by their contribution(s) alone or by combination of their
+ * contribution(s) with the Work to which such contribution(s) was
+ * submitted.  If You institute patent litigation against any entity
+ * (including a cross-claim or counterclaim in a lawsuit) alleging that
+ * the Work or a contribution incorporated within the Work constitutes
+ * direct or contributory patent infringement, then any patent licenses
+ * granted to You under this License for that Work shall terminate as of
+ * the date such litigation is filed.
+ *
+ * By using, modifying, or distributing the Work you indicate that you
+ * have read and understood the terms and conditions of the
+ * FreeType Project License as well as those provided in this section,
+ * and you accept them fully.
+ *
+ */
 
 
 #include "psft.h"
@@ -44,12 +44,12 @@
 #include "psfont.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_cf2blues
 
@@ -452,13 +452,13 @@
    * zones in the same pass (see `BlueLock').  If a hint is captured,
    * return true and position the edge(s) in one of 3 ways:
    *
-   *  1) If `BlueScale' suppresses overshoot, position the captured edge
-   *     at the flat edge of the zone.
-   *  2) If overshoot is not suppressed and `BlueShift' requires
-   *     overshoot, position the captured edge a minimum of 1 device pixel
-   *     from the flat edge.
-   *  3) If overshoot is not suppressed or required, position the captured
-   *     edge at the nearest device pixel.
+   * 1) If `BlueScale' suppresses overshoot, position the captured edge
+   *    at the flat edge of the zone.
+   * 2) If overshoot is not suppressed and `BlueShift' requires
+   *    overshoot, position the captured edge a minimum of 1 device pixel
+   *    from the flat edge.
+   * 3) If overshoot is not suppressed or required, position the captured
+   *    edge at the nearest device pixel.
    *
    */
   FT_LOCAL_DEF( FT_Bool )
diff --git a/src/psaux/psblues.h b/src/psaux/psblues.h
index 25ef684..55fb88e 100644
--- a/src/psaux/psblues.h
+++ b/src/psaux/psblues.h
@@ -1,39 +1,39 @@
-/***************************************************************************/
-/*                                                                         */
-/*  psblues.h                                                              */
-/*                                                                         */
-/*    Adobe's code for handling Blue Zones (specification).                */
-/*                                                                         */
-/*  Copyright 2009-2013 Adobe Systems Incorporated.                        */
-/*                                                                         */
-/*  This software, and all works of authorship, whether in source or       */
-/*  object code form as indicated by the copyright notice(s) included      */
-/*  herein (collectively, the "Work") is made available, and may only be   */
-/*  used, modified, and distributed under the FreeType Project License,    */
-/*  LICENSE.TXT.  Additionally, subject to the terms and conditions of the */
-/*  FreeType Project License, each contributor to the Work hereby grants   */
-/*  to any individual or legal entity exercising permissions granted by    */
-/*  the FreeType Project License and this section (hereafter, "You" or     */
-/*  "Your") a perpetual, worldwide, non-exclusive, no-charge,              */
-/*  royalty-free, irrevocable (except as stated in this section) patent    */
-/*  license to make, have made, use, offer to sell, sell, import, and      */
-/*  otherwise transfer the Work, where such license applies only to those  */
-/*  patent claims licensable by such contributor that are necessarily      */
-/*  infringed by their contribution(s) alone or by combination of their    */
-/*  contribution(s) with the Work to which such contribution(s) was        */
-/*  submitted.  If You institute patent litigation against any entity      */
-/*  (including a cross-claim or counterclaim in a lawsuit) alleging that   */
-/*  the Work or a contribution incorporated within the Work constitutes    */
-/*  direct or contributory patent infringement, then any patent licenses   */
-/*  granted to You under this License for that Work shall terminate as of  */
-/*  the date such litigation is filed.                                     */
-/*                                                                         */
-/*  By using, modifying, or distributing the Work you indicate that you    */
-/*  have read and understood the terms and conditions of the               */
-/*  FreeType Project License as well as those provided in this section,    */
-/*  and you accept them fully.                                             */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * psblues.h
+ *
+ *   Adobe's code for handling Blue Zones (specification).
+ *
+ * Copyright 2009-2013 Adobe Systems Incorporated.
+ *
+ * This software, and all works of authorship, whether in source or
+ * object code form as indicated by the copyright notice(s) included
+ * herein (collectively, the "Work") is made available, and may only be
+ * used, modified, and distributed under the FreeType Project License,
+ * LICENSE.TXT.  Additionally, subject to the terms and conditions of the
+ * FreeType Project License, each contributor to the Work hereby grants
+ * to any individual or legal entity exercising permissions granted by
+ * the FreeType Project License and this section (hereafter, "You" or
+ * "Your") a perpetual, worldwide, non-exclusive, no-charge,
+ * royalty-free, irrevocable (except as stated in this section) patent
+ * license to make, have made, use, offer to sell, sell, import, and
+ * otherwise transfer the Work, where such license applies only to those
+ * patent claims licensable by such contributor that are necessarily
+ * infringed by their contribution(s) alone or by combination of their
+ * contribution(s) with the Work to which such contribution(s) was
+ * submitted.  If You institute patent litigation against any entity
+ * (including a cross-claim or counterclaim in a lawsuit) alleging that
+ * the Work or a contribution incorporated within the Work constitutes
+ * direct or contributory patent infringement, then any patent licenses
+ * granted to You under this License for that Work shall terminate as of
+ * the date such litigation is filed.
+ *
+ * By using, modifying, or distributing the Work you indicate that you
+ * have read and understood the terms and conditions of the
+ * FreeType Project License as well as those provided in this section,
+ * and you accept them fully.
+ *
+ */
 
 
   /*
diff --git a/src/psaux/psconv.c b/src/psaux/psconv.c
index a033850..74273f7 100644
--- a/src/psaux/psconv.c
+++ b/src/psaux/psconv.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  psconv.c                                                               */
-/*                                                                         */
-/*    Some convenience conversions (body).                                 */
-/*                                                                         */
-/*  Copyright 2006-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * psconv.c
+ *
+ *   Some convenience conversions (body).
+ *
+ * Copyright 2006-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -24,12 +24,12 @@
 #include "psauxerr.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_psconv
 
diff --git a/src/psaux/psconv.h b/src/psaux/psconv.h
index d643ffc..2472942 100644
--- a/src/psaux/psconv.h
+++ b/src/psaux/psconv.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  psconv.h                                                               */
-/*                                                                         */
-/*    Some convenience conversions (specification).                        */
-/*                                                                         */
-/*  Copyright 2006-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * psconv.h
+ *
+ *   Some convenience conversions (specification).
+ *
+ * Copyright 2006-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef PSCONV_H_
diff --git a/src/psaux/pserror.c b/src/psaux/pserror.c
index 9169e52..98cebcf 100644
--- a/src/psaux/pserror.c
+++ b/src/psaux/pserror.c
@@ -1,39 +1,39 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pserror.c                                                              */
-/*                                                                         */
-/*    Adobe's code for error handling (body).                              */
-/*                                                                         */
-/*  Copyright 2006-2013 Adobe Systems Incorporated.                        */
-/*                                                                         */
-/*  This software, and all works of authorship, whether in source or       */
-/*  object code form as indicated by the copyright notice(s) included      */
-/*  herein (collectively, the "Work") is made available, and may only be   */
-/*  used, modified, and distributed under the FreeType Project License,    */
-/*  LICENSE.TXT.  Additionally, subject to the terms and conditions of the */
-/*  FreeType Project License, each contributor to the Work hereby grants   */
-/*  to any individual or legal entity exercising permissions granted by    */
-/*  the FreeType Project License and this section (hereafter, "You" or     */
-/*  "Your") a perpetual, worldwide, non-exclusive, no-charge,              */
-/*  royalty-free, irrevocable (except as stated in this section) patent    */
-/*  license to make, have made, use, offer to sell, sell, import, and      */
-/*  otherwise transfer the Work, where such license applies only to those  */
-/*  patent claims licensable by such contributor that are necessarily      */
-/*  infringed by their contribution(s) alone or by combination of their    */
-/*  contribution(s) with the Work to which such contribution(s) was        */
-/*  submitted.  If You institute patent litigation against any entity      */
-/*  (including a cross-claim or counterclaim in a lawsuit) alleging that   */
-/*  the Work or a contribution incorporated within the Work constitutes    */
-/*  direct or contributory patent infringement, then any patent licenses   */
-/*  granted to You under this License for that Work shall terminate as of  */
-/*  the date such litigation is filed.                                     */
-/*                                                                         */
-/*  By using, modifying, or distributing the Work you indicate that you    */
-/*  have read and understood the terms and conditions of the               */
-/*  FreeType Project License as well as those provided in this section,    */
-/*  and you accept them fully.                                             */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * pserror.c
+ *
+ *   Adobe's code for error handling (body).
+ *
+ * Copyright 2006-2013 Adobe Systems Incorporated.
+ *
+ * This software, and all works of authorship, whether in source or
+ * object code form as indicated by the copyright notice(s) included
+ * herein (collectively, the "Work") is made available, and may only be
+ * used, modified, and distributed under the FreeType Project License,
+ * LICENSE.TXT.  Additionally, subject to the terms and conditions of the
+ * FreeType Project License, each contributor to the Work hereby grants
+ * to any individual or legal entity exercising permissions granted by
+ * the FreeType Project License and this section (hereafter, "You" or
+ * "Your") a perpetual, worldwide, non-exclusive, no-charge,
+ * royalty-free, irrevocable (except as stated in this section) patent
+ * license to make, have made, use, offer to sell, sell, import, and
+ * otherwise transfer the Work, where such license applies only to those
+ * patent claims licensable by such contributor that are necessarily
+ * infringed by their contribution(s) alone or by combination of their
+ * contribution(s) with the Work to which such contribution(s) was
+ * submitted.  If You institute patent litigation against any entity
+ * (including a cross-claim or counterclaim in a lawsuit) alleging that
+ * the Work or a contribution incorporated within the Work constitutes
+ * direct or contributory patent infringement, then any patent licenses
+ * granted to You under this License for that Work shall terminate as of
+ * the date such litigation is filed.
+ *
+ * By using, modifying, or distributing the Work you indicate that you
+ * have read and understood the terms and conditions of the
+ * FreeType Project License as well as those provided in this section,
+ * and you accept them fully.
+ *
+ */
 
 
 #include "psft.h"
diff --git a/src/psaux/pserror.h b/src/psaux/pserror.h
index 13d5206..b2156b3 100644
--- a/src/psaux/pserror.h
+++ b/src/psaux/pserror.h
@@ -1,39 +1,39 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pserror.h                                                              */
-/*                                                                         */
-/*    Adobe's code for error handling (specification).                     */
-/*                                                                         */
-/*  Copyright 2006-2013 Adobe Systems Incorporated.                        */
-/*                                                                         */
-/*  This software, and all works of authorship, whether in source or       */
-/*  object code form as indicated by the copyright notice(s) included      */
-/*  herein (collectively, the "Work") is made available, and may only be   */
-/*  used, modified, and distributed under the FreeType Project License,    */
-/*  LICENSE.TXT.  Additionally, subject to the terms and conditions of the */
-/*  FreeType Project License, each contributor to the Work hereby grants   */
-/*  to any individual or legal entity exercising permissions granted by    */
-/*  the FreeType Project License and this section (hereafter, "You" or     */
-/*  "Your") a perpetual, worldwide, non-exclusive, no-charge,              */
-/*  royalty-free, irrevocable (except as stated in this section) patent    */
-/*  license to make, have made, use, offer to sell, sell, import, and      */
-/*  otherwise transfer the Work, where such license applies only to those  */
-/*  patent claims licensable by such contributor that are necessarily      */
-/*  infringed by their contribution(s) alone or by combination of their    */
-/*  contribution(s) with the Work to which such contribution(s) was        */
-/*  submitted.  If You institute patent litigation against any entity      */
-/*  (including a cross-claim or counterclaim in a lawsuit) alleging that   */
-/*  the Work or a contribution incorporated within the Work constitutes    */
-/*  direct or contributory patent infringement, then any patent licenses   */
-/*  granted to You under this License for that Work shall terminate as of  */
-/*  the date such litigation is filed.                                     */
-/*                                                                         */
-/*  By using, modifying, or distributing the Work you indicate that you    */
-/*  have read and understood the terms and conditions of the               */
-/*  FreeType Project License as well as those provided in this section,    */
-/*  and you accept them fully.                                             */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * pserror.h
+ *
+ *   Adobe's code for error handling (specification).
+ *
+ * Copyright 2006-2013 Adobe Systems Incorporated.
+ *
+ * This software, and all works of authorship, whether in source or
+ * object code form as indicated by the copyright notice(s) included
+ * herein (collectively, the "Work") is made available, and may only be
+ * used, modified, and distributed under the FreeType Project License,
+ * LICENSE.TXT.  Additionally, subject to the terms and conditions of the
+ * FreeType Project License, each contributor to the Work hereby grants
+ * to any individual or legal entity exercising permissions granted by
+ * the FreeType Project License and this section (hereafter, "You" or
+ * "Your") a perpetual, worldwide, non-exclusive, no-charge,
+ * royalty-free, irrevocable (except as stated in this section) patent
+ * license to make, have made, use, offer to sell, sell, import, and
+ * otherwise transfer the Work, where such license applies only to those
+ * patent claims licensable by such contributor that are necessarily
+ * infringed by their contribution(s) alone or by combination of their
+ * contribution(s) with the Work to which such contribution(s) was
+ * submitted.  If You institute patent litigation against any entity
+ * (including a cross-claim or counterclaim in a lawsuit) alleging that
+ * the Work or a contribution incorporated within the Work constitutes
+ * direct or contributory patent infringement, then any patent licenses
+ * granted to You under this License for that Work shall terminate as of
+ * the date such litigation is filed.
+ *
+ * By using, modifying, or distributing the Work you indicate that you
+ * have read and understood the terms and conditions of the
+ * FreeType Project License as well as those provided in this section,
+ * and you accept them fully.
+ *
+ */
 
 
 #ifndef PSERROR_H_
diff --git a/src/psaux/psfixed.h b/src/psaux/psfixed.h
index 219589e..fd3460f 100644
--- a/src/psaux/psfixed.h
+++ b/src/psaux/psfixed.h
@@ -1,39 +1,39 @@
-/***************************************************************************/
-/*                                                                         */
-/*  psfixed.h                                                              */
-/*                                                                         */
-/*    Adobe's code for Fixed Point Mathematics (specification only).       */
-/*                                                                         */
-/*  Copyright 2007-2013 Adobe Systems Incorporated.                        */
-/*                                                                         */
-/*  This software, and all works of authorship, whether in source or       */
-/*  object code form as indicated by the copyright notice(s) included      */
-/*  herein (collectively, the "Work") is made available, and may only be   */
-/*  used, modified, and distributed under the FreeType Project License,    */
-/*  LICENSE.TXT.  Additionally, subject to the terms and conditions of the */
-/*  FreeType Project License, each contributor to the Work hereby grants   */
-/*  to any individual or legal entity exercising permissions granted by    */
-/*  the FreeType Project License and this section (hereafter, "You" or     */
-/*  "Your") a perpetual, worldwide, non-exclusive, no-charge,              */
-/*  royalty-free, irrevocable (except as stated in this section) patent    */
-/*  license to make, have made, use, offer to sell, sell, import, and      */
-/*  otherwise transfer the Work, where such license applies only to those  */
-/*  patent claims licensable by such contributor that are necessarily      */
-/*  infringed by their contribution(s) alone or by combination of their    */
-/*  contribution(s) with the Work to which such contribution(s) was        */
-/*  submitted.  If You institute patent litigation against any entity      */
-/*  (including a cross-claim or counterclaim in a lawsuit) alleging that   */
-/*  the Work or a contribution incorporated within the Work constitutes    */
-/*  direct or contributory patent infringement, then any patent licenses   */
-/*  granted to You under this License for that Work shall terminate as of  */
-/*  the date such litigation is filed.                                     */
-/*                                                                         */
-/*  By using, modifying, or distributing the Work you indicate that you    */
-/*  have read and understood the terms and conditions of the               */
-/*  FreeType Project License as well as those provided in this section,    */
-/*  and you accept them fully.                                             */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * psfixed.h
+ *
+ *   Adobe's code for Fixed Point Mathematics (specification only).
+ *
+ * Copyright 2007-2013 Adobe Systems Incorporated.
+ *
+ * This software, and all works of authorship, whether in source or
+ * object code form as indicated by the copyright notice(s) included
+ * herein (collectively, the "Work") is made available, and may only be
+ * used, modified, and distributed under the FreeType Project License,
+ * LICENSE.TXT.  Additionally, subject to the terms and conditions of the
+ * FreeType Project License, each contributor to the Work hereby grants
+ * to any individual or legal entity exercising permissions granted by
+ * the FreeType Project License and this section (hereafter, "You" or
+ * "Your") a perpetual, worldwide, non-exclusive, no-charge,
+ * royalty-free, irrevocable (except as stated in this section) patent
+ * license to make, have made, use, offer to sell, sell, import, and
+ * otherwise transfer the Work, where such license applies only to those
+ * patent claims licensable by such contributor that are necessarily
+ * infringed by their contribution(s) alone or by combination of their
+ * contribution(s) with the Work to which such contribution(s) was
+ * submitted.  If You institute patent litigation against any entity
+ * (including a cross-claim or counterclaim in a lawsuit) alleging that
+ * the Work or a contribution incorporated within the Work constitutes
+ * direct or contributory patent infringement, then any patent licenses
+ * granted to You under this License for that Work shall terminate as of
+ * the date such litigation is filed.
+ *
+ * By using, modifying, or distributing the Work you indicate that you
+ * have read and understood the terms and conditions of the
+ * FreeType Project License as well as those provided in this section,
+ * and you accept them fully.
+ *
+ */
 
 
 #ifndef PSFIXED_H_
diff --git a/src/psaux/psfont.c b/src/psaux/psfont.c
index dde67a7..a7e743d 100644
--- a/src/psaux/psfont.c
+++ b/src/psaux/psfont.c
@@ -1,39 +1,39 @@
-/***************************************************************************/
-/*                                                                         */
-/*  psfont.c                                                               */
-/*                                                                         */
-/*    Adobe's code for font instances (body).                              */
-/*                                                                         */
-/*  Copyright 2007-2014 Adobe Systems Incorporated.                        */
-/*                                                                         */
-/*  This software, and all works of authorship, whether in source or       */
-/*  object code form as indicated by the copyright notice(s) included      */
-/*  herein (collectively, the "Work") is made available, and may only be   */
-/*  used, modified, and distributed under the FreeType Project License,    */
-/*  LICENSE.TXT.  Additionally, subject to the terms and conditions of the */
-/*  FreeType Project License, each contributor to the Work hereby grants   */
-/*  to any individual or legal entity exercising permissions granted by    */
-/*  the FreeType Project License and this section (hereafter, "You" or     */
-/*  "Your") a perpetual, worldwide, non-exclusive, no-charge,              */
-/*  royalty-free, irrevocable (except as stated in this section) patent    */
-/*  license to make, have made, use, offer to sell, sell, import, and      */
-/*  otherwise transfer the Work, where such license applies only to those  */
-/*  patent claims licensable by such contributor that are necessarily      */
-/*  infringed by their contribution(s) alone or by combination of their    */
-/*  contribution(s) with the Work to which such contribution(s) was        */
-/*  submitted.  If You institute patent litigation against any entity      */
-/*  (including a cross-claim or counterclaim in a lawsuit) alleging that   */
-/*  the Work or a contribution incorporated within the Work constitutes    */
-/*  direct or contributory patent infringement, then any patent licenses   */
-/*  granted to You under this License for that Work shall terminate as of  */
-/*  the date such litigation is filed.                                     */
-/*                                                                         */
-/*  By using, modifying, or distributing the Work you indicate that you    */
-/*  have read and understood the terms and conditions of the               */
-/*  FreeType Project License as well as those provided in this section,    */
-/*  and you accept them fully.                                             */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * psfont.c
+ *
+ *   Adobe's code for font instances (body).
+ *
+ * Copyright 2007-2014 Adobe Systems Incorporated.
+ *
+ * This software, and all works of authorship, whether in source or
+ * object code form as indicated by the copyright notice(s) included
+ * herein (collectively, the "Work") is made available, and may only be
+ * used, modified, and distributed under the FreeType Project License,
+ * LICENSE.TXT.  Additionally, subject to the terms and conditions of the
+ * FreeType Project License, each contributor to the Work hereby grants
+ * to any individual or legal entity exercising permissions granted by
+ * the FreeType Project License and this section (hereafter, "You" or
+ * "Your") a perpetual, worldwide, non-exclusive, no-charge,
+ * royalty-free, irrevocable (except as stated in this section) patent
+ * license to make, have made, use, offer to sell, sell, import, and
+ * otherwise transfer the Work, where such license applies only to those
+ * patent claims licensable by such contributor that are necessarily
+ * infringed by their contribution(s) alone or by combination of their
+ * contribution(s) with the Work to which such contribution(s) was
+ * submitted.  If You institute patent litigation against any entity
+ * (including a cross-claim or counterclaim in a lawsuit) alleging that
+ * the Work or a contribution incorporated within the Work constitutes
+ * direct or contributory patent infringement, then any patent licenses
+ * granted to You under this License for that Work shall terminate as of
+ * the date such litigation is filed.
+ *
+ * By using, modifying, or distributing the Work you indicate that you
+ * have read and understood the terms and conditions of the
+ * FreeType Project License as well as those provided in this section,
+ * and you accept them fully.
+ *
+ */
 
 
 #include <ft2build.h>
diff --git a/src/psaux/psfont.h b/src/psaux/psfont.h
index e611ac4..8fbacbb 100644
--- a/src/psaux/psfont.h
+++ b/src/psaux/psfont.h
@@ -1,39 +1,39 @@
-/***************************************************************************/
-/*                                                                         */
-/*  psfont.h                                                               */
-/*                                                                         */
-/*    Adobe's code for font instances (specification).                     */
-/*                                                                         */
-/*  Copyright 2007-2013 Adobe Systems Incorporated.                        */
-/*                                                                         */
-/*  This software, and all works of authorship, whether in source or       */
-/*  object code form as indicated by the copyright notice(s) included      */
-/*  herein (collectively, the "Work") is made available, and may only be   */
-/*  used, modified, and distributed under the FreeType Project License,    */
-/*  LICENSE.TXT.  Additionally, subject to the terms and conditions of the */
-/*  FreeType Project License, each contributor to the Work hereby grants   */
-/*  to any individual or legal entity exercising permissions granted by    */
-/*  the FreeType Project License and this section (hereafter, "You" or     */
-/*  "Your") a perpetual, worldwide, non-exclusive, no-charge,              */
-/*  royalty-free, irrevocable (except as stated in this section) patent    */
-/*  license to make, have made, use, offer to sell, sell, import, and      */
-/*  otherwise transfer the Work, where such license applies only to those  */
-/*  patent claims licensable by such contributor that are necessarily      */
-/*  infringed by their contribution(s) alone or by combination of their    */
-/*  contribution(s) with the Work to which such contribution(s) was        */
-/*  submitted.  If You institute patent litigation against any entity      */
-/*  (including a cross-claim or counterclaim in a lawsuit) alleging that   */
-/*  the Work or a contribution incorporated within the Work constitutes    */
-/*  direct or contributory patent infringement, then any patent licenses   */
-/*  granted to You under this License for that Work shall terminate as of  */
-/*  the date such litigation is filed.                                     */
-/*                                                                         */
-/*  By using, modifying, or distributing the Work you indicate that you    */
-/*  have read and understood the terms and conditions of the               */
-/*  FreeType Project License as well as those provided in this section,    */
-/*  and you accept them fully.                                             */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * psfont.h
+ *
+ *   Adobe's code for font instances (specification).
+ *
+ * Copyright 2007-2013 Adobe Systems Incorporated.
+ *
+ * This software, and all works of authorship, whether in source or
+ * object code form as indicated by the copyright notice(s) included
+ * herein (collectively, the "Work") is made available, and may only be
+ * used, modified, and distributed under the FreeType Project License,
+ * LICENSE.TXT.  Additionally, subject to the terms and conditions of the
+ * FreeType Project License, each contributor to the Work hereby grants
+ * to any individual or legal entity exercising permissions granted by
+ * the FreeType Project License and this section (hereafter, "You" or
+ * "Your") a perpetual, worldwide, non-exclusive, no-charge,
+ * royalty-free, irrevocable (except as stated in this section) patent
+ * license to make, have made, use, offer to sell, sell, import, and
+ * otherwise transfer the Work, where such license applies only to those
+ * patent claims licensable by such contributor that are necessarily
+ * infringed by their contribution(s) alone or by combination of their
+ * contribution(s) with the Work to which such contribution(s) was
+ * submitted.  If You institute patent litigation against any entity
+ * (including a cross-claim or counterclaim in a lawsuit) alleging that
+ * the Work or a contribution incorporated within the Work constitutes
+ * direct or contributory patent infringement, then any patent licenses
+ * granted to You under this License for that Work shall terminate as of
+ * the date such litigation is filed.
+ *
+ * By using, modifying, or distributing the Work you indicate that you
+ * have read and understood the terms and conditions of the
+ * FreeType Project License as well as those provided in this section,
+ * and you accept them fully.
+ *
+ */
 
 
 #ifndef PSFONT_H_
diff --git a/src/psaux/psft.c b/src/psaux/psft.c
index 32e0bae..54be468 100644
--- a/src/psaux/psft.c
+++ b/src/psaux/psft.c
@@ -1,39 +1,39 @@
-/***************************************************************************/
-/*                                                                         */
-/*  psft.c                                                                 */
-/*                                                                         */
-/*    FreeType Glue Component to Adobe's Interpreter (body).               */
-/*                                                                         */
-/*  Copyright 2013-2014 Adobe Systems Incorporated.                        */
-/*                                                                         */
-/*  This software, and all works of authorship, whether in source or       */
-/*  object code form as indicated by the copyright notice(s) included      */
-/*  herein (collectively, the "Work") is made available, and may only be   */
-/*  used, modified, and distributed under the FreeType Project License,    */
-/*  LICENSE.TXT.  Additionally, subject to the terms and conditions of the */
-/*  FreeType Project License, each contributor to the Work hereby grants   */
-/*  to any individual or legal entity exercising permissions granted by    */
-/*  the FreeType Project License and this section (hereafter, "You" or     */
-/*  "Your") a perpetual, worldwide, non-exclusive, no-charge,              */
-/*  royalty-free, irrevocable (except as stated in this section) patent    */
-/*  license to make, have made, use, offer to sell, sell, import, and      */
-/*  otherwise transfer the Work, where such license applies only to those  */
-/*  patent claims licensable by such contributor that are necessarily      */
-/*  infringed by their contribution(s) alone or by combination of their    */
-/*  contribution(s) with the Work to which such contribution(s) was        */
-/*  submitted.  If You institute patent litigation against any entity      */
-/*  (including a cross-claim or counterclaim in a lawsuit) alleging that   */
-/*  the Work or a contribution incorporated within the Work constitutes    */
-/*  direct or contributory patent infringement, then any patent licenses   */
-/*  granted to You under this License for that Work shall terminate as of  */
-/*  the date such litigation is filed.                                     */
-/*                                                                         */
-/*  By using, modifying, or distributing the Work you indicate that you    */
-/*  have read and understood the terms and conditions of the               */
-/*  FreeType Project License as well as those provided in this section,    */
-/*  and you accept them fully.                                             */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * psft.c
+ *
+ *   FreeType Glue Component to Adobe's Interpreter (body).
+ *
+ * Copyright 2013-2014 Adobe Systems Incorporated.
+ *
+ * This software, and all works of authorship, whether in source or
+ * object code form as indicated by the copyright notice(s) included
+ * herein (collectively, the "Work") is made available, and may only be
+ * used, modified, and distributed under the FreeType Project License,
+ * LICENSE.TXT.  Additionally, subject to the terms and conditions of the
+ * FreeType Project License, each contributor to the Work hereby grants
+ * to any individual or legal entity exercising permissions granted by
+ * the FreeType Project License and this section (hereafter, "You" or
+ * "Your") a perpetual, worldwide, non-exclusive, no-charge,
+ * royalty-free, irrevocable (except as stated in this section) patent
+ * license to make, have made, use, offer to sell, sell, import, and
+ * otherwise transfer the Work, where such license applies only to those
+ * patent claims licensable by such contributor that are necessarily
+ * infringed by their contribution(s) alone or by combination of their
+ * contribution(s) with the Work to which such contribution(s) was
+ * submitted.  If You institute patent litigation against any entity
+ * (including a cross-claim or counterclaim in a lawsuit) alleging that
+ * the Work or a contribution incorporated within the Work constitutes
+ * direct or contributory patent infringement, then any patent licenses
+ * granted to You under this License for that Work shall terminate as of
+ * the date such litigation is filed.
+ *
+ * By using, modifying, or distributing the Work you indicate that you
+ * have read and understood the terms and conditions of the
+ * FreeType Project License as well as those provided in this section,
+ * and you accept them fully.
+ *
+ */
 
 
 #include "psft.h"
@@ -120,12 +120,12 @@
   }
 
 
-  /********************************************/
-  /*                                          */
-  /* functions for handling client outline;   */
-  /* FreeType uses coordinates in 26.6 format */
-  /*                                          */
-  /********************************************/
+  /*********************************************
+   *
+   * functions for handling client outline;
+   * FreeType uses coordinates in 26.6 format
+   *
+   */
 
   static void
   cf2_builder_moveTo( CF2_OutlineCallbacks      callbacks,
diff --git a/src/psaux/psft.h b/src/psaux/psft.h
index ab17211..4c930f0 100644
--- a/src/psaux/psft.h
+++ b/src/psaux/psft.h
@@ -1,39 +1,39 @@
-/***************************************************************************/
-/*                                                                         */
-/*  psft.h                                                                 */
-/*                                                                         */
-/*    FreeType Glue Component to Adobe's Interpreter (specification).      */
-/*                                                                         */
-/*  Copyright 2013 Adobe Systems Incorporated.                             */
-/*                                                                         */
-/*  This software, and all works of authorship, whether in source or       */
-/*  object code form as indicated by the copyright notice(s) included      */
-/*  herein (collectively, the "Work") is made available, and may only be   */
-/*  used, modified, and distributed under the FreeType Project License,    */
-/*  LICENSE.TXT.  Additionally, subject to the terms and conditions of the */
-/*  FreeType Project License, each contributor to the Work hereby grants   */
-/*  to any individual or legal entity exercising permissions granted by    */
-/*  the FreeType Project License and this section (hereafter, "You" or     */
-/*  "Your") a perpetual, worldwide, non-exclusive, no-charge,              */
-/*  royalty-free, irrevocable (except as stated in this section) patent    */
-/*  license to make, have made, use, offer to sell, sell, import, and      */
-/*  otherwise transfer the Work, where such license applies only to those  */
-/*  patent claims licensable by such contributor that are necessarily      */
-/*  infringed by their contribution(s) alone or by combination of their    */
-/*  contribution(s) with the Work to which such contribution(s) was        */
-/*  submitted.  If You institute patent litigation against any entity      */
-/*  (including a cross-claim or counterclaim in a lawsuit) alleging that   */
-/*  the Work or a contribution incorporated within the Work constitutes    */
-/*  direct or contributory patent infringement, then any patent licenses   */
-/*  granted to You under this License for that Work shall terminate as of  */
-/*  the date such litigation is filed.                                     */
-/*                                                                         */
-/*  By using, modifying, or distributing the Work you indicate that you    */
-/*  have read and understood the terms and conditions of the               */
-/*  FreeType Project License as well as those provided in this section,    */
-/*  and you accept them fully.                                             */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * psft.h
+ *
+ *   FreeType Glue Component to Adobe's Interpreter (specification).
+ *
+ * Copyright 2013 Adobe Systems Incorporated.
+ *
+ * This software, and all works of authorship, whether in source or
+ * object code form as indicated by the copyright notice(s) included
+ * herein (collectively, the "Work") is made available, and may only be
+ * used, modified, and distributed under the FreeType Project License,
+ * LICENSE.TXT.  Additionally, subject to the terms and conditions of the
+ * FreeType Project License, each contributor to the Work hereby grants
+ * to any individual or legal entity exercising permissions granted by
+ * the FreeType Project License and this section (hereafter, "You" or
+ * "Your") a perpetual, worldwide, non-exclusive, no-charge,
+ * royalty-free, irrevocable (except as stated in this section) patent
+ * license to make, have made, use, offer to sell, sell, import, and
+ * otherwise transfer the Work, where such license applies only to those
+ * patent claims licensable by such contributor that are necessarily
+ * infringed by their contribution(s) alone or by combination of their
+ * contribution(s) with the Work to which such contribution(s) was
+ * submitted.  If You institute patent litigation against any entity
+ * (including a cross-claim or counterclaim in a lawsuit) alleging that
+ * the Work or a contribution incorporated within the Work constitutes
+ * direct or contributory patent infringement, then any patent licenses
+ * granted to You under this License for that Work shall terminate as of
+ * the date such litigation is filed.
+ *
+ * By using, modifying, or distributing the Work you indicate that you
+ * have read and understood the terms and conditions of the
+ * FreeType Project License as well as those provided in this section,
+ * and you accept them fully.
+ *
+ */
 
 
 #ifndef PSFT_H_
diff --git a/src/psaux/psglue.h b/src/psaux/psglue.h
index 5545e12..022aafb 100644
--- a/src/psaux/psglue.h
+++ b/src/psaux/psglue.h
@@ -1,39 +1,39 @@
-/***************************************************************************/
-/*                                                                         */
-/*  psglue.h                                                               */
-/*                                                                         */
-/*    Adobe's code for shared stuff (specification only).                  */
-/*                                                                         */
-/*  Copyright 2007-2013 Adobe Systems Incorporated.                        */
-/*                                                                         */
-/*  This software, and all works of authorship, whether in source or       */
-/*  object code form as indicated by the copyright notice(s) included      */
-/*  herein (collectively, the "Work") is made available, and may only be   */
-/*  used, modified, and distributed under the FreeType Project License,    */
-/*  LICENSE.TXT.  Additionally, subject to the terms and conditions of the */
-/*  FreeType Project License, each contributor to the Work hereby grants   */
-/*  to any individual or legal entity exercising permissions granted by    */
-/*  the FreeType Project License and this section (hereafter, "You" or     */
-/*  "Your") a perpetual, worldwide, non-exclusive, no-charge,              */
-/*  royalty-free, irrevocable (except as stated in this section) patent    */
-/*  license to make, have made, use, offer to sell, sell, import, and      */
-/*  otherwise transfer the Work, where such license applies only to those  */
-/*  patent claims licensable by such contributor that are necessarily      */
-/*  infringed by their contribution(s) alone or by combination of their    */
-/*  contribution(s) with the Work to which such contribution(s) was        */
-/*  submitted.  If You institute patent litigation against any entity      */
-/*  (including a cross-claim or counterclaim in a lawsuit) alleging that   */
-/*  the Work or a contribution incorporated within the Work constitutes    */
-/*  direct or contributory patent infringement, then any patent licenses   */
-/*  granted to You under this License for that Work shall terminate as of  */
-/*  the date such litigation is filed.                                     */
-/*                                                                         */
-/*  By using, modifying, or distributing the Work you indicate that you    */
-/*  have read and understood the terms and conditions of the               */
-/*  FreeType Project License as well as those provided in this section,    */
-/*  and you accept them fully.                                             */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * psglue.h
+ *
+ *   Adobe's code for shared stuff (specification only).
+ *
+ * Copyright 2007-2013 Adobe Systems Incorporated.
+ *
+ * This software, and all works of authorship, whether in source or
+ * object code form as indicated by the copyright notice(s) included
+ * herein (collectively, the "Work") is made available, and may only be
+ * used, modified, and distributed under the FreeType Project License,
+ * LICENSE.TXT.  Additionally, subject to the terms and conditions of the
+ * FreeType Project License, each contributor to the Work hereby grants
+ * to any individual or legal entity exercising permissions granted by
+ * the FreeType Project License and this section (hereafter, "You" or
+ * "Your") a perpetual, worldwide, non-exclusive, no-charge,
+ * royalty-free, irrevocable (except as stated in this section) patent
+ * license to make, have made, use, offer to sell, sell, import, and
+ * otherwise transfer the Work, where such license applies only to those
+ * patent claims licensable by such contributor that are necessarily
+ * infringed by their contribution(s) alone or by combination of their
+ * contribution(s) with the Work to which such contribution(s) was
+ * submitted.  If You institute patent litigation against any entity
+ * (including a cross-claim or counterclaim in a lawsuit) alleging that
+ * the Work or a contribution incorporated within the Work constitutes
+ * direct or contributory patent infringement, then any patent licenses
+ * granted to You under this License for that Work shall terminate as of
+ * the date such litigation is filed.
+ *
+ * By using, modifying, or distributing the Work you indicate that you
+ * have read and understood the terms and conditions of the
+ * FreeType Project License as well as those provided in this section,
+ * and you accept them fully.
+ *
+ */
 
 
 #ifndef PSGLUE_H_
diff --git a/src/psaux/pshints.c b/src/psaux/pshints.c
index 3615196..4560fb8 100644
--- a/src/psaux/pshints.c
+++ b/src/psaux/pshints.c
@@ -1,39 +1,39 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pshints.c                                                              */
-/*                                                                         */
-/*    Adobe's code for handling CFF hints (body).                          */
-/*                                                                         */
-/*  Copyright 2007-2014 Adobe Systems Incorporated.                        */
-/*                                                                         */
-/*  This software, and all works of authorship, whether in source or       */
-/*  object code form as indicated by the copyright notice(s) included      */
-/*  herein (collectively, the "Work") is made available, and may only be   */
-/*  used, modified, and distributed under the FreeType Project License,    */
-/*  LICENSE.TXT.  Additionally, subject to the terms and conditions of the */
-/*  FreeType Project License, each contributor to the Work hereby grants   */
-/*  to any individual or legal entity exercising permissions granted by    */
-/*  the FreeType Project License and this section (hereafter, "You" or     */
-/*  "Your") a perpetual, worldwide, non-exclusive, no-charge,              */
-/*  royalty-free, irrevocable (except as stated in this section) patent    */
-/*  license to make, have made, use, offer to sell, sell, import, and      */
-/*  otherwise transfer the Work, where such license applies only to those  */
-/*  patent claims licensable by such contributor that are necessarily      */
-/*  infringed by their contribution(s) alone or by combination of their    */
-/*  contribution(s) with the Work to which such contribution(s) was        */
-/*  submitted.  If You institute patent litigation against any entity      */
-/*  (including a cross-claim or counterclaim in a lawsuit) alleging that   */
-/*  the Work or a contribution incorporated within the Work constitutes    */
-/*  direct or contributory patent infringement, then any patent licenses   */
-/*  granted to You under this License for that Work shall terminate as of  */
-/*  the date such litigation is filed.                                     */
-/*                                                                         */
-/*  By using, modifying, or distributing the Work you indicate that you    */
-/*  have read and understood the terms and conditions of the               */
-/*  FreeType Project License as well as those provided in this section,    */
-/*  and you accept them fully.                                             */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * pshints.c
+ *
+ *   Adobe's code for handling CFF hints (body).
+ *
+ * Copyright 2007-2014 Adobe Systems Incorporated.
+ *
+ * This software, and all works of authorship, whether in source or
+ * object code form as indicated by the copyright notice(s) included
+ * herein (collectively, the "Work") is made available, and may only be
+ * used, modified, and distributed under the FreeType Project License,
+ * LICENSE.TXT.  Additionally, subject to the terms and conditions of the
+ * FreeType Project License, each contributor to the Work hereby grants
+ * to any individual or legal entity exercising permissions granted by
+ * the FreeType Project License and this section (hereafter, "You" or
+ * "Your") a perpetual, worldwide, non-exclusive, no-charge,
+ * royalty-free, irrevocable (except as stated in this section) patent
+ * license to make, have made, use, offer to sell, sell, import, and
+ * otherwise transfer the Work, where such license applies only to those
+ * patent claims licensable by such contributor that are necessarily
+ * infringed by their contribution(s) alone or by combination of their
+ * contribution(s) with the Work to which such contribution(s) was
+ * submitted.  If You institute patent litigation against any entity
+ * (including a cross-claim or counterclaim in a lawsuit) alleging that
+ * the Work or a contribution incorporated within the Work constitutes
+ * direct or contributory patent infringement, then any patent licenses
+ * granted to You under this License for that Work shall terminate as of
+ * the date such litigation is filed.
+ *
+ * By using, modifying, or distributing the Work you indicate that you
+ * have read and understood the terms and conditions of the
+ * FreeType Project License as well as those provided in this section,
+ * and you accept them fully.
+ *
+ */
 
 
 #include "psft.h"
@@ -45,12 +45,12 @@
 #include "psintrp.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_cf2hints
 
diff --git a/src/psaux/pshints.h b/src/psaux/pshints.h
index 92e37e9..31a8230 100644
--- a/src/psaux/pshints.h
+++ b/src/psaux/pshints.h
@@ -1,39 +1,39 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pshints.h                                                              */
-/*                                                                         */
-/*    Adobe's code for handling CFF hints (body).                          */
-/*                                                                         */
-/*  Copyright 2007-2013 Adobe Systems Incorporated.                        */
-/*                                                                         */
-/*  This software, and all works of authorship, whether in source or       */
-/*  object code form as indicated by the copyright notice(s) included      */
-/*  herein (collectively, the "Work") is made available, and may only be   */
-/*  used, modified, and distributed under the FreeType Project License,    */
-/*  LICENSE.TXT.  Additionally, subject to the terms and conditions of the */
-/*  FreeType Project License, each contributor to the Work hereby grants   */
-/*  to any individual or legal entity exercising permissions granted by    */
-/*  the FreeType Project License and this section (hereafter, "You" or     */
-/*  "Your") a perpetual, worldwide, non-exclusive, no-charge,              */
-/*  royalty-free, irrevocable (except as stated in this section) patent    */
-/*  license to make, have made, use, offer to sell, sell, import, and      */
-/*  otherwise transfer the Work, where such license applies only to those  */
-/*  patent claims licensable by such contributor that are necessarily      */
-/*  infringed by their contribution(s) alone or by combination of their    */
-/*  contribution(s) with the Work to which such contribution(s) was        */
-/*  submitted.  If You institute patent litigation against any entity      */
-/*  (including a cross-claim or counterclaim in a lawsuit) alleging that   */
-/*  the Work or a contribution incorporated within the Work constitutes    */
-/*  direct or contributory patent infringement, then any patent licenses   */
-/*  granted to You under this License for that Work shall terminate as of  */
-/*  the date such litigation is filed.                                     */
-/*                                                                         */
-/*  By using, modifying, or distributing the Work you indicate that you    */
-/*  have read and understood the terms and conditions of the               */
-/*  FreeType Project License as well as those provided in this section,    */
-/*  and you accept them fully.                                             */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * pshints.h
+ *
+ *   Adobe's code for handling CFF hints (body).
+ *
+ * Copyright 2007-2013 Adobe Systems Incorporated.
+ *
+ * This software, and all works of authorship, whether in source or
+ * object code form as indicated by the copyright notice(s) included
+ * herein (collectively, the "Work") is made available, and may only be
+ * used, modified, and distributed under the FreeType Project License,
+ * LICENSE.TXT.  Additionally, subject to the terms and conditions of the
+ * FreeType Project License, each contributor to the Work hereby grants
+ * to any individual or legal entity exercising permissions granted by
+ * the FreeType Project License and this section (hereafter, "You" or
+ * "Your") a perpetual, worldwide, non-exclusive, no-charge,
+ * royalty-free, irrevocable (except as stated in this section) patent
+ * license to make, have made, use, offer to sell, sell, import, and
+ * otherwise transfer the Work, where such license applies only to those
+ * patent claims licensable by such contributor that are necessarily
+ * infringed by their contribution(s) alone or by combination of their
+ * contribution(s) with the Work to which such contribution(s) was
+ * submitted.  If You institute patent litigation against any entity
+ * (including a cross-claim or counterclaim in a lawsuit) alleging that
+ * the Work or a contribution incorporated within the Work constitutes
+ * direct or contributory patent infringement, then any patent licenses
+ * granted to You under this License for that Work shall terminate as of
+ * the date such litigation is filed.
+ *
+ * By using, modifying, or distributing the Work you indicate that you
+ * have read and understood the terms and conditions of the
+ * FreeType Project License as well as those provided in this section,
+ * and you accept them fully.
+ *
+ */
 
 
 #ifndef PSHINT_H_
diff --git a/src/psaux/psintrp.c b/src/psaux/psintrp.c
index da5a8da..09c9802 100644
--- a/src/psaux/psintrp.c
+++ b/src/psaux/psintrp.c
@@ -1,39 +1,39 @@
-/***************************************************************************/
-/*                                                                         */
-/*  psintrp.c                                                              */
-/*                                                                         */
-/*    Adobe's CFF Interpreter (body).                                      */
-/*                                                                         */
-/*  Copyright 2007-2014 Adobe Systems Incorporated.                        */
-/*                                                                         */
-/*  This software, and all works of authorship, whether in source or       */
-/*  object code form as indicated by the copyright notice(s) included      */
-/*  herein (collectively, the "Work") is made available, and may only be   */
-/*  used, modified, and distributed under the FreeType Project License,    */
-/*  LICENSE.TXT.  Additionally, subject to the terms and conditions of the */
-/*  FreeType Project License, each contributor to the Work hereby grants   */
-/*  to any individual or legal entity exercising permissions granted by    */
-/*  the FreeType Project License and this section (hereafter, "You" or     */
-/*  "Your") a perpetual, worldwide, non-exclusive, no-charge,              */
-/*  royalty-free, irrevocable (except as stated in this section) patent    */
-/*  license to make, have made, use, offer to sell, sell, import, and      */
-/*  otherwise transfer the Work, where such license applies only to those  */
-/*  patent claims licensable by such contributor that are necessarily      */
-/*  infringed by their contribution(s) alone or by combination of their    */
-/*  contribution(s) with the Work to which such contribution(s) was        */
-/*  submitted.  If You institute patent litigation against any entity      */
-/*  (including a cross-claim or counterclaim in a lawsuit) alleging that   */
-/*  the Work or a contribution incorporated within the Work constitutes    */
-/*  direct or contributory patent infringement, then any patent licenses   */
-/*  granted to You under this License for that Work shall terminate as of  */
-/*  the date such litigation is filed.                                     */
-/*                                                                         */
-/*  By using, modifying, or distributing the Work you indicate that you    */
-/*  have read and understood the terms and conditions of the               */
-/*  FreeType Project License as well as those provided in this section,    */
-/*  and you accept them fully.                                             */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * psintrp.c
+ *
+ *   Adobe's CFF Interpreter (body).
+ *
+ * Copyright 2007-2014 Adobe Systems Incorporated.
+ *
+ * This software, and all works of authorship, whether in source or
+ * object code form as indicated by the copyright notice(s) included
+ * herein (collectively, the "Work") is made available, and may only be
+ * used, modified, and distributed under the FreeType Project License,
+ * LICENSE.TXT.  Additionally, subject to the terms and conditions of the
+ * FreeType Project License, each contributor to the Work hereby grants
+ * to any individual or legal entity exercising permissions granted by
+ * the FreeType Project License and this section (hereafter, "You" or
+ * "Your") a perpetual, worldwide, non-exclusive, no-charge,
+ * royalty-free, irrevocable (except as stated in this section) patent
+ * license to make, have made, use, offer to sell, sell, import, and
+ * otherwise transfer the Work, where such license applies only to those
+ * patent claims licensable by such contributor that are necessarily
+ * infringed by their contribution(s) alone or by combination of their
+ * contribution(s) with the Work to which such contribution(s) was
+ * submitted.  If You institute patent litigation against any entity
+ * (including a cross-claim or counterclaim in a lawsuit) alleging that
+ * the Work or a contribution incorporated within the Work constitutes
+ * direct or contributory patent infringement, then any patent licenses
+ * granted to You under this License for that Work shall terminate as of
+ * the date such litigation is filed.
+ *
+ * By using, modifying, or distributing the Work you indicate that you
+ * have read and understood the terms and conditions of the
+ * FreeType Project License as well as those provided in this section,
+ * and you accept them fully.
+ *
+ */
 
 
 #include "psft.h"
@@ -52,12 +52,12 @@
 #include "t1decode.h" /* for t1 seac    */
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_cf2interp
 
@@ -1644,16 +1644,16 @@
                     subr_no = cf2_stack_popInt( opStack );
                     arg_cnt = cf2_stack_popInt( opStack );
 
-                    /*******************************************************/
-                    /*                                                     */
-                    /* remove all operands to callothersubr from the stack */
-                    /*                                                     */
-                    /* for handled othersubrs, where we know the number of */
-                    /* arguments, we increase the stack by the value of    */
-                    /* known_othersubr_result_cnt                          */
-                    /*                                                     */
-                    /* for unhandled othersubrs the following pops adjust  */
-                    /* the stack pointer as necessary                      */
+                    /********************************************************
+                     *
+                     * remove all operands to callothersubr from the stack
+                     *
+                     * for handled othersubrs, where we know the number of
+                     * arguments, we increase the stack by the value of
+                     * known_othersubr_result_cnt
+                     *
+                     * for unhandled othersubrs the following pops adjust
+                     */
 
                     count = cf2_stack_count( opStack );
                     FT_ASSERT( (CF2_UInt)arg_cnt <= count );
diff --git a/src/psaux/psintrp.h b/src/psaux/psintrp.h
index 4790aaa..669c09c 100644
--- a/src/psaux/psintrp.h
+++ b/src/psaux/psintrp.h
@@ -1,39 +1,39 @@
-/***************************************************************************/
-/*                                                                         */
-/*  psintrp.h                                                              */
-/*                                                                         */
-/*    Adobe's CFF Interpreter (specification).                             */
-/*                                                                         */
-/*  Copyright 2007-2013 Adobe Systems Incorporated.                        */
-/*                                                                         */
-/*  This software, and all works of authorship, whether in source or       */
-/*  object code form as indicated by the copyright notice(s) included      */
-/*  herein (collectively, the "Work") is made available, and may only be   */
-/*  used, modified, and distributed under the FreeType Project License,    */
-/*  LICENSE.TXT.  Additionally, subject to the terms and conditions of the */
-/*  FreeType Project License, each contributor to the Work hereby grants   */
-/*  to any individual or legal entity exercising permissions granted by    */
-/*  the FreeType Project License and this section (hereafter, "You" or     */
-/*  "Your") a perpetual, worldwide, non-exclusive, no-charge,              */
-/*  royalty-free, irrevocable (except as stated in this section) patent    */
-/*  license to make, have made, use, offer to sell, sell, import, and      */
-/*  otherwise transfer the Work, where such license applies only to those  */
-/*  patent claims licensable by such contributor that are necessarily      */
-/*  infringed by their contribution(s) alone or by combination of their    */
-/*  contribution(s) with the Work to which such contribution(s) was        */
-/*  submitted.  If You institute patent litigation against any entity      */
-/*  (including a cross-claim or counterclaim in a lawsuit) alleging that   */
-/*  the Work or a contribution incorporated within the Work constitutes    */
-/*  direct or contributory patent infringement, then any patent licenses   */
-/*  granted to You under this License for that Work shall terminate as of  */
-/*  the date such litigation is filed.                                     */
-/*                                                                         */
-/*  By using, modifying, or distributing the Work you indicate that you    */
-/*  have read and understood the terms and conditions of the               */
-/*  FreeType Project License as well as those provided in this section,    */
-/*  and you accept them fully.                                             */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * psintrp.h
+ *
+ *   Adobe's CFF Interpreter (specification).
+ *
+ * Copyright 2007-2013 Adobe Systems Incorporated.
+ *
+ * This software, and all works of authorship, whether in source or
+ * object code form as indicated by the copyright notice(s) included
+ * herein (collectively, the "Work") is made available, and may only be
+ * used, modified, and distributed under the FreeType Project License,
+ * LICENSE.TXT.  Additionally, subject to the terms and conditions of the
+ * FreeType Project License, each contributor to the Work hereby grants
+ * to any individual or legal entity exercising permissions granted by
+ * the FreeType Project License and this section (hereafter, "You" or
+ * "Your") a perpetual, worldwide, non-exclusive, no-charge,
+ * royalty-free, irrevocable (except as stated in this section) patent
+ * license to make, have made, use, offer to sell, sell, import, and
+ * otherwise transfer the Work, where such license applies only to those
+ * patent claims licensable by such contributor that are necessarily
+ * infringed by their contribution(s) alone or by combination of their
+ * contribution(s) with the Work to which such contribution(s) was
+ * submitted.  If You institute patent litigation against any entity
+ * (including a cross-claim or counterclaim in a lawsuit) alleging that
+ * the Work or a contribution incorporated within the Work constitutes
+ * direct or contributory patent infringement, then any patent licenses
+ * granted to You under this License for that Work shall terminate as of
+ * the date such litigation is filed.
+ *
+ * By using, modifying, or distributing the Work you indicate that you
+ * have read and understood the terms and conditions of the
+ * FreeType Project License as well as those provided in this section,
+ * and you accept them fully.
+ *
+ */
 
 
 #ifndef PSINTRP_H_
diff --git a/src/psaux/psobjs.c b/src/psaux/psobjs.c
index f54bc7e..f22c5b9 100644
--- a/src/psaux/psobjs.c
+++ b/src/psaux/psobjs.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  psobjs.c                                                               */
-/*                                                                         */
-/*    Auxiliary functions for PostScript fonts (body).                     */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * psobjs.c
+ *
+ *   Auxiliary functions for PostScript fonts (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -29,12 +29,12 @@
 #include "psauxmod.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_psobjs
 
@@ -47,26 +47,29 @@
   /*************************************************************************/
   /*************************************************************************/
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    ps_table_new                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Initializes a PS_Table.                                            */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    table  :: The address of the target table.                         */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    count  :: The table size = the maximum number of elements.         */
-  /*                                                                       */
-  /*    memory :: The memory object to use for all subsequent              */
-  /*              reallocations.                                           */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   ps_table_new
+   *
+   * @Description:
+   *   Initializes a PS_Table.
+   *
+   * @InOut:
+   *   table ::
+   *     The address of the target table.
+   *
+   * @Input:
+   *   count ::
+   *     The table size = the maximum number of elements.
+   *
+   *   memory ::
+   *     The memory object to use for all subsequent
+   *     reallocations.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   ps_table_new( PS_Table   table,
                 FT_Int     count,
@@ -144,28 +147,32 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    ps_table_add                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Adds an object to a PS_Table, possibly growing its memory block.   */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    table  :: The target table.                                        */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    idx    :: The index of the object in the table.                    */
-  /*                                                                       */
-  /*    object :: The address of the object to copy in memory.             */
-  /*                                                                       */
-  /*    length :: The length in bytes of the source object.                */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.  An error is returned if a  */
-  /*    reallocation fails.                                                */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   ps_table_add
+   *
+   * @Description:
+   *   Adds an object to a PS_Table, possibly growing its memory block.
+   *
+   * @InOut:
+   *   table ::
+   *     The target table.
+   *
+   * @Input:
+   *   idx ::
+   *     The index of the object in the table.
+   *
+   *   object ::
+   *     The address of the object to copy in memory.
+   *
+   *   length ::
+   *     The length in bytes of the source object.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.  An error is returned if a
+   *   reallocation fails.
+   */
   FT_LOCAL_DEF( FT_Error )
   ps_table_add( PS_Table  table,
                 FT_Int    idx,
@@ -216,22 +223,23 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    ps_table_done                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Finalizes a PS_TableRec (i.e., reallocate it to its current        */
-  /*    cursor).                                                           */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    table :: The target table.                                         */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    This function does NOT release the heap's memory block.  It is up  */
-  /*    to the caller to clean it, or reference it in its own structures.  */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   ps_table_done
+   *
+   * @Description:
+   *   Finalizes a PS_TableRec (i.e., reallocate it to its current
+   *   cursor).
+   *
+   * @InOut:
+   *   table ::
+   *     The target table.
+   *
+   * @Note:
+   *   This function does NOT release the heap's memory block.  It is up
+   *   to the caller to clean it, or reference it in its own structures.
+   */
   FT_LOCAL_DEF( void )
   ps_table_done( PS_Table  table )
   {
@@ -498,12 +506,12 @@
   }
 
 
-  /***********************************************************************/
-  /*                                                                     */
-  /* All exported parsing routines handle leading whitespace and stop at */
-  /* the first character which isn't part of the just handled token.     */
-  /*                                                                     */
-  /***********************************************************************/
+  /************************************************************************
+   *
+   * All exported parsing routines handle leading whitespace and stop at
+   * the first character which isn't part of the just handled token.
+   *
+   */
 
 
   FT_LOCAL_DEF( void )
@@ -1509,26 +1517,31 @@
   /*************************************************************************/
   /*************************************************************************/
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    t1_builder_init                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Initializes a given glyph builder.                                 */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    builder :: A pointer to the glyph builder to initialize.           */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face    :: The current face object.                                */
-  /*                                                                       */
-  /*    size    :: The current size object.                                */
-  /*                                                                       */
-  /*    glyph   :: The current glyph object.                               */
-  /*                                                                       */
-  /*    hinting :: Whether hinting should be applied.                      */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   t1_builder_init
+   *
+   * @Description:
+   *   Initializes a given glyph builder.
+   *
+   * @InOut:
+   *   builder ::
+   *     A pointer to the glyph builder to initialize.
+   *
+   * @Input:
+   *   face ::
+   *     The current face object.
+   *
+   *   size ::
+   *     The current size object.
+   *
+   *   glyph ::
+   *     The current glyph object.
+   *
+   *   hinting ::
+   *     Whether hinting should be applied.
+   */
   FT_LOCAL_DEF( void )
   t1_builder_init( T1_Builder    builder,
                    FT_Face       face,
@@ -1572,19 +1585,20 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    t1_builder_done                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Finalizes a given glyph builder.  Its contents can still be used   */
-  /*    after the call, but the function saves important information       */
-  /*    within the corresponding glyph slot.                               */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    builder :: A pointer to the glyph builder to finalize.             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   t1_builder_done
+   *
+   * @Description:
+   *   Finalizes a given glyph builder.  Its contents can still be used
+   *   after the call, but the function saves important information
+   *   within the corresponding glyph slot.
+   *
+   * @Input:
+   *   builder ::
+   *     A pointer to the glyph builder to finalize.
+   */
   FT_LOCAL_DEF( void )
   t1_builder_done( T1_Builder  builder )
   {
@@ -1769,26 +1783,31 @@
   /*************************************************************************/
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    cff_builder_init                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Initializes a given glyph builder.                                 */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    builder :: A pointer to the glyph builder to initialize.           */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face    :: The current face object.                                */
-  /*                                                                       */
-  /*    size    :: The current size object.                                */
-  /*                                                                       */
-  /*    glyph   :: The current glyph object.                               */
-  /*                                                                       */
-  /*    hinting :: Whether hinting is active.                              */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   cff_builder_init
+   *
+   * @Description:
+   *   Initializes a given glyph builder.
+   *
+   * @InOut:
+   *   builder ::
+   *     A pointer to the glyph builder to initialize.
+   *
+   * @Input:
+   *   face ::
+   *     The current face object.
+   *
+   *   size ::
+   *     The current size object.
+   *
+   *   glyph ::
+   *     The current glyph object.
+   *
+   *   hinting ::
+   *     Whether hinting is active.
+   */
   FT_LOCAL_DEF( void )
   cff_builder_init( CFF_Builder*   builder,
                     TT_Face        face,
@@ -1841,19 +1860,20 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    cff_builder_done                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Finalizes a given glyph builder.  Its contents can still be used   */
-  /*    after the call, but the function saves important information       */
-  /*    within the corresponding glyph slot.                               */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    builder :: A pointer to the glyph builder to finalize.             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   cff_builder_done
+   *
+   * @Description:
+   *   Finalizes a given glyph builder.  Its contents can still be used
+   *   after the call, but the function saves important information
+   *   within the corresponding glyph slot.
+   *
+   * @Input:
+   *   builder ::
+   *     A pointer to the glyph builder to finalize.
+   */
   FT_LOCAL_DEF( void )
   cff_builder_done( CFF_Builder*  builder )
   {
@@ -2033,26 +2053,31 @@
   /*************************************************************************/
   /*************************************************************************/
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    ps_builder_init                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Initializes a given glyph builder.                                 */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    builder :: A pointer to the glyph builder to initialize.           */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face    :: The current face object.                                */
-  /*                                                                       */
-  /*    size    :: The current size object.                                */
-  /*                                                                       */
-  /*    glyph   :: The current glyph object.                               */
-  /*                                                                       */
-  /*    hinting :: Whether hinting should be applied.                      */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   ps_builder_init
+   *
+   * @Description:
+   *   Initializes a given glyph builder.
+   *
+   * @InOut:
+   *   builder ::
+   *     A pointer to the glyph builder to initialize.
+   *
+   * @Input:
+   *   face ::
+   *     The current face object.
+   *
+   *   size ::
+   *     The current size object.
+   *
+   *   glyph ::
+   *     The current glyph object.
+   *
+   *   hinting ::
+   *     Whether hinting should be applied.
+   */
   FT_LOCAL_DEF( void )
   ps_builder_init( PS_Builder*  ps_builder,
                    void*        builder,
@@ -2116,19 +2141,20 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    ps_builder_done                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Finalizes a given glyph builder.  Its contents can still be used   */
-  /*    after the call, but the function saves important information       */
-  /*    within the corresponding glyph slot.                               */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    builder :: A pointer to the glyph builder to finalize.             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   ps_builder_done
+   *
+   * @Description:
+   *   Finalizes a given glyph builder.  Its contents can still be used
+   *   after the call, but the function saves important information
+   *   within the corresponding glyph slot.
+   *
+   * @Input:
+   *   builder ::
+   *     A pointer to the glyph builder to finalize.
+   */
   FT_LOCAL_DEF( void )
   ps_builder_done( PS_Builder*  builder )
   {
@@ -2336,23 +2362,26 @@
   /*************************************************************************/
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    ps_decoder_init                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Creates a wrapper decoder for use in the combined                  */
-  /*    Type 1 / CFF interpreter.                                          */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    ps_decoder :: A pointer to the decoder to initialize.              */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    decoder    :: A pointer to the original decoder.                   */
-  /*                                                                       */
-  /*    is_t1      :: Flag indicating Type 1 or CFF                        */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   ps_decoder_init
+   *
+   * @Description:
+   *   Creates a wrapper decoder for use in the combined
+   *   Type 1 / CFF interpreter.
+   *
+   * @InOut:
+   *   ps_decoder ::
+   *     A pointer to the decoder to initialize.
+   *
+   * @Input:
+   *   decoder ::
+   *     A pointer to the original decoder.
+   *
+   *   is_t1 ::
+   *     Flag indicating Type 1 or CFF
+   */
   FT_LOCAL_DEF( void )
   ps_decoder_init( PS_Decoder*  ps_decoder,
                    void*        decoder,
diff --git a/src/psaux/psobjs.h b/src/psaux/psobjs.h
index 8e0fe5f..6184193 100644
--- a/src/psaux/psobjs.h
+++ b/src/psaux/psobjs.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  psobjs.h                                                               */
-/*                                                                         */
-/*    Auxiliary functions for PostScript fonts (specification).            */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * psobjs.h
+ *
+ *   Auxiliary functions for PostScript fonts (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef PSOBJS_H_
diff --git a/src/psaux/psread.c b/src/psaux/psread.c
index 719863c..6f3a361 100644
--- a/src/psaux/psread.c
+++ b/src/psaux/psread.c
@@ -1,39 +1,39 @@
-/***************************************************************************/
-/*                                                                         */
-/*  psread.c                                                               */
-/*                                                                         */
-/*    Adobe's code for stream handling (body).                             */
-/*                                                                         */
-/*  Copyright 2007-2013 Adobe Systems Incorporated.                        */
-/*                                                                         */
-/*  This software, and all works of authorship, whether in source or       */
-/*  object code form as indicated by the copyright notice(s) included      */
-/*  herein (collectively, the "Work") is made available, and may only be   */
-/*  used, modified, and distributed under the FreeType Project License,    */
-/*  LICENSE.TXT.  Additionally, subject to the terms and conditions of the */
-/*  FreeType Project License, each contributor to the Work hereby grants   */
-/*  to any individual or legal entity exercising permissions granted by    */
-/*  the FreeType Project License and this section (hereafter, "You" or     */
-/*  "Your") a perpetual, worldwide, non-exclusive, no-charge,              */
-/*  royalty-free, irrevocable (except as stated in this section) patent    */
-/*  license to make, have made, use, offer to sell, sell, import, and      */
-/*  otherwise transfer the Work, where such license applies only to those  */
-/*  patent claims licensable by such contributor that are necessarily      */
-/*  infringed by their contribution(s) alone or by combination of their    */
-/*  contribution(s) with the Work to which such contribution(s) was        */
-/*  submitted.  If You institute patent litigation against any entity      */
-/*  (including a cross-claim or counterclaim in a lawsuit) alleging that   */
-/*  the Work or a contribution incorporated within the Work constitutes    */
-/*  direct or contributory patent infringement, then any patent licenses   */
-/*  granted to You under this License for that Work shall terminate as of  */
-/*  the date such litigation is filed.                                     */
-/*                                                                         */
-/*  By using, modifying, or distributing the Work you indicate that you    */
-/*  have read and understood the terms and conditions of the               */
-/*  FreeType Project License as well as those provided in this section,    */
-/*  and you accept them fully.                                             */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * psread.c
+ *
+ *   Adobe's code for stream handling (body).
+ *
+ * Copyright 2007-2013 Adobe Systems Incorporated.
+ *
+ * This software, and all works of authorship, whether in source or
+ * object code form as indicated by the copyright notice(s) included
+ * herein (collectively, the "Work") is made available, and may only be
+ * used, modified, and distributed under the FreeType Project License,
+ * LICENSE.TXT.  Additionally, subject to the terms and conditions of the
+ * FreeType Project License, each contributor to the Work hereby grants
+ * to any individual or legal entity exercising permissions granted by
+ * the FreeType Project License and this section (hereafter, "You" or
+ * "Your") a perpetual, worldwide, non-exclusive, no-charge,
+ * royalty-free, irrevocable (except as stated in this section) patent
+ * license to make, have made, use, offer to sell, sell, import, and
+ * otherwise transfer the Work, where such license applies only to those
+ * patent claims licensable by such contributor that are necessarily
+ * infringed by their contribution(s) alone or by combination of their
+ * contribution(s) with the Work to which such contribution(s) was
+ * submitted.  If You institute patent litigation against any entity
+ * (including a cross-claim or counterclaim in a lawsuit) alleging that
+ * the Work or a contribution incorporated within the Work constitutes
+ * direct or contributory patent infringement, then any patent licenses
+ * granted to You under this License for that Work shall terminate as of
+ * the date such litigation is filed.
+ *
+ * By using, modifying, or distributing the Work you indicate that you
+ * have read and understood the terms and conditions of the
+ * FreeType Project License as well as those provided in this section,
+ * and you accept them fully.
+ *
+ */
 
 
 #include "psft.h"
diff --git a/src/psaux/psread.h b/src/psaux/psread.h
index 464b29b..9e55fe0 100644
--- a/src/psaux/psread.h
+++ b/src/psaux/psread.h
@@ -1,39 +1,39 @@
-/***************************************************************************/
-/*                                                                         */
-/*  psread.h                                                               */
-/*                                                                         */
-/*    Adobe's code for stream handling (specification).                    */
-/*                                                                         */
-/*  Copyright 2007-2013 Adobe Systems Incorporated.                        */
-/*                                                                         */
-/*  This software, and all works of authorship, whether in source or       */
-/*  object code form as indicated by the copyright notice(s) included      */
-/*  herein (collectively, the "Work") is made available, and may only be   */
-/*  used, modified, and distributed under the FreeType Project License,    */
-/*  LICENSE.TXT.  Additionally, subject to the terms and conditions of the */
-/*  FreeType Project License, each contributor to the Work hereby grants   */
-/*  to any individual or legal entity exercising permissions granted by    */
-/*  the FreeType Project License and this section (hereafter, "You" or     */
-/*  "Your") a perpetual, worldwide, non-exclusive, no-charge,              */
-/*  royalty-free, irrevocable (except as stated in this section) patent    */
-/*  license to make, have made, use, offer to sell, sell, import, and      */
-/*  otherwise transfer the Work, where such license applies only to those  */
-/*  patent claims licensable by such contributor that are necessarily      */
-/*  infringed by their contribution(s) alone or by combination of their    */
-/*  contribution(s) with the Work to which such contribution(s) was        */
-/*  submitted.  If You institute patent litigation against any entity      */
-/*  (including a cross-claim or counterclaim in a lawsuit) alleging that   */
-/*  the Work or a contribution incorporated within the Work constitutes    */
-/*  direct or contributory patent infringement, then any patent licenses   */
-/*  granted to You under this License for that Work shall terminate as of  */
-/*  the date such litigation is filed.                                     */
-/*                                                                         */
-/*  By using, modifying, or distributing the Work you indicate that you    */
-/*  have read and understood the terms and conditions of the               */
-/*  FreeType Project License as well as those provided in this section,    */
-/*  and you accept them fully.                                             */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * psread.h
+ *
+ *   Adobe's code for stream handling (specification).
+ *
+ * Copyright 2007-2013 Adobe Systems Incorporated.
+ *
+ * This software, and all works of authorship, whether in source or
+ * object code form as indicated by the copyright notice(s) included
+ * herein (collectively, the "Work") is made available, and may only be
+ * used, modified, and distributed under the FreeType Project License,
+ * LICENSE.TXT.  Additionally, subject to the terms and conditions of the
+ * FreeType Project License, each contributor to the Work hereby grants
+ * to any individual or legal entity exercising permissions granted by
+ * the FreeType Project License and this section (hereafter, "You" or
+ * "Your") a perpetual, worldwide, non-exclusive, no-charge,
+ * royalty-free, irrevocable (except as stated in this section) patent
+ * license to make, have made, use, offer to sell, sell, import, and
+ * otherwise transfer the Work, where such license applies only to those
+ * patent claims licensable by such contributor that are necessarily
+ * infringed by their contribution(s) alone or by combination of their
+ * contribution(s) with the Work to which such contribution(s) was
+ * submitted.  If You institute patent litigation against any entity
+ * (including a cross-claim or counterclaim in a lawsuit) alleging that
+ * the Work or a contribution incorporated within the Work constitutes
+ * direct or contributory patent infringement, then any patent licenses
+ * granted to You under this License for that Work shall terminate as of
+ * the date such litigation is filed.
+ *
+ * By using, modifying, or distributing the Work you indicate that you
+ * have read and understood the terms and conditions of the
+ * FreeType Project License as well as those provided in this section,
+ * and you accept them fully.
+ *
+ */
 
 
 #ifndef PSREAD_H_
diff --git a/src/psaux/psstack.c b/src/psaux/psstack.c
index 69d0633..d49cf25 100644
--- a/src/psaux/psstack.c
+++ b/src/psaux/psstack.c
@@ -1,39 +1,39 @@
-/***************************************************************************/
-/*                                                                         */
-/*  psstack.c                                                              */
-/*                                                                         */
-/*    Adobe's code for emulating a CFF stack (body).                       */
-/*                                                                         */
-/*  Copyright 2007-2013 Adobe Systems Incorporated.                        */
-/*                                                                         */
-/*  This software, and all works of authorship, whether in source or       */
-/*  object code form as indicated by the copyright notice(s) included      */
-/*  herein (collectively, the "Work") is made available, and may only be   */
-/*  used, modified, and distributed under the FreeType Project License,    */
-/*  LICENSE.TXT.  Additionally, subject to the terms and conditions of the */
-/*  FreeType Project License, each contributor to the Work hereby grants   */
-/*  to any individual or legal entity exercising permissions granted by    */
-/*  the FreeType Project License and this section (hereafter, "You" or     */
-/*  "Your") a perpetual, worldwide, non-exclusive, no-charge,              */
-/*  royalty-free, irrevocable (except as stated in this section) patent    */
-/*  license to make, have made, use, offer to sell, sell, import, and      */
-/*  otherwise transfer the Work, where such license applies only to those  */
-/*  patent claims licensable by such contributor that are necessarily      */
-/*  infringed by their contribution(s) alone or by combination of their    */
-/*  contribution(s) with the Work to which such contribution(s) was        */
-/*  submitted.  If You institute patent litigation against any entity      */
-/*  (including a cross-claim or counterclaim in a lawsuit) alleging that   */
-/*  the Work or a contribution incorporated within the Work constitutes    */
-/*  direct or contributory patent infringement, then any patent licenses   */
-/*  granted to You under this License for that Work shall terminate as of  */
-/*  the date such litigation is filed.                                     */
-/*                                                                         */
-/*  By using, modifying, or distributing the Work you indicate that you    */
-/*  have read and understood the terms and conditions of the               */
-/*  FreeType Project License as well as those provided in this section,    */
-/*  and you accept them fully.                                             */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * psstack.c
+ *
+ *   Adobe's code for emulating a CFF stack (body).
+ *
+ * Copyright 2007-2013 Adobe Systems Incorporated.
+ *
+ * This software, and all works of authorship, whether in source or
+ * object code form as indicated by the copyright notice(s) included
+ * herein (collectively, the "Work") is made available, and may only be
+ * used, modified, and distributed under the FreeType Project License,
+ * LICENSE.TXT.  Additionally, subject to the terms and conditions of the
+ * FreeType Project License, each contributor to the Work hereby grants
+ * to any individual or legal entity exercising permissions granted by
+ * the FreeType Project License and this section (hereafter, "You" or
+ * "Your") a perpetual, worldwide, non-exclusive, no-charge,
+ * royalty-free, irrevocable (except as stated in this section) patent
+ * license to make, have made, use, offer to sell, sell, import, and
+ * otherwise transfer the Work, where such license applies only to those
+ * patent claims licensable by such contributor that are necessarily
+ * infringed by their contribution(s) alone or by combination of their
+ * contribution(s) with the Work to which such contribution(s) was
+ * submitted.  If You institute patent litigation against any entity
+ * (including a cross-claim or counterclaim in a lawsuit) alleging that
+ * the Work or a contribution incorporated within the Work constitutes
+ * direct or contributory patent infringement, then any patent licenses
+ * granted to You under this License for that Work shall terminate as of
+ * the date such litigation is filed.
+ *
+ * By using, modifying, or distributing the Work you indicate that you
+ * have read and understood the terms and conditions of the
+ * FreeType Project License as well as those provided in this section,
+ * and you accept them fully.
+ *
+ */
 
 
 #include "psft.h"
diff --git a/src/psaux/psstack.h b/src/psaux/psstack.h
index 38f7b41..18cd39b 100644
--- a/src/psaux/psstack.h
+++ b/src/psaux/psstack.h
@@ -1,39 +1,39 @@
-/***************************************************************************/
-/*                                                                         */
-/*  psstack.h                                                              */
-/*                                                                         */
-/*    Adobe's code for emulating a CFF stack (specification).              */
-/*                                                                         */
-/*  Copyright 2007-2013 Adobe Systems Incorporated.                        */
-/*                                                                         */
-/*  This software, and all works of authorship, whether in source or       */
-/*  object code form as indicated by the copyright notice(s) included      */
-/*  herein (collectively, the "Work") is made available, and may only be   */
-/*  used, modified, and distributed under the FreeType Project License,    */
-/*  LICENSE.TXT.  Additionally, subject to the terms and conditions of the */
-/*  FreeType Project License, each contributor to the Work hereby grants   */
-/*  to any individual or legal entity exercising permissions granted by    */
-/*  the FreeType Project License and this section (hereafter, "You" or     */
-/*  "Your") a perpetual, worldwide, non-exclusive, no-charge,              */
-/*  royalty-free, irrevocable (except as stated in this section) patent    */
-/*  license to make, have made, use, offer to sell, sell, import, and      */
-/*  otherwise transfer the Work, where such license applies only to those  */
-/*  patent claims licensable by such contributor that are necessarily      */
-/*  infringed by their contribution(s) alone or by combination of their    */
-/*  contribution(s) with the Work to which such contribution(s) was        */
-/*  submitted.  If You institute patent litigation against any entity      */
-/*  (including a cross-claim or counterclaim in a lawsuit) alleging that   */
-/*  the Work or a contribution incorporated within the Work constitutes    */
-/*  direct or contributory patent infringement, then any patent licenses   */
-/*  granted to You under this License for that Work shall terminate as of  */
-/*  the date such litigation is filed.                                     */
-/*                                                                         */
-/*  By using, modifying, or distributing the Work you indicate that you    */
-/*  have read and understood the terms and conditions of the               */
-/*  FreeType Project License as well as those provided in this section,    */
-/*  and you accept them fully.                                             */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * psstack.h
+ *
+ *   Adobe's code for emulating a CFF stack (specification).
+ *
+ * Copyright 2007-2013 Adobe Systems Incorporated.
+ *
+ * This software, and all works of authorship, whether in source or
+ * object code form as indicated by the copyright notice(s) included
+ * herein (collectively, the "Work") is made available, and may only be
+ * used, modified, and distributed under the FreeType Project License,
+ * LICENSE.TXT.  Additionally, subject to the terms and conditions of the
+ * FreeType Project License, each contributor to the Work hereby grants
+ * to any individual or legal entity exercising permissions granted by
+ * the FreeType Project License and this section (hereafter, "You" or
+ * "Your") a perpetual, worldwide, non-exclusive, no-charge,
+ * royalty-free, irrevocable (except as stated in this section) patent
+ * license to make, have made, use, offer to sell, sell, import, and
+ * otherwise transfer the Work, where such license applies only to those
+ * patent claims licensable by such contributor that are necessarily
+ * infringed by their contribution(s) alone or by combination of their
+ * contribution(s) with the Work to which such contribution(s) was
+ * submitted.  If You institute patent litigation against any entity
+ * (including a cross-claim or counterclaim in a lawsuit) alleging that
+ * the Work or a contribution incorporated within the Work constitutes
+ * direct or contributory patent infringement, then any patent licenses
+ * granted to You under this License for that Work shall terminate as of
+ * the date such litigation is filed.
+ *
+ * By using, modifying, or distributing the Work you indicate that you
+ * have read and understood the terms and conditions of the
+ * FreeType Project License as well as those provided in this section,
+ * and you accept them fully.
+ *
+ */
 
 
 #ifndef PSSTACK_H_
diff --git a/src/psaux/pstypes.h b/src/psaux/pstypes.h
index dfbaa3d..041287e 100644
--- a/src/psaux/pstypes.h
+++ b/src/psaux/pstypes.h
@@ -1,39 +1,39 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pstypes.h                                                              */
-/*                                                                         */
-/*    Adobe's code for defining data types (specification only).           */
-/*                                                                         */
-/*  Copyright 2011-2013 Adobe Systems Incorporated.                        */
-/*                                                                         */
-/*  This software, and all works of authorship, whether in source or       */
-/*  object code form as indicated by the copyright notice(s) included      */
-/*  herein (collectively, the "Work") is made available, and may only be   */
-/*  used, modified, and distributed under the FreeType Project License,    */
-/*  LICENSE.TXT.  Additionally, subject to the terms and conditions of the */
-/*  FreeType Project License, each contributor to the Work hereby grants   */
-/*  to any individual or legal entity exercising permissions granted by    */
-/*  the FreeType Project License and this section (hereafter, "You" or     */
-/*  "Your") a perpetual, worldwide, non-exclusive, no-charge,              */
-/*  royalty-free, irrevocable (except as stated in this section) patent    */
-/*  license to make, have made, use, offer to sell, sell, import, and      */
-/*  otherwise transfer the Work, where such license applies only to those  */
-/*  patent claims licensable by such contributor that are necessarily      */
-/*  infringed by their contribution(s) alone or by combination of their    */
-/*  contribution(s) with the Work to which such contribution(s) was        */
-/*  submitted.  If You institute patent litigation against any entity      */
-/*  (including a cross-claim or counterclaim in a lawsuit) alleging that   */
-/*  the Work or a contribution incorporated within the Work constitutes    */
-/*  direct or contributory patent infringement, then any patent licenses   */
-/*  granted to You under this License for that Work shall terminate as of  */
-/*  the date such litigation is filed.                                     */
-/*                                                                         */
-/*  By using, modifying, or distributing the Work you indicate that you    */
-/*  have read and understood the terms and conditions of the               */
-/*  FreeType Project License as well as those provided in this section,    */
-/*  and you accept them fully.                                             */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * pstypes.h
+ *
+ *   Adobe's code for defining data types (specification only).
+ *
+ * Copyright 2011-2013 Adobe Systems Incorporated.
+ *
+ * This software, and all works of authorship, whether in source or
+ * object code form as indicated by the copyright notice(s) included
+ * herein (collectively, the "Work") is made available, and may only be
+ * used, modified, and distributed under the FreeType Project License,
+ * LICENSE.TXT.  Additionally, subject to the terms and conditions of the
+ * FreeType Project License, each contributor to the Work hereby grants
+ * to any individual or legal entity exercising permissions granted by
+ * the FreeType Project License and this section (hereafter, "You" or
+ * "Your") a perpetual, worldwide, non-exclusive, no-charge,
+ * royalty-free, irrevocable (except as stated in this section) patent
+ * license to make, have made, use, offer to sell, sell, import, and
+ * otherwise transfer the Work, where such license applies only to those
+ * patent claims licensable by such contributor that are necessarily
+ * infringed by their contribution(s) alone or by combination of their
+ * contribution(s) with the Work to which such contribution(s) was
+ * submitted.  If You institute patent litigation against any entity
+ * (including a cross-claim or counterclaim in a lawsuit) alleging that
+ * the Work or a contribution incorporated within the Work constitutes
+ * direct or contributory patent infringement, then any patent licenses
+ * granted to You under this License for that Work shall terminate as of
+ * the date such litigation is filed.
+ *
+ * By using, modifying, or distributing the Work you indicate that you
+ * have read and understood the terms and conditions of the
+ * FreeType Project License as well as those provided in this section,
+ * and you accept them fully.
+ *
+ */
 
 
 #ifndef PSTYPES_H_
diff --git a/src/psaux/t1cmap.c b/src/psaux/t1cmap.c
index 112a789..0c9f916 100644
--- a/src/psaux/t1cmap.c
+++ b/src/psaux/t1cmap.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  t1cmap.c                                                               */
-/*                                                                         */
-/*    Type 1 character map support (body).                                 */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * t1cmap.c
+ *
+ *   Type 1 character map support (body).
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include "t1cmap.h"
diff --git a/src/psaux/t1cmap.h b/src/psaux/t1cmap.h
index 4308e31..277419f 100644
--- a/src/psaux/t1cmap.h
+++ b/src/psaux/t1cmap.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  t1cmap.h                                                               */
-/*                                                                         */
-/*    Type 1 character map support (specification).                        */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * t1cmap.h
+ *
+ *   Type 1 character map support (specification).
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef T1CMAP_H_
diff --git a/src/psaux/t1decode.c b/src/psaux/t1decode.c
index 6ad1456..d05c9e2 100644
--- a/src/psaux/t1decode.c
+++ b/src/psaux/t1decode.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  t1decode.c                                                             */
-/*                                                                         */
-/*    PostScript Type 1 decoding routines (body).                          */
-/*                                                                         */
-/*  Copyright 2000-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * t1decode.c
+ *
+ *   PostScript Type 1 decoding routines (body).
+ *
+ * Copyright 2000-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -31,12 +31,12 @@
 /* ensure proper sign extension */
 #define Fix2Int( f )  ( (FT_Int)(FT_Short)( (f) >> 16 ) )
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_t1decode
 
@@ -109,24 +109,26 @@
   };
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    t1_lookup_glyph_by_stdcharcode_ps                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Looks up a given glyph by its StandardEncoding charcode.  Used to  */
-  /*    implement the SEAC Type 1 operator in the Adobe engine             */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face     :: The current face object.                               */
-  /*                                                                       */
-  /*    charcode :: The character code to look for.                        */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    A glyph index in the font face.  Returns -1 if the corresponding   */
-  /*    glyph wasn't found.                                                */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   t1_lookup_glyph_by_stdcharcode_ps
+   *
+   * @Description:
+   *   Looks up a given glyph by its StandardEncoding charcode.  Used to
+   *   implement the SEAC Type 1 operator in the Adobe engine
+   *
+   * @Input:
+   *   face ::
+   *     The current face object.
+   *
+   *   charcode ::
+   *     The character code to look for.
+   *
+   * @Return:
+   *   A glyph index in the font face.  Returns -1 if the corresponding
+   *   glyph wasn't found.
+   */
   FT_LOCAL_DEF( FT_Int )
   t1_lookup_glyph_by_stdcharcode_ps( PS_Decoder*  decoder,
                                      FT_Int       charcode )
@@ -159,24 +161,26 @@
 
 
 #ifdef T1_CONFIG_OPTION_OLD_ENGINE
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    t1_lookup_glyph_by_stdcharcode                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Looks up a given glyph by its StandardEncoding charcode.  Used to  */
-  /*    implement the SEAC Type 1 operator.                                */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face     :: The current face object.                               */
-  /*                                                                       */
-  /*    charcode :: The character code to look for.                        */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    A glyph index in the font face.  Returns -1 if the corresponding   */
-  /*    glyph wasn't found.                                                */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   t1_lookup_glyph_by_stdcharcode
+   *
+   * @Description:
+   *   Looks up a given glyph by its StandardEncoding charcode.  Used to
+   *   implement the SEAC Type 1 operator.
+   *
+   * @Input:
+   *   face ::
+   *     The current face object.
+   *
+   *   charcode ::
+   *     The character code to look for.
+   *
+   * @Return:
+   *   A glyph index in the font face.  Returns -1 if the corresponding
+   *   glyph wasn't found.
+   */
   static FT_Int
   t1_lookup_glyph_by_stdcharcode( T1_Decoder  decoder,
                                   FT_Int      charcode )
@@ -217,30 +221,36 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    t1operator_seac                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Implements the `seac' Type 1 operator for a Type 1 decoder.        */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    decoder :: The current CID decoder.                                */
-  /*                                                                       */
-  /*    asb     :: The accent's side bearing.                              */
-  /*                                                                       */
-  /*    adx     :: The horizontal offset of the accent.                    */
-  /*                                                                       */
-  /*    ady     :: The vertical offset of the accent.                      */
-  /*                                                                       */
-  /*    bchar   :: The base character's StandardEncoding charcode.         */
-  /*                                                                       */
-  /*    achar   :: The accent character's StandardEncoding charcode.       */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   t1operator_seac
+   *
+   * @Description:
+   *   Implements the `seac' Type 1 operator for a Type 1 decoder.
+   *
+   * @Input:
+   *   decoder ::
+   *     The current CID decoder.
+   *
+   *   asb ::
+   *     The accent's side bearing.
+   *
+   *   adx ::
+   *     The horizontal offset of the accent.
+   *
+   *   ady ::
+   *     The vertical offset of the accent.
+   *
+   *   bchar ::
+   *     The base character's StandardEncoding charcode.
+   *
+   *   achar ::
+   *     The accent character's StandardEncoding charcode.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   static FT_Error
   t1operator_seac( T1_Decoder  decoder,
                    FT_Pos      asb,
@@ -399,24 +409,27 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    t1_decoder_parse_charstrings                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Parses a given Type 1 charstrings program.                         */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    decoder         :: The current Type 1 decoder.                     */
-  /*                                                                       */
-  /*    charstring_base :: The base address of the charstring stream.      */
-  /*                                                                       */
-  /*    charstring_len  :: The length in bytes of the charstring stream.   */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   t1_decoder_parse_charstrings
+   *
+   * @Description:
+   *   Parses a given Type 1 charstrings program.
+   *
+   * @Input:
+   *   decoder ::
+   *     The current Type 1 decoder.
+   *
+   *   charstring_base ::
+   *     The base address of the charstring stream.
+   *
+   *   charstring_len ::
+   *     The length in bytes of the charstring stream.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   t1_decoder_parse_charstrings( T1_Decoder  decoder,
                                 FT_Byte*    charstring_base,
@@ -503,11 +516,11 @@
       }
 #endif
 
-      /*********************************************************************/
-      /*                                                                   */
-      /* Decode operator or operand                                        */
-      /*                                                                   */
-      /*                                                                   */
+      /**********************************************************************
+       *
+       * Decode operator or operand
+       *
+       */
 
       /* first of all, decompress operator or value */
       switch ( *ip++ )
@@ -710,11 +723,11 @@
         large_int = FALSE;
       }
 
-      /*********************************************************************/
-      /*                                                                   */
-      /*  Push value on stack, or process operator                         */
-      /*                                                                   */
-      /*                                                                   */
+      /**********************************************************************
+       *
+       * Push value on stack, or process operator
+       *
+       */
       if ( op == op_none )
       {
         if ( top - decoder->stack >= T1_MAX_CHARSTRINGS_OPERANDS )
@@ -752,16 +765,16 @@
         subr_no = Fix2Int( top[1] );
         arg_cnt = Fix2Int( top[0] );
 
-        /***********************************************************/
-        /*                                                         */
-        /* remove all operands to callothersubr from the stack     */
-        /*                                                         */
-        /* for handled othersubrs, where we know the number of     */
-        /* arguments, we increase the stack by the value of        */
-        /* known_othersubr_result_cnt                              */
-        /*                                                         */
-        /* for unhandled othersubrs the following pops adjust the  */
-        /* stack pointer as necessary                              */
+        /************************************************************
+         *
+         * remove all operands to callothersubr from the stack
+         *
+         * for handled othersubrs, where we know the number of
+         * arguments, we increase the stack by the value of
+         * known_othersubr_result_cnt
+         *
+         * for unhandled othersubrs the following pops adjust the
+         */
 
         if ( arg_cnt > top - decoder->stack )
           goto Stack_Underflow;
@@ -1640,24 +1653,27 @@
 
 #else /* T1_CONFIG_OPTION_OLD_ENGINE */
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    t1_decoder_parse_metrics                                           */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Parses a given Type 1 charstrings program to extract width         */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    decoder         :: The current Type 1 decoder.                     */
-  /*                                                                       */
-  /*    charstring_base :: The base address of the charstring stream.      */
-  /*                                                                       */
-  /*    charstring_len  :: The length in bytes of the charstring stream.   */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   t1_decoder_parse_metrics
+   *
+   * @Description:
+   *   Parses a given Type 1 charstrings program to extract width
+   *
+   * @Input:
+   *   decoder ::
+   *     The current Type 1 decoder.
+   *
+   *   charstring_base ::
+   *     The base address of the charstring stream.
+   *
+   *   charstring_len ::
+   *     The length in bytes of the charstring stream.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   t1_decoder_parse_metrics( T1_Decoder  decoder,
                             FT_Byte*    charstring_base,
@@ -1703,11 +1719,11 @@
       }
 #endif
 
-      /*********************************************************************/
-      /*                                                                   */
-      /* Decode operator or operand                                        */
-      /*                                                                   */
-      /*                                                                   */
+      /**********************************************************************
+       *
+       * Decode operator or operand
+       *
+       */
 
       /* first of all, decompress operator or value */
       switch ( *ip++ )
@@ -1817,11 +1833,11 @@
         }
       }
 
-      /*********************************************************************/
-      /*                                                                   */
-      /*  Push value on stack, or process operator                         */
-      /*                                                                   */
-      /*                                                                   */
+      /**********************************************************************
+       *
+       * Push value on stack, or process operator
+       *
+       */
       if ( op == op_none )
       {
         if ( top - decoder->stack >= T1_MAX_CHARSTRINGS_OPERANDS )
diff --git a/src/psaux/t1decode.h b/src/psaux/t1decode.h
index 1d9718d..62956ac 100644
--- a/src/psaux/t1decode.h
+++ b/src/psaux/t1decode.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  t1decode.h                                                             */
-/*                                                                         */
-/*    PostScript Type 1 decoding routines (specification).                 */
-/*                                                                         */
-/*  Copyright 2000-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * t1decode.h
+ *
+ *   PostScript Type 1 decoding routines (specification).
+ *
+ * Copyright 2000-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef T1DECODE_H_
diff --git a/src/pshinter/pshalgo.c b/src/pshinter/pshalgo.c
index b98077c..925b3d6 100644
--- a/src/pshinter/pshalgo.c
+++ b/src/pshinter/pshalgo.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pshalgo.c                                                              */
-/*                                                                         */
-/*    PostScript hinting algorithm (body).                                 */
-/*                                                                         */
-/*  Copyright 2001-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used        */
-/*  modified and distributed under the terms of the FreeType project       */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * pshalgo.c
+ *
+ *   PostScript hinting algorithm (body).
+ *
+ * Copyright 2001-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used
+ * modified and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -658,8 +658,8 @@
 #if 0  /* not used for now, experimental */
 
  /*
-  *  A variant to perform "light" hinting (i.e. FT_RENDER_MODE_LIGHT)
-  *  of stems
+  * A variant to perform "light" hinting (i.e. FT_RENDER_MODE_LIGHT)
+  * of stems
   */
   static void
   psh_hint_align_light( PSH_Hint     hint,
diff --git a/src/pshinter/pshalgo.h b/src/pshinter/pshalgo.h
index c50683f..f27e668 100644
--- a/src/pshinter/pshalgo.h
+++ b/src/pshinter/pshalgo.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pshalgo.h                                                              */
-/*                                                                         */
-/*    PostScript hinting algorithm (specification).                        */
-/*                                                                         */
-/*  Copyright 2001-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * pshalgo.h
+ *
+ *   PostScript hinting algorithm (specification).
+ *
+ * Copyright 2001-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef PSHALGO_H_
diff --git a/src/pshinter/pshglob.c b/src/pshinter/pshglob.c
index accc049..f6859cd 100644
--- a/src/pshinter/pshglob.c
+++ b/src/pshinter/pshglob.c
@@ -1,20 +1,20 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pshglob.c                                                              */
-/*                                                                         */
-/*    PostScript hinter global hinting management (body).                  */
-/*    Inspired by the new auto-hinter module.                              */
-/*                                                                         */
-/*  Copyright 2001-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used        */
-/*  modified and distributed under the terms of the FreeType project       */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * pshglob.c
+ *
+ *   PostScript hinter global hinting management (body).
+ *   Inspired by the new auto-hinter module.
+ *
+ * Copyright 2001-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used
+ * modified and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
diff --git a/src/pshinter/pshglob.h b/src/pshinter/pshglob.h
index cf80bf4..c3aa0ae 100644
--- a/src/pshinter/pshglob.h
+++ b/src/pshinter/pshglob.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pshglob.h                                                              */
-/*                                                                         */
-/*    PostScript hinter global hinting management.                         */
-/*                                                                         */
-/*  Copyright 2001-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * pshglob.h
+ *
+ *   PostScript hinter global hinting management.
+ *
+ * Copyright 2001-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef PSHGLOB_H_
@@ -36,27 +36,27 @@ FT_BEGIN_HEADER
   /*************************************************************************/
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* @constant:                                                            */
-  /*    PS_GLOBALS_MAX_BLUE_ZONES                                          */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    The maximum number of blue zones in a font global hints structure. */
-  /*    See @PS_Globals_BluesRec.                                          */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @constant:
+   *   PS_GLOBALS_MAX_BLUE_ZONES
+   *
+   * @description:
+   *   The maximum number of blue zones in a font global hints structure.
+   *   See @PS_Globals_BluesRec.
+   */
 #define PS_GLOBALS_MAX_BLUE_ZONES  16
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* @constant:                                                            */
-  /*    PS_GLOBALS_MAX_STD_WIDTHS                                          */
-  /*                                                                       */
-  /* @description:                                                         */
-  /*    The maximum number of standard and snap widths in either the       */
-  /*    horizontal or vertical direction.  See @PS_Globals_WidthsRec.      */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @constant:
+   *   PS_GLOBALS_MAX_STD_WIDTHS
+   *
+   * @description:
+   *   The maximum number of standard and snap widths in either the
+   *   horizontal or vertical direction.  See @PS_Globals_WidthsRec.
+   */
 #define PS_GLOBALS_MAX_STD_WIDTHS  16
 
 
diff --git a/src/pshinter/pshinter.c b/src/pshinter/pshinter.c
index cccebc7..fd703d6 100644
--- a/src/pshinter/pshinter.c
+++ b/src/pshinter/pshinter.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pshinter.c                                                             */
-/*                                                                         */
-/*    FreeType PostScript Hinting module                                   */
-/*                                                                         */
-/*  Copyright 2001-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * pshinter.c
+ *
+ *   FreeType PostScript Hinting module
+ *
+ * Copyright 2001-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #define FT_MAKE_OPTION_SINGLE_OBJECT
diff --git a/src/pshinter/pshmod.c b/src/pshinter/pshmod.c
index 20a93e0..e040d60 100644
--- a/src/pshinter/pshmod.c
+++ b/src/pshinter/pshmod.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pshmod.c                                                               */
-/*                                                                         */
-/*    FreeType PostScript hinter module implementation (body).             */
-/*                                                                         */
-/*  Copyright 2001-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * pshmod.c
+ *
+ *   FreeType PostScript hinter module implementation (body).
+ *
+ * Copyright 2001-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
diff --git a/src/pshinter/pshmod.h b/src/pshinter/pshmod.h
index 556de2f..368740c 100644
--- a/src/pshinter/pshmod.h
+++ b/src/pshinter/pshmod.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pshmod.h                                                               */
-/*                                                                         */
-/*    PostScript hinter module interface (specification).                  */
-/*                                                                         */
-/*  Copyright 2001-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * pshmod.h
+ *
+ *   PostScript hinter module interface (specification).
+ *
+ * Copyright 2001-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef PSHMOD_H_
diff --git a/src/pshinter/pshnterr.h b/src/pshinter/pshnterr.h
index b9d02d2..60814e1 100644
--- a/src/pshinter/pshnterr.h
+++ b/src/pshinter/pshnterr.h
@@ -1,26 +1,26 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pshnterr.h                                                             */
-/*                                                                         */
-/*    PS Hinter error codes (specification only).                          */
-/*                                                                         */
-/*  Copyright 2003-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This file is used to define the PSHinter error enumeration constants. */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * pshnterr.h
+ *
+ *   PS Hinter error codes (specification only).
+ *
+ * Copyright 2003-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+
+  /**************************************************************************
+   *
+   * This file is used to define the PSHinter error enumeration constants.
+   *
+   */
 
 #ifndef PSHNTERR_H_
 #define PSHNTERR_H_
diff --git a/src/pshinter/pshrec.c b/src/pshinter/pshrec.c
index 6648d13..50d66ca 100644
--- a/src/pshinter/pshrec.c
+++ b/src/pshinter/pshrec.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pshrec.c                                                               */
-/*                                                                         */
-/*    FreeType PostScript hints recorder (body).                           */
-/*                                                                         */
-/*  Copyright 2001-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * pshrec.c
+ *
+ *   FreeType PostScript hints recorder (body).
+ *
+ * Copyright 2001-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
diff --git a/src/pshinter/pshrec.h b/src/pshinter/pshrec.h
index 7e3dfe0..56c0f99 100644
--- a/src/pshinter/pshrec.h
+++ b/src/pshinter/pshrec.h
@@ -1,31 +1,31 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pshrec.h                                                               */
-/*                                                                         */
-/*    Postscript (Type1/Type2) hints recorder (specification).             */
-/*                                                                         */
-/*  Copyright 2001-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /**************************************************************************/
-  /*                                                                        */
-  /*  The functions defined here are called from the Type 1, CID and CFF    */
-  /*  font drivers to record the hints of a given character/glyph.          */
-  /*                                                                        */
-  /*  The hints are recorded in a unified format, and are later processed   */
-  /*  by the `optimizer' and `fitter' to adjust the outlines to the pixel   */
-  /*  grid.                                                                 */
-  /*                                                                        */
-  /**************************************************************************/
+/****************************************************************************
+ *
+ * pshrec.h
+ *
+ *   Postscript (Type1/Type2) hints recorder (specification).
+ *
+ * Copyright 2001-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+
+  /***************************************************************************
+   *
+   * The functions defined here are called from the Type 1, CID and CFF
+   * font drivers to record the hints of a given character/glyph.
+   *
+   * The hints are recorded in a unified format, and are later processed
+   * by the `optimizer' and `fitter' to adjust the outlines to the pixel
+   * grid.
+   *
+   */
 
 
 #ifndef PSHREC_H_
diff --git a/src/psnames/psmodule.c b/src/psnames/psmodule.c
index 7a13293..97dcfb6 100644
--- a/src/psnames/psmodule.c
+++ b/src/psnames/psmodule.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  psmodule.c                                                             */
-/*                                                                         */
-/*    PSNames module implementation (body).                                */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * psmodule.c
+ *
+ *   PSNames module implementation (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -24,16 +24,16 @@
 #include "psmodule.h"
 
   /*
-   *  The file `pstables.h' with its arrays and its function
-   *  `ft_get_adobe_glyph_index' is useful for other projects also (for
-   *  example, `pdfium' is using it).  However, if used as a C++ header,
-   *  including it in two different source files makes it necessary to use
-   *  `extern const' for the declaration of its arrays, otherwise the data
-   *  would be duplicated as mandated by the C++ standard.
+   * The file `pstables.h' with its arrays and its function
+   * `ft_get_adobe_glyph_index' is useful for other projects also (for
+   * example, `pdfium' is using it).  However, if used as a C++ header,
+   * including it in two different source files makes it necessary to use
+   * `extern const' for the declaration of its arrays, otherwise the data
+   * would be duplicated as mandated by the C++ standard.
    *
-   *  For this reason, we use `DEFINE_PS_TABLES' to guard the function
-   *  definitions, and `DEFINE_PS_TABLES_DATA' to provide both proper array
-   *  declarations and definitions.
+   * For this reason, we use `DEFINE_PS_TABLES' to guard the function
+   * definitions, and `DEFINE_PS_TABLES_DATA' to provide both proper array
+   * declarations and definitions.
    */
 #include "pstables.h"
 #define  DEFINE_PS_TABLES
diff --git a/src/psnames/psmodule.h b/src/psnames/psmodule.h
index 3e94f8b..8b026ee 100644
--- a/src/psnames/psmodule.h
+++ b/src/psnames/psmodule.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  psmodule.h                                                             */
-/*                                                                         */
-/*    High-level PSNames module interface (specification).                 */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * psmodule.h
+ *
+ *   High-level PSNames module interface (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef PSMODULE_H_
diff --git a/src/psnames/psnamerr.h b/src/psnames/psnamerr.h
index 14eb76c..af89157 100644
--- a/src/psnames/psnamerr.h
+++ b/src/psnames/psnamerr.h
@@ -1,27 +1,27 @@
-/***************************************************************************/
-/*                                                                         */
-/*  psnamerr.h                                                             */
-/*                                                                         */
-/*    PS names module error codes (specification only).                    */
-/*                                                                         */
-/*  Copyright 2001-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This file is used to define the PS names module error enumeration     */
-  /* constants.                                                            */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * psnamerr.h
+ *
+ *   PS names module error codes (specification only).
+ *
+ * Copyright 2001-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+
+  /**************************************************************************
+   *
+   * This file is used to define the PS names module error enumeration
+   * constants.
+   *
+   */
 
 #ifndef PSNAMERR_H_
 #define PSNAMERR_H_
diff --git a/src/psnames/psnames.c b/src/psnames/psnames.c
index 40dba2b..bfa5b85 100644
--- a/src/psnames/psnames.c
+++ b/src/psnames/psnames.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  psnames.c                                                              */
-/*                                                                         */
-/*    FreeType PSNames module component (body only).                       */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * psnames.c
+ *
+ *   FreeType PSNames module component (body only).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #define FT_MAKE_OPTION_SINGLE_OBJECT
diff --git a/src/psnames/pstables.h b/src/psnames/pstables.h
index 79545ee..e574122 100644
--- a/src/psnames/pstables.h
+++ b/src/psnames/pstables.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pstables.h                                                             */
-/*                                                                         */
-/*    PostScript glyph names.                                              */
-/*                                                                         */
-/*  Copyright 2005-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * pstables.h
+ *
+ *   PostScript glyph names.
+ *
+ * Copyright 2005-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
   /* This file has been generated automatically -- do not edit! */
@@ -609,12 +609,12 @@
 
 
   /*
-   *  This table is a compressed version of the Adobe Glyph List (AGL),
-   *  optimized for efficient searching.  It has been generated by the
-   *  `glnames.py' python script located in the `src/tools' directory.
+   * This table is a compressed version of the Adobe Glyph List (AGL),
+   * optimized for efficient searching.  It has been generated by the
+   * `glnames.py' python script located in the `src/tools' directory.
    *
-   *  The lookup function to get the Unicode value for a given string
-   *  is defined below the table.
+   * The lookup function to get the Unicode value for a given string
+   * is defined below the table.
    */
 
 #ifdef FT_CONFIG_OPTION_ADOBE_GLYPH_LIST
@@ -4137,7 +4137,7 @@
 
 #ifdef  DEFINE_PS_TABLES
   /*
-   *  This function searches the compressed table efficiently.
+   * This function searches the compressed table efficiently.
    */
   static unsigned long
   ft_get_adobe_glyph_index( const char*  name,
diff --git a/src/raster/ftmisc.h b/src/raster/ftmisc.h
index 7e40119..97db371 100644
--- a/src/raster/ftmisc.h
+++ b/src/raster/ftmisc.h
@@ -1,28 +1,28 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftmisc.h                                                               */
-/*                                                                         */
-/*    Miscellaneous macros for stand-alone rasterizer (specification       */
-/*    only).                                                               */
-/*                                                                         */
-/*  Copyright 2005-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used        */
-/*  modified and distributed under the terms of the FreeType project       */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /***************************************************/
-  /*                                                 */
-  /* This file is *not* portable!  You have to adapt */
-  /* its definitions to your platform.               */
-  /*                                                 */
-  /***************************************************/
+/****************************************************************************
+ *
+ * ftmisc.h
+ *
+ *   Miscellaneous macros for stand-alone rasterizer (specification
+ *   only).
+ *
+ * Copyright 2005-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used
+ * modified and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+
+  /****************************************************
+   *
+   * This file is *not* portable!  You have to adapt
+   * its definitions to your platform.
+   *
+   */
 
 #ifndef FTMISC_H_
 #define FTMISC_H_
diff --git a/src/raster/ftraster.c b/src/raster/ftraster.c
index 1326d69..e3da008 100644
--- a/src/raster/ftraster.c
+++ b/src/raster/ftraster.c
@@ -1,51 +1,51 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftraster.c                                                             */
-/*                                                                         */
-/*    The FreeType glyph rasterizer (body).                                */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This file can be compiled without the rest of the FreeType engine, by */
-  /* defining the STANDALONE_ macro when compiling it.  You also need to   */
-  /* put the files `ftimage.h' and `ftmisc.h' into the $(incdir)           */
-  /* directory.  Typically, you should do something like                   */
-  /*                                                                       */
-  /* - copy `src/raster/ftraster.c' (this file) to your current directory  */
-  /*                                                                       */
-  /* - copy `include/freetype/ftimage.h' and `src/raster/ftmisc.h' to your */
-  /*   current directory                                                   */
-  /*                                                                       */
-  /* - compile `ftraster' with the STANDALONE_ macro defined, as in        */
-  /*                                                                       */
-  /*     cc -c -DSTANDALONE_ ftraster.c                                    */
-  /*                                                                       */
-  /* The renderer can be initialized with a call to                        */
-  /* `ft_standard_raster.raster_new'; a bitmap can be generated            */
-  /* with a call to `ft_standard_raster.raster_render'.                    */
-  /*                                                                       */
-  /* See the comments and documentation in the file `ftimage.h' for more   */
-  /* details on how the raster works.                                      */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This is a rewrite of the FreeType 1.x scan-line converter             */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * ftraster.c
+ *
+ *   The FreeType glyph rasterizer (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+  /**************************************************************************
+   *
+   * This file can be compiled without the rest of the FreeType engine, by
+   * defining the STANDALONE_ macro when compiling it.  You also need to
+   * put the files `ftimage.h' and `ftmisc.h' into the $(incdir)
+   * directory.  Typically, you should do something like
+   *
+   * - copy `src/raster/ftraster.c' (this file) to your current directory
+   *
+   * - copy `include/freetype/ftimage.h' and `src/raster/ftmisc.h' to your
+   *   current directory
+   *
+   * - compile `ftraster' with the STANDALONE_ macro defined, as in
+   *
+   *     cc -c -DSTANDALONE_ ftraster.c
+   *
+   * The renderer can be initialized with a call to
+   * `ft_standard_raster.raster_new'; a bitmap can be generated
+   * with a call to `ft_standard_raster.raster_render'.
+   *
+   * See the comments and documentation in the file `ftimage.h' for more
+   * details on how the raster works.
+   *
+   */
+
+
+  /**************************************************************************
+   *
+   * This is a rewrite of the FreeType 1.x scan-line converter
+   *
+   */
 
 #ifdef STANDALONE_
 
@@ -69,76 +69,76 @@
 #endif /* !STANDALONE_ */
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* A simple technical note on how the raster works                       */
-  /* -----------------------------------------------                       */
-  /*                                                                       */
-  /*   Converting an outline into a bitmap is achieved in several steps:   */
-  /*                                                                       */
-  /*   1 - Decomposing the outline into successive `profiles'.  Each       */
-  /*       profile is simply an array of scanline intersections on a given */
-  /*       dimension.  A profile's main attributes are                     */
-  /*                                                                       */
-  /*       o its scanline position boundaries, i.e. `Ymin' and `Ymax'      */
-  /*                                                                       */
-  /*       o an array of intersection coordinates for each scanline        */
-  /*         between `Ymin' and `Ymax'                                     */
-  /*                                                                       */
-  /*       o a direction, indicating whether it was built going `up' or    */
-  /*         `down', as this is very important for filling rules           */
-  /*                                                                       */
-  /*       o its drop-out mode                                             */
-  /*                                                                       */
-  /*   2 - Sweeping the target map's scanlines in order to compute segment */
-  /*       `spans' which are then filled.  Additionally, this pass         */
-  /*       performs drop-out control.                                      */
-  /*                                                                       */
-  /*   The outline data is parsed during step 1 only.  The profiles are    */
-  /*   built from the bottom of the render pool, used as a stack.  The     */
-  /*   following graphics shows the profile list under construction:       */
-  /*                                                                       */
-  /*     __________________________________________________________ _ _    */
-  /*    |         |                 |         |                 |          */
-  /*    | profile | coordinates for | profile | coordinates for |-->       */
-  /*    |    1    |  profile 1      |    2    |  profile 2      |-->       */
-  /*    |_________|_________________|_________|_________________|__ _ _    */
-  /*                                                                       */
-  /*    ^                                                       ^          */
-  /*    |                                                       |          */
-  /* start of render pool                                      top         */
-  /*                                                                       */
-  /*   The top of the profile stack is kept in the `top' variable.         */
-  /*                                                                       */
-  /*   As you can see, a profile record is pushed on top of the render     */
-  /*   pool, which is then followed by its coordinates/intersections.  If  */
-  /*   a change of direction is detected in the outline, a new profile is  */
-  /*   generated until the end of the outline.                             */
-  /*                                                                       */
-  /*   Note that when all profiles have been generated, the function       */
-  /*   Finalize_Profile_Table() is used to record, for each profile, its   */
-  /*   bottom-most scanline as well as the scanline above its upmost       */
-  /*   boundary.  These positions are called `y-turns' because they (sort  */
-  /*   of) correspond to local extrema.  They are stored in a sorted list  */
-  /*   built from the top of the render pool as a downwards stack:         */
-  /*                                                                       */
-  /*      _ _ _______________________________________                      */
-  /*                            |                    |                     */
-  /*                         <--| sorted list of     |                     */
-  /*                         <--|  extrema scanlines |                     */
-  /*      _ _ __________________|____________________|                     */
-  /*                                                                       */
-  /*                            ^                    ^                     */
-  /*                            |                    |                     */
-  /*                         maxBuff           sizeBuff = end of pool      */
-  /*                                                                       */
-  /*   This list is later used during the sweep phase in order to          */
-  /*   optimize performance (see technical note on the sweep below).       */
-  /*                                                                       */
-  /*   Of course, the raster detects whether the two stacks collide and    */
-  /*   handles the situation properly.                                     */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * A simple technical note on how the raster works
+   * -----------------------------------------------
+   *
+   *   Converting an outline into a bitmap is achieved in several steps:
+   *
+   *   1 - Decomposing the outline into successive `profiles'.  Each
+   *       profile is simply an array of scanline intersections on a given
+   *       dimension.  A profile's main attributes are
+   *
+   *       o its scanline position boundaries, i.e. `Ymin' and `Ymax'
+   *
+   *       o an array of intersection coordinates for each scanline
+   *         between `Ymin' and `Ymax'
+   *
+   *       o a direction, indicating whether it was built going `up' or
+   *         `down', as this is very important for filling rules
+   *
+   *       o its drop-out mode
+   *
+   *   2 - Sweeping the target map's scanlines in order to compute segment
+   *       `spans' which are then filled.  Additionally, this pass
+   *       performs drop-out control.
+   *
+   *   The outline data is parsed during step 1 only.  The profiles are
+   *   built from the bottom of the render pool, used as a stack.  The
+   *   following graphics shows the profile list under construction:
+   *
+   *     __________________________________________________________ _ _
+   *   |         |                 |         |                 |
+   *   | profile | coordinates for | profile | coordinates for |-->
+   *   |    1    |  profile 1      |    2    |  profile 2      |-->
+   *   |_________|_________________|_________|_________________|__ _ _
+   *
+   *   ^                                                       ^
+   *   |                                                       |
+   * start of render pool                                      top
+   *
+   *   The top of the profile stack is kept in the `top' variable.
+   *
+   *   As you can see, a profile record is pushed on top of the render
+   *   pool, which is then followed by its coordinates/intersections.  If
+   *   a change of direction is detected in the outline, a new profile is
+   *   generated until the end of the outline.
+   *
+   *   Note that when all profiles have been generated, the function
+   *   Finalize_Profile_Table() is used to record, for each profile, its
+   *   bottom-most scanline as well as the scanline above its upmost
+   *   boundary.  These positions are called `y-turns' because they (sort
+   *   of) correspond to local extrema.  They are stored in a sorted list
+   *   built from the top of the render pool as a downwards stack:
+   *
+   *     _ _ _______________________________________
+   *                           |                    |
+   *                         <--| sorted list of     |
+   *                         <--|  extrema scanlines |
+   *     _ _ __________________|____________________|
+   *
+   *                           ^                    ^
+   *                           |                    |
+   *                         maxBuff           sizeBuff = end of pool
+   *
+   *   This list is later used during the sweep phase in order to
+   *   optimize performance (see technical note on the sweep below).
+   *
+   *   Of course, the raster detects whether the two stacks collide and
+   *   handles the situation properly.
+   *
+   */
 
 
   /*************************************************************************/
@@ -161,12 +161,12 @@
   /*************************************************************************/
   /*************************************************************************/
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_raster
 
@@ -569,18 +569,19 @@
   /*************************************************************************/
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Set_High_Precision                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Set precision variables according to param flag.                   */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    High :: Set to True for high precision (typically for ppem < 24),  */
-  /*            false otherwise.                                           */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Set_High_Precision
+   *
+   * @Description:
+   *   Set precision variables according to param flag.
+   *
+   * @Input:
+   *   High ::
+   *     Set to True for high precision (typically for ppem < 24),
+   *     false otherwise.
+   */
   static void
   Set_High_Precision( RAS_ARGS Int  High )
   {
@@ -627,24 +628,26 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    New_Profile                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Create a new profile in the render pool.                           */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    aState    :: The state/orientation of the new profile.             */
-  /*                                                                       */
-  /*    overshoot :: Whether the profile's unrounded start position        */
-  /*                 differs by at least a half pixel.                     */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*   SUCCESS on success.  FAILURE in case of overflow or of incoherent   */
-  /*   profile.                                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   New_Profile
+   *
+   * @Description:
+   *   Create a new profile in the render pool.
+   *
+   * @Input:
+   *   aState ::
+   *     The state/orientation of the new profile.
+   *
+   *   overshoot ::
+   *     Whether the profile's unrounded start position
+   *     differs by at least a half pixel.
+   *
+   * @Return:
+   *  SUCCESS on success.  FAILURE in case of overflow or of incoherent
+   *  profile.
+   */
   static Bool
   New_Profile( RAS_ARGS TStates  aState,
                         Bool     overshoot )
@@ -703,21 +706,22 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    End_Profile                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Finalize the current profile.                                      */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    overshoot :: Whether the profile's unrounded end position differs  */
-  /*                 by at least a half pixel.                             */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    SUCCESS on success.  FAILURE in case of overflow or incoherency.   */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   End_Profile
+   *
+   * @Description:
+   *   Finalize the current profile.
+   *
+   * @Input:
+   *   overshoot ::
+   *     Whether the profile's unrounded end position differs
+   *     by at least a half pixel.
+   *
+   * @Return:
+   *   SUCCESS on success.  FAILURE in case of overflow or incoherency.
+   */
   static Bool
   End_Profile( RAS_ARGS Bool  overshoot )
   {
@@ -775,21 +779,21 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Insert_Y_Turn                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Insert a salient into the sorted list placed on top of the render  */
-  /*    pool.                                                              */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    New y scanline position.                                           */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    SUCCESS on success.  FAILURE in case of overflow.                  */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Insert_Y_Turn
+   *
+   * @Description:
+   *   Insert a salient into the sorted list placed on top of the render
+   *   pool.
+   *
+   * @Input:
+   *   New y scanline position.
+   *
+   * @Return:
+   *   SUCCESS on success.  FAILURE in case of overflow.
+   */
   static Bool
   Insert_Y_Turn( RAS_ARGS Int  y )
   {
@@ -831,17 +835,17 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Finalize_Profile_Table                                             */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Adjust all links in the profiles list.                             */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    SUCCESS on success.  FAILURE in case of overflow.                  */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Finalize_Profile_Table
+   *
+   * @Description:
+   *   Adjust all links in the profiles list.
+   *
+   * @Return:
+   *   SUCCESS on success.  FAILURE in case of overflow.
+   */
   static Bool
   Finalize_Profile_Table( RAS_ARG )
   {
@@ -891,22 +895,22 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Split_Conic                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Subdivide one conic Bezier into two joint sub-arcs in the Bezier   */
-  /*    stack.                                                             */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    None (subdivided Bezier is taken from the top of the stack).       */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    This routine is the `beef' of this component.  It is  _the_ inner  */
-  /*    loop that should be optimized to hell to get the best performance. */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Split_Conic
+   *
+   * @Description:
+   *   Subdivide one conic Bezier into two joint sub-arcs in the Bezier
+   *   stack.
+   *
+   * @Input:
+   *   None (subdivided Bezier is taken from the top of the stack).
+   *
+   * @Note:
+   *   This routine is the `beef' of this component.  It is  _the_ inner
+   *   loop that should be optimized to hell to get the best performance.
+   */
   static void
   Split_Conic( TPoint*  base )
   {
@@ -930,20 +934,20 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Split_Cubic                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Subdivide a third-order Bezier arc into two joint sub-arcs in the  */
-  /*    Bezier stack.                                                      */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    This routine is the `beef' of the component.  It is one of _the_   */
-  /*    inner loops that should be optimized like hell to get the best     */
-  /*    performance.                                                       */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Split_Cubic
+   *
+   * @Description:
+   *   Subdivide a third-order Bezier arc into two joint sub-arcs in the
+   *   Bezier stack.
+   *
+   * @Note:
+   *   This routine is the `beef' of the component.  It is one of _the_
+   *   inner loops that should be optimized like hell to get the best
+   *   performance.
+   */
   static void
   Split_Cubic( TPoint*  base )
   {
@@ -972,31 +976,37 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Line_Up                                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Compute the x-coordinates of an ascending line segment and store   */
-  /*    them in the render pool.                                           */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    x1   :: The x-coordinate of the segment's start point.             */
-  /*                                                                       */
-  /*    y1   :: The y-coordinate of the segment's start point.             */
-  /*                                                                       */
-  /*    x2   :: The x-coordinate of the segment's end point.               */
-  /*                                                                       */
-  /*    y2   :: The y-coordinate of the segment's end point.               */
-  /*                                                                       */
-  /*    miny :: A lower vertical clipping bound value.                     */
-  /*                                                                       */
-  /*    maxy :: An upper vertical clipping bound value.                    */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    SUCCESS on success, FAILURE on render pool overflow.               */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Line_Up
+   *
+   * @Description:
+   *   Compute the x-coordinates of an ascending line segment and store
+   *   them in the render pool.
+   *
+   * @Input:
+   *   x1 ::
+   *     The x-coordinate of the segment's start point.
+   *
+   *   y1 ::
+   *     The y-coordinate of the segment's start point.
+   *
+   *   x2 ::
+   *     The x-coordinate of the segment's end point.
+   *
+   *   y2 ::
+   *     The y-coordinate of the segment's end point.
+   *
+   *   miny ::
+   *     A lower vertical clipping bound value.
+   *
+   *   maxy ::
+   *     An upper vertical clipping bound value.
+   *
+   * @Return:
+   *   SUCCESS on success, FAILURE on render pool overflow.
+   */
   static Bool
   Line_Up( RAS_ARGS Long  x1,
                     Long  y1,
@@ -1111,31 +1121,37 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Line_Down                                                          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Compute the x-coordinates of an descending line segment and store  */
-  /*    them in the render pool.                                           */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    x1   :: The x-coordinate of the segment's start point.             */
-  /*                                                                       */
-  /*    y1   :: The y-coordinate of the segment's start point.             */
-  /*                                                                       */
-  /*    x2   :: The x-coordinate of the segment's end point.               */
-  /*                                                                       */
-  /*    y2   :: The y-coordinate of the segment's end point.               */
-  /*                                                                       */
-  /*    miny :: A lower vertical clipping bound value.                     */
-  /*                                                                       */
-  /*    maxy :: An upper vertical clipping bound value.                    */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    SUCCESS on success, FAILURE on render pool overflow.               */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Line_Down
+   *
+   * @Description:
+   *   Compute the x-coordinates of an descending line segment and store
+   *   them in the render pool.
+   *
+   * @Input:
+   *   x1 ::
+   *     The x-coordinate of the segment's start point.
+   *
+   *   y1 ::
+   *     The y-coordinate of the segment's start point.
+   *
+   *   x2 ::
+   *     The x-coordinate of the segment's end point.
+   *
+   *   y2 ::
+   *     The y-coordinate of the segment's end point.
+   *
+   *   miny ::
+   *     A lower vertical clipping bound value.
+   *
+   *   maxy ::
+   *     An upper vertical clipping bound value.
+   *
+   * @Return:
+   *   SUCCESS on success, FAILURE on render pool overflow.
+   */
   static Bool
   Line_Down( RAS_ARGS Long  x1,
                       Long  y1,
@@ -1162,27 +1178,31 @@
   typedef void  (*TSplitter)( TPoint*  base );
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Bezier_Up                                                          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Compute the x-coordinates of an ascending Bezier arc and store     */
-  /*    them in the render pool.                                           */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    degree   :: The degree of the Bezier arc (either 2 or 3).          */
-  /*                                                                       */
-  /*    splitter :: The function to split Bezier arcs.                     */
-  /*                                                                       */
-  /*    miny     :: A lower vertical clipping bound value.                 */
-  /*                                                                       */
-  /*    maxy     :: An upper vertical clipping bound value.                */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    SUCCESS on success, FAILURE on render pool overflow.               */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Bezier_Up
+   *
+   * @Description:
+   *   Compute the x-coordinates of an ascending Bezier arc and store
+   *   them in the render pool.
+   *
+   * @Input:
+   *   degree ::
+   *     The degree of the Bezier arc (either 2 or 3).
+   *
+   *   splitter ::
+   *     The function to split Bezier arcs.
+   *
+   *   miny ::
+   *     A lower vertical clipping bound value.
+   *
+   *   maxy ::
+   *     An upper vertical clipping bound value.
+   *
+   * @Return:
+   *   SUCCESS on success, FAILURE on render pool overflow.
+   */
   static Bool
   Bezier_Up( RAS_ARGS Int        degree,
                       TSplitter  splitter,
@@ -1295,27 +1315,31 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Bezier_Down                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Compute the x-coordinates of an descending Bezier arc and store    */
-  /*    them in the render pool.                                           */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    degree   :: The degree of the Bezier arc (either 2 or 3).          */
-  /*                                                                       */
-  /*    splitter :: The function to split Bezier arcs.                     */
-  /*                                                                       */
-  /*    miny     :: A lower vertical clipping bound value.                 */
-  /*                                                                       */
-  /*    maxy     :: An upper vertical clipping bound value.                */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    SUCCESS on success, FAILURE on render pool overflow.               */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Bezier_Down
+   *
+   * @Description:
+   *   Compute the x-coordinates of an descending Bezier arc and store
+   *   them in the render pool.
+   *
+   * @Input:
+   *   degree ::
+   *     The degree of the Bezier arc (either 2 or 3).
+   *
+   *   splitter ::
+   *     The function to split Bezier arcs.
+   *
+   *   miny ::
+   *     A lower vertical clipping bound value.
+   *
+   *   maxy ::
+   *     An upper vertical clipping bound value.
+   *
+   * @Return:
+   *   SUCCESS on success, FAILURE on render pool overflow.
+   */
   static Bool
   Bezier_Down( RAS_ARGS Int        degree,
                         TSplitter  splitter,
@@ -1344,25 +1368,27 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Line_To                                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Inject a new line segment and adjust the Profiles list.            */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*   x :: The x-coordinate of the segment's end point (its start point   */
-  /*        is stored in `lastX').                                         */
-  /*                                                                       */
-  /*   y :: The y-coordinate of the segment's end point (its start point   */
-  /*        is stored in `lastY').                                         */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*   SUCCESS on success, FAILURE on render pool overflow or incorrect    */
-  /*   profile.                                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Line_To
+   *
+   * @Description:
+   *   Inject a new line segment and adjust the Profiles list.
+   *
+   * @Input:
+   *  x ::
+   *    The x-coordinate of the segment's end point (its start point
+   *    is stored in `lastX').
+   *
+   *  y ::
+   *    The y-coordinate of the segment's end point (its start point
+   *    is stored in `lastY').
+   *
+   * @Return:
+   *  SUCCESS on success, FAILURE on render pool overflow or incorrect
+   *  profile.
+   */
   static Bool
   Line_To( RAS_ARGS Long  x,
                     Long  y )
@@ -1438,29 +1464,33 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Conic_To                                                           */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Inject a new conic arc and adjust the profile list.                */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*   cx :: The x-coordinate of the arc's new control point.              */
-  /*                                                                       */
-  /*   cy :: The y-coordinate of the arc's new control point.              */
-  /*                                                                       */
-  /*   x  :: The x-coordinate of the arc's end point (its start point is   */
-  /*         stored in `lastX').                                           */
-  /*                                                                       */
-  /*   y  :: The y-coordinate of the arc's end point (its start point is   */
-  /*         stored in `lastY').                                           */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*   SUCCESS on success, FAILURE on render pool overflow or incorrect    */
-  /*   profile.                                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Conic_To
+   *
+   * @Description:
+   *   Inject a new conic arc and adjust the profile list.
+   *
+   * @Input:
+   *  cx ::
+   *    The x-coordinate of the arc's new control point.
+   *
+   *  cy ::
+   *    The y-coordinate of the arc's new control point.
+   *
+   *  x ::
+   *    The x-coordinate of the arc's end point (its start point is
+   *    stored in `lastX').
+   *
+   *  y ::
+   *    The y-coordinate of the arc's end point (its start point is
+   *    stored in `lastY').
+   *
+   * @Return:
+   *  SUCCESS on success, FAILURE on render pool overflow or incorrect
+   *  profile.
+   */
   static Bool
   Conic_To( RAS_ARGS Long  cx,
                      Long  cy,
@@ -1555,33 +1585,39 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Cubic_To                                                           */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Inject a new cubic arc and adjust the profile list.                */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*   cx1 :: The x-coordinate of the arc's first new control point.       */
-  /*                                                                       */
-  /*   cy1 :: The y-coordinate of the arc's first new control point.       */
-  /*                                                                       */
-  /*   cx2 :: The x-coordinate of the arc's second new control point.      */
-  /*                                                                       */
-  /*   cy2 :: The y-coordinate of the arc's second new control point.      */
-  /*                                                                       */
-  /*   x   :: The x-coordinate of the arc's end point (its start point is  */
-  /*          stored in `lastX').                                          */
-  /*                                                                       */
-  /*   y   :: The y-coordinate of the arc's end point (its start point is  */
-  /*          stored in `lastY').                                          */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*   SUCCESS on success, FAILURE on render pool overflow or incorrect    */
-  /*   profile.                                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Cubic_To
+   *
+   * @Description:
+   *   Inject a new cubic arc and adjust the profile list.
+   *
+   * @Input:
+   *  cx1 ::
+   *    The x-coordinate of the arc's first new control point.
+   *
+   *  cy1 ::
+   *    The y-coordinate of the arc's first new control point.
+   *
+   *  cx2 ::
+   *    The x-coordinate of the arc's second new control point.
+   *
+   *  cy2 ::
+   *    The y-coordinate of the arc's second new control point.
+   *
+   *  x ::
+   *    The x-coordinate of the arc's end point (its start point is
+   *    stored in `lastX').
+   *
+   *  y ::
+   *    The y-coordinate of the arc's end point (its start point is
+   *    stored in `lastY').
+   *
+   * @Return:
+   *  SUCCESS on success, FAILURE on render pool overflow or incorrect
+   *  profile.
+   */
   static Bool
   Cubic_To( RAS_ARGS Long  cx1,
                      Long  cy1,
@@ -1702,27 +1738,30 @@
                        } while ( 0 )
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Decompose_Curve                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Scan the outline arrays in order to emit individual segments and   */
-  /*    Beziers by calling Line_To() and Bezier_To().  It handles all      */
-  /*    weird cases, like when the first point is off the curve, or when   */
-  /*    there are simply no `on' points in the contour!                    */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    first   :: The index of the first point in the contour.            */
-  /*                                                                       */
-  /*    last    :: The index of the last point in the contour.             */
-  /*                                                                       */
-  /*    flipped :: If set, flip the direction of the curve.                */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    SUCCESS on success, FAILURE on error.                              */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Decompose_Curve
+   *
+   * @Description:
+   *   Scan the outline arrays in order to emit individual segments and
+   *   Beziers by calling Line_To() and Bezier_To().  It handles all
+   *   weird cases, like when the first point is off the curve, or when
+   *   there are simply no `on' points in the contour!
+   *
+   * @Input:
+   *   first ::
+   *     The index of the first point in the contour.
+   *
+   *   last ::
+   *     The index of the last point in the contour.
+   *
+   *   flipped ::
+   *     If set, flip the direction of the curve.
+   *
+   * @Return:
+   *   SUCCESS on success, FAILURE on error.
+   */
   static Bool
   Decompose_Curve( RAS_ARGS UShort  first,
                             UShort  last,
@@ -1931,22 +1970,23 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Convert_Glyph                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Convert a glyph into a series of segments and arcs and make a      */
-  /*    profiles list with them.                                           */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    flipped :: If set, flip the direction of curve.                    */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    SUCCESS on success, FAILURE if any error was encountered during    */
-  /*    rendering.                                                         */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Convert_Glyph
+   *
+   * @Description:
+   *   Convert a glyph into a series of segments and arcs and make a
+   *   profiles list with them.
+   *
+   * @Input:
+   *   flipped ::
+   *     If set, flip the direction of curve.
+   *
+   * @Return:
+   *   SUCCESS on success, FAILURE if any error was encountered during
+   *   rendering.
+   */
   static Bool
   Convert_Glyph( RAS_ARGS Int  flipped )
   {
@@ -2025,12 +2065,12 @@
   /*************************************************************************/
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /*  Init_Linked                                                          */
-  /*                                                                       */
-  /*    Initializes an empty linked list.                                  */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * Init_Linked
+   *
+   *   Initializes an empty linked list.
+   */
   static void
   Init_Linked( TProfileList*  l )
   {
@@ -2038,12 +2078,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /*  InsNew                                                               */
-  /*                                                                       */
-  /*    Inserts a new profile in a linked list.                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * InsNew
+   *
+   *   Inserts a new profile in a linked list.
+   */
   static void
   InsNew( PProfileList  list,
           PProfile      profile )
@@ -2069,12 +2109,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /*  DelOld                                                               */
-  /*                                                                       */
-  /*    Removes an old profile from a linked list.                         */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * DelOld
+   *
+   *   Removes an old profile from a linked list.
+   */
   static void
   DelOld( PProfileList  list,
           PProfile      profile )
@@ -2102,14 +2142,14 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /*  Sort                                                                 */
-  /*                                                                       */
-  /*    Sorts a trace list.  In 95%, the list is already sorted.  We need  */
-  /*    an algorithm which is fast in this case.  Bubble sort is enough    */
-  /*    and simple.                                                        */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * Sort
+   *
+   *   Sorts a trace list.  In 95%, the list is already sorted.  We need
+   *   an algorithm which is fast in this case.  Bubble sort is enough
+   *   and simple.
+   */
   static void
   Sort( PProfileList  list )
   {
@@ -2160,14 +2200,14 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /*  Vertical Sweep Procedure Set                                         */
-  /*                                                                       */
-  /*  These four routines are used during the vertical black/white sweep   */
-  /*  phase by the generic Draw_Sweep() function.                          */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * Vertical Sweep Procedure Set
+   *
+   * These four routines are used during the vertical black/white sweep
+   * phase by the generic Draw_Sweep() function.
+   *
+   */
 
   static void
   Vertical_Sweep_Init( RAS_ARGS Short*  min,
@@ -2428,14 +2468,14 @@
   }
 
 
-  /***********************************************************************/
-  /*                                                                     */
-  /*  Horizontal Sweep Procedure Set                                     */
-  /*                                                                     */
-  /*  These four routines are used during the horizontal black/white     */
-  /*  sweep phase by the generic Draw_Sweep() function.                  */
-  /*                                                                     */
-  /***********************************************************************/
+  /************************************************************************
+   *
+   * Horizontal Sweep Procedure Set
+   *
+   * These four routines are used during the horizontal black/white
+   * sweep phase by the generic Draw_Sweep() function.
+   *
+   */
 
   static void
   Horizontal_Sweep_Init( RAS_ARGS Short*  min,
@@ -2639,11 +2679,11 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /*  Generic Sweep Drawing routine                                        */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * Generic Sweep Drawing routine
+   *
+   */
 
   static Bool
   Draw_Sweep( RAS_ARG )
@@ -2885,20 +2925,21 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Render_Single_Pass                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Perform one sweep with sub-banding.                                */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    flipped :: If set, flip the direction of the outline.              */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    Renderer error code.                                               */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Render_Single_Pass
+   *
+   * @Description:
+   *   Perform one sweep with sub-banding.
+   *
+   * @Input:
+   *   flipped ::
+   *     If set, flip the direction of the outline.
+   *
+   * @Return:
+   *   Renderer error code.
+   */
   static int
   Render_Single_Pass( RAS_ARGS Bool  flipped )
   {
@@ -2960,17 +3001,17 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Render_Glyph                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Render a glyph in a bitmap.  Sub-banding if needed.                */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Render_Glyph
+   *
+   * @Description:
+   *   Render a glyph in a bitmap.  Sub-banding if needed.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   static FT_Error
   Render_Glyph( RAS_ARG )
   {
diff --git a/src/raster/ftraster.h b/src/raster/ftraster.h
index 40b5d6d..8f6708d 100644
--- a/src/raster/ftraster.h
+++ b/src/raster/ftraster.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftraster.h                                                             */
-/*                                                                         */
-/*    The FreeType glyph rasterizer (specification).                       */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used        */
-/*  modified and distributed under the terms of the FreeType project       */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftraster.h
+ *
+ *   The FreeType glyph rasterizer (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used
+ * modified and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef FTRASTER_H_
@@ -28,12 +28,12 @@
 FT_BEGIN_HEADER
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Uncomment the following line if you are using ftraster.c as a         */
-  /* standalone module, fully independent of FreeType.                     */
-  /*                                                                       */
-/* #define STANDALONE_ */
+  /**************************************************************************
+   *
+   * Uncomment the following line if you are using ftraster.c as a
+   * standalone module, fully independent of FreeType.
+   *
+   */
 
   FT_EXPORT_VAR( const FT_Raster_Funcs )  ft_standard_raster;
 
diff --git a/src/raster/ftrend1.c b/src/raster/ftrend1.c
index bb1649f..205cd9b 100644
--- a/src/raster/ftrend1.c
+++ b/src/raster/ftrend1.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftrend1.c                                                              */
-/*                                                                         */
-/*    The FreeType glyph rasterizer interface (body).                      */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftrend1.c
+ *
+ *   The FreeType glyph rasterizer interface (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
diff --git a/src/raster/ftrend1.h b/src/raster/ftrend1.h
index 2abdf2d..05be54f 100644
--- a/src/raster/ftrend1.h
+++ b/src/raster/ftrend1.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftrend1.h                                                              */
-/*                                                                         */
-/*    The FreeType glyph rasterizer interface (specification).             */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftrend1.h
+ *
+ *   The FreeType glyph rasterizer interface (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef FTREND1_H_
diff --git a/src/raster/raster.c b/src/raster/raster.c
index d2e65dd..ffd8994 100644
--- a/src/raster/raster.c
+++ b/src/raster/raster.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  raster.c                                                               */
-/*                                                                         */
-/*    FreeType monochrome rasterer module component (body only).           */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * raster.c
+ *
+ *   FreeType monochrome rasterer module component (body only).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #define FT_MAKE_OPTION_SINGLE_OBJECT
diff --git a/src/raster/rasterrs.h b/src/raster/rasterrs.h
index 22a3e15..ab242ac 100644
--- a/src/raster/rasterrs.h
+++ b/src/raster/rasterrs.h
@@ -1,27 +1,27 @@
-/***************************************************************************/
-/*                                                                         */
-/*  rasterrs.h                                                             */
-/*                                                                         */
-/*    monochrome renderer error codes (specification only).                */
-/*                                                                         */
-/*  Copyright 2001-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This file is used to define the monochrome renderer error enumeration */
-  /* constants.                                                            */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * rasterrs.h
+ *
+ *   monochrome renderer error codes (specification only).
+ *
+ * Copyright 2001-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+
+  /**************************************************************************
+   *
+   * This file is used to define the monochrome renderer error enumeration
+   * constants.
+   *
+   */
 
 #ifndef RASTERRS_H_
 #define RASTERRS_H_
diff --git a/src/sfnt/pngshim.c b/src/sfnt/pngshim.c
index 1602026..0674bda 100644
--- a/src/sfnt/pngshim.c
+++ b/src/sfnt/pngshim.c
@@ -1,20 +1,20 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pngshim.c                                                              */
-/*                                                                         */
-/*    PNG Bitmap glyph support.                                            */
-/*                                                                         */
-/*  Copyright 2013-2018 by                                                 */
-/*  Google, Inc.                                                           */
-/*  Written by Stuart Gill and Behdad Esfahbod.                            */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * pngshim.c
+ *
+ *   PNG Bitmap glyph support.
+ *
+ * Copyright 2013-2018 by
+ * Google, Inc.
+ * Written by Stuart Gill and Behdad Esfahbod.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
diff --git a/src/sfnt/pngshim.h b/src/sfnt/pngshim.h
index 194238c..049a1ed 100644
--- a/src/sfnt/pngshim.h
+++ b/src/sfnt/pngshim.h
@@ -1,20 +1,20 @@
-/***************************************************************************/
-/*                                                                         */
-/*  pngshim.h                                                              */
-/*                                                                         */
-/*    PNG Bitmap glyph support.                                            */
-/*                                                                         */
-/*  Copyright 2013-2018 by                                                 */
-/*  Google, Inc.                                                           */
-/*  Written by Stuart Gill and Behdad Esfahbod.                            */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * pngshim.h
+ *
+ *   PNG Bitmap glyph support.
+ *
+ * Copyright 2013-2018 by
+ * Google, Inc.
+ * Written by Stuart Gill and Behdad Esfahbod.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef PNGSHIM_H_
diff --git a/src/sfnt/sfdriver.c b/src/sfnt/sfdriver.c
index 40b56d5..6005771 100644
--- a/src/sfnt/sfdriver.c
+++ b/src/sfnt/sfdriver.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  sfdriver.c                                                             */
-/*                                                                         */
-/*    High-level SFNT driver interface (body).                             */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * sfdriver.c
+ *
+ *   High-level SFNT driver interface (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -60,18 +60,18 @@
 #endif
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_sfdriver
 
 
   /*
-   *  SFNT TABLE SERVICE
+   * SFNT TABLE SERVICE
    *
    */
 
@@ -158,7 +158,7 @@
 #ifdef TT_CONFIG_OPTION_POSTSCRIPT_NAMES
 
   /*
-   *  GLYPH DICT SERVICE
+   * GLYPH DICT SERVICE
    *
    */
 
@@ -225,7 +225,7 @@
 
 
   /*
-   *  POSTSCRIPT NAME SERVICE
+   * POSTSCRIPT NAME SERVICE
    *
    */
 
@@ -646,9 +646,9 @@
 
 
   /*
-   *  Find the shortest decimal representation of a 16.16 fixed point
-   *  number.  The function fills `buf' with the result, returning a pointer
-   *  to the position after the representation's last byte.
+   * Find the shortest decimal representation of a 16.16 fixed point
+   * number.  The function fills `buf' with the result, returning a pointer
+   * to the position after the representation's last byte.
    */
 
   static char*
@@ -1076,7 +1076,7 @@
 
 
   /*
-   *  TT CMAP INFO
+   * TT CMAP INFO
    */
   FT_DEFINE_SERVICE_TTCMAPSREC(
     tt_service_get_cmap_info,
@@ -1135,7 +1135,7 @@
 
 
   /*
-   *  SERVICE LIST
+   * SERVICE LIST
    */
 
 #if defined TT_CONFIG_OPTION_POSTSCRIPT_NAMES && defined TT_CONFIG_OPTION_BDF
diff --git a/src/sfnt/sfdriver.h b/src/sfnt/sfdriver.h
index 8419dbb..02d8d3d 100644
--- a/src/sfnt/sfdriver.h
+++ b/src/sfnt/sfdriver.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  sfdriver.h                                                             */
-/*                                                                         */
-/*    High-level SFNT driver interface (specification).                    */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * sfdriver.h
+ *
+ *   High-level SFNT driver interface (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef SFDRIVER_H_
diff --git a/src/sfnt/sferrors.h b/src/sfnt/sferrors.h
index 74003d4..6f78063 100644
--- a/src/sfnt/sferrors.h
+++ b/src/sfnt/sferrors.h
@@ -1,26 +1,26 @@
-/***************************************************************************/
-/*                                                                         */
-/*  sferrors.h                                                             */
-/*                                                                         */
-/*    SFNT error codes (specification only).                               */
-/*                                                                         */
-/*  Copyright 2001-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This file is used to define the SFNT error enumeration constants.     */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * sferrors.h
+ *
+ *   SFNT error codes (specification only).
+ *
+ * Copyright 2001-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+
+  /**************************************************************************
+   *
+   * This file is used to define the SFNT error enumeration constants.
+   *
+   */
 
 #ifndef SFERRORS_H_
 #define SFERRORS_H_
diff --git a/src/sfnt/sfnt.c b/src/sfnt/sfnt.c
index baf87a7..7ac5483 100644
--- a/src/sfnt/sfnt.c
+++ b/src/sfnt/sfnt.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  sfnt.c                                                                 */
-/*                                                                         */
-/*    Single object library component.                                     */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * sfnt.c
+ *
+ *   Single object library component.
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #define FT_MAKE_OPTION_SINGLE_OBJECT
diff --git a/src/sfnt/sfobjs.c b/src/sfnt/sfobjs.c
index d8734b0..0c0e020 100644
--- a/src/sfnt/sfobjs.c
+++ b/src/sfnt/sfobjs.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  sfobjs.c                                                               */
-/*                                                                         */
-/*    SFNT object management (base).                                       */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * sfobjs.c
+ *
+ *   SFNT object management (base).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -41,12 +41,12 @@
 #endif
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_sfobjs
 
@@ -1001,15 +1001,15 @@
         face->variation_support |= TT_FACE_FLAG_VAR_FVAR;
 
       /*
-       *  As documented in the OpenType specification, an entry for the
-       *  default instance may be omitted in the named instance table.  In
-       *  particular this means that even if there is no named instance
-       *  table in the font we actually do have a named instance, namely the
-       *  default instance.
+       * As documented in the OpenType specification, an entry for the
+       * default instance may be omitted in the named instance table.  In
+       * particular this means that even if there is no named instance
+       * table in the font we actually do have a named instance, namely the
+       * default instance.
        *
-       *  For consistency, we always want the default instance in our list
-       *  of named instances.  If it is missing, we try to synthesize it
-       *  later on.  Here, we have to adjust `num_instances' accordingly.
+       * For consistency, we always want the default instance in our list
+       * of named instances.  If it is missing, we try to synthesize it
+       * later on.  Here, we have to adjust `num_instances' accordingly.
        */
 
       if ( ( face->variation_support & TT_FACE_FLAG_VAR_FVAR ) &&
@@ -1395,10 +1395,10 @@
       FT_Long  flags = root->face_flags;
 
 
-      /*********************************************************************/
-      /*                                                                   */
-      /* Compute face flags.                                               */
-      /*                                                                   */
+      /**********************************************************************
+       *
+       * Compute face flags.
+       */
       if ( face->sbit_table_type == TT_SBIT_TABLE_TYPE_CBLC ||
            face->sbit_table_type == TT_SBIT_TABLE_TYPE_SBIX ||
            face->colr_and_cpal                              )
@@ -1445,10 +1445,10 @@
 
       root->face_flags = flags;
 
-      /*********************************************************************/
-      /*                                                                   */
-      /* Compute style flags.                                              */
-      /*                                                                   */
+      /**********************************************************************
+       *
+       * Compute style flags.
+       */
 
       flags = 0;
       if ( has_outline == TRUE && face->os2.version != 0xFFFFU )
@@ -1478,14 +1478,14 @@
 
       root->style_flags |= flags;
 
-      /*********************************************************************/
-      /*                                                                   */
-      /* Polish the charmaps.                                              */
-      /*                                                                   */
-      /*   Try to set the charmap encoding according to the platform &     */
-      /*   encoding ID of each charmap.  Emulate Unicode charmap if one    */
-      /*   is missing.                                                     */
-      /*                                                                   */
+      /**********************************************************************
+       *
+       * Polish the charmaps.
+       *
+       *   Try to set the charmap encoding according to the platform &
+       *   encoding ID of each charmap.  Emulate Unicode charmap if one
+       *   is missing.
+       */
 
       tt_face_build_cmaps( face );  /* ignore errors */
 
@@ -1540,9 +1540,9 @@
 #ifdef TT_CONFIG_OPTION_EMBEDDED_BITMAPS
 
       /*
-       *  Now allocate the root array of FT_Bitmap_Size records and
-       *  populate them.  Unfortunately, it isn't possible to indicate bit
-       *  depths in the FT_Bitmap_Size record.  This is a design error.
+       * Now allocate the root array of FT_Bitmap_Size records and
+       * populate them.  Unfortunately, it isn't possible to indicate bit
+       * depths in the FT_Bitmap_Size record.  This is a design error.
        */
       {
         FT_UInt  count;
@@ -1622,10 +1622,10 @@
         root->face_flags |= FT_FACE_FLAG_SCALABLE;
 
 
-      /*********************************************************************/
-      /*                                                                   */
-      /*  Set up metrics.                                                  */
-      /*                                                                   */
+      /**********************************************************************
+       *
+       * Set up metrics.
+       */
       if ( FT_IS_SCALABLE( root ) )
       {
         /* XXX What about if outline header is missing */
diff --git a/src/sfnt/sfobjs.h b/src/sfnt/sfobjs.h
index 1b8d1be..d3bbaf1 100644
--- a/src/sfnt/sfobjs.h
+++ b/src/sfnt/sfobjs.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  sfobjs.h                                                               */
-/*                                                                         */
-/*    SFNT object management (specification).                              */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * sfobjs.h
+ *
+ *   SFNT object management (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef SFOBJS_H_
diff --git a/src/sfnt/ttbdf.c b/src/sfnt/ttbdf.c
index 534201f..ed6ba39 100644
--- a/src/sfnt/ttbdf.c
+++ b/src/sfnt/ttbdf.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttbdf.c                                                                */
-/*                                                                         */
-/*    TrueType and OpenType embedded BDF properties (body).                */
-/*                                                                         */
-/*  Copyright 2005-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ttbdf.c
+ *
+ *   TrueType and OpenType embedded BDF properties (body).
+ *
+ * Copyright 2005-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -27,12 +27,12 @@
 
 #ifdef TT_CONFIG_OPTION_BDF
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_ttbdf
 
@@ -111,8 +111,8 @@
         FT_UInt  num_items = FT_PEEK_USHORT( p + 2 );
 
         /*
-         *  We don't need to check the value sets themselves, since this
-         *  is done later.
+         * We don't need to check the value sets themselves, since this
+         * is done later.
          */
         strike += 10 * num_items;
 
diff --git a/src/sfnt/ttbdf.h b/src/sfnt/ttbdf.h
index 809a663..5cee599 100644
--- a/src/sfnt/ttbdf.h
+++ b/src/sfnt/ttbdf.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttbdf.h                                                                */
-/*                                                                         */
-/*    TrueType and OpenType embedded BDF properties (specification).       */
-/*                                                                         */
-/*  Copyright 2005-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ttbdf.h
+ *
+ *   TrueType and OpenType embedded BDF properties (specification).
+ *
+ * Copyright 2005-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef TTBDF_H_
diff --git a/src/sfnt/ttcmap.c b/src/sfnt/ttcmap.c
index ac73ace..24bf2ad 100644
--- a/src/sfnt/ttcmap.c
+++ b/src/sfnt/ttcmap.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttcmap.c                                                               */
-/*                                                                         */
-/*    TrueType character mapping table (cmap) support (body).              */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ttcmap.c
+ *
+ *   TrueType character mapping table (cmap) support (body).
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -29,12 +29,12 @@
 #include "ttpost.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_ttcmap
 
@@ -76,19 +76,19 @@
   /*************************************************************************/
   /*************************************************************************/
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* TABLE OVERVIEW                                                        */
-  /* --------------                                                        */
-  /*                                                                       */
-  /*   NAME        OFFSET         TYPE          DESCRIPTION                */
-  /*                                                                       */
-  /*   format      0              USHORT        must be 0                  */
-  /*   length      2              USHORT        table length in bytes      */
-  /*   language    4              USHORT        Mac language code          */
-  /*   glyph_ids   6              BYTE[256]     array of glyph indices     */
-  /*               262                                                     */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * TABLE OVERVIEW
+   * --------------
+   *
+   *   NAME        OFFSET         TYPE          DESCRIPTION
+   *
+   *   format      0              USHORT        must be 0
+   *   length      2              USHORT        table length in bytes
+   *   language    4              USHORT        Mac language code
+   *   glyph_ids   6              BYTE[256]     array of glyph indices
+   *               262
+   */
 
 #ifdef TT_CONFIG_CMAP_FORMAT_0
 
@@ -237,57 +237,57 @@
   /*************************************************************************/
   /*************************************************************************/
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* TABLE OVERVIEW                                                        */
-  /* --------------                                                        */
-  /*                                                                       */
-  /*   NAME        OFFSET         TYPE            DESCRIPTION              */
-  /*                                                                       */
-  /*   format      0              USHORT          must be 2                */
-  /*   length      2              USHORT          table length in bytes    */
-  /*   language    4              USHORT          Mac language code        */
-  /*   keys        6              USHORT[256]     sub-header keys          */
-  /*   subs        518            SUBHEAD[NSUBS]  sub-headers array        */
-  /*   glyph_ids   518+NSUB*8     USHORT[]        glyph ID array           */
-  /*                                                                       */
-  /* The `keys' table is used to map charcode high bytes to sub-headers.   */
-  /* The value of `NSUBS' is the number of sub-headers defined in the      */
-  /* table and is computed by finding the maximum of the `keys' table.     */
-  /*                                                                       */
-  /* Note that for any `n', `keys[n]' is a byte offset within the `subs'   */
-  /* table, i.e., it is the corresponding sub-header index multiplied      */
-  /* by 8.                                                                 */
-  /*                                                                       */
-  /* Each sub-header has the following format.                             */
-  /*                                                                       */
-  /*   NAME        OFFSET      TYPE            DESCRIPTION                 */
-  /*                                                                       */
-  /*   first       0           USHORT          first valid low-byte        */
-  /*   count       2           USHORT          number of valid low-bytes   */
-  /*   delta       4           SHORT           see below                   */
-  /*   offset      6           USHORT          see below                   */
-  /*                                                                       */
-  /* A sub-header defines, for each high byte, the range of valid          */
-  /* low bytes within the charmap.  Note that the range defined by `first' */
-  /* and `count' must be completely included in the interval [0..255]      */
-  /* according to the specification.                                       */
-  /*                                                                       */
-  /* If a character code is contained within a given sub-header, then      */
-  /* mapping it to a glyph index is done as follows.                       */
-  /*                                                                       */
-  /* * The value of `offset' is read.  This is a _byte_ distance from the  */
-  /*   location of the `offset' field itself into a slice of the           */
-  /*   `glyph_ids' table.  Let's call it `slice' (it is a USHORT[], too).  */
-  /*                                                                       */
-  /* * The value `slice[char.lo - first]' is read.  If it is 0, there is   */
-  /*   no glyph for the charcode.  Otherwise, the value of `delta' is      */
-  /*   added to it (modulo 65536) to form a new glyph index.               */
-  /*                                                                       */
-  /* It is up to the validation routine to check that all offsets fall     */
-  /* within the glyph IDs table (and not within the `subs' table itself or */
-  /* outside of the CMap).                                                 */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * TABLE OVERVIEW
+   * --------------
+   *
+   *   NAME        OFFSET         TYPE            DESCRIPTION
+   *
+   *   format      0              USHORT          must be 2
+   *   length      2              USHORT          table length in bytes
+   *   language    4              USHORT          Mac language code
+   *   keys        6              USHORT[256]     sub-header keys
+   *   subs        518            SUBHEAD[NSUBS]  sub-headers array
+   *   glyph_ids   518+NSUB*8     USHORT[]        glyph ID array
+   *
+   * The `keys' table is used to map charcode high bytes to sub-headers.
+   * The value of `NSUBS' is the number of sub-headers defined in the
+   * table and is computed by finding the maximum of the `keys' table.
+   *
+   * Note that for any `n', `keys[n]' is a byte offset within the `subs'
+   * table, i.e., it is the corresponding sub-header index multiplied
+   * by 8.
+   *
+   * Each sub-header has the following format.
+   *
+   *   NAME        OFFSET      TYPE            DESCRIPTION
+   *
+   *   first       0           USHORT          first valid low-byte
+   *   count       2           USHORT          number of valid low-bytes
+   *   delta       4           SHORT           see below
+   *   offset      6           USHORT          see below
+   *
+   * A sub-header defines, for each high byte, the range of valid
+   * low bytes within the charmap.  Note that the range defined by `first'
+   * and `count' must be completely included in the interval [0..255]
+   * according to the specification.
+   *
+   * If a character code is contained within a given sub-header, then
+   * mapping it to a glyph index is done as follows.
+   *
+   * - The value of `offset' is read.  This is a _byte_ distance from the
+   *   location of the `offset' field itself into a slice of the
+   *   `glyph_ids' table.  Let's call it `slice' (it is a USHORT[], too).
+   *
+   * - The value `slice[char.lo - first]' is read.  If it is 0, there is
+   *   no glyph for the charcode.  Otherwise, the value of `delta' is
+   *   added to it (modulo 65536) to form a new glyph index.
+   *
+   * It is up to the validation routine to check that all offsets fall
+   * within the glyph IDs table (and not within the `subs' table itself or
+   * outside of the CMap).
+   */
 
 #ifdef TT_CONFIG_CMAP_FORMAT_2
 
@@ -625,68 +625,68 @@
   /*************************************************************************/
   /*************************************************************************/
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* TABLE OVERVIEW                                                        */
-  /* --------------                                                        */
-  /*                                                                       */
-  /*   NAME          OFFSET         TYPE              DESCRIPTION          */
-  /*                                                                       */
-  /*   format        0              USHORT            must be 4            */
-  /*   length        2              USHORT            table length         */
-  /*                                                  in bytes             */
-  /*   language      4              USHORT            Mac language code    */
-  /*                                                                       */
-  /*   segCountX2    6              USHORT            2*NUM_SEGS           */
-  /*   searchRange   8              USHORT            2*(1 << LOG_SEGS)    */
-  /*   entrySelector 10             USHORT            LOG_SEGS             */
-  /*   rangeShift    12             USHORT            segCountX2 -         */
-  /*                                                    searchRange        */
-  /*                                                                       */
-  /*   endCount      14             USHORT[NUM_SEGS]  end charcode for     */
-  /*                                                  each segment; last   */
-  /*                                                  is 0xFFFF            */
-  /*                                                                       */
-  /*   pad           14+NUM_SEGS*2  USHORT            padding              */
-  /*                                                                       */
-  /*   startCount    16+NUM_SEGS*2  USHORT[NUM_SEGS]  first charcode for   */
-  /*                                                  each segment         */
-  /*                                                                       */
-  /*   idDelta       16+NUM_SEGS*4  SHORT[NUM_SEGS]   delta for each       */
-  /*                                                  segment              */
-  /*   idOffset      16+NUM_SEGS*6  SHORT[NUM_SEGS]   range offset for     */
-  /*                                                  each segment; can be */
-  /*                                                  zero                 */
-  /*                                                                       */
-  /*   glyphIds      16+NUM_SEGS*8  USHORT[]          array of glyph ID    */
-  /*                                                  ranges               */
-  /*                                                                       */
-  /* Character codes are modelled by a series of ordered (increasing)      */
-  /* intervals called segments.  Each segment has start and end codes,     */
-  /* provided by the `startCount' and `endCount' arrays.  Segments must    */
-  /* not overlap, and the last segment should always contain the value     */
-  /* 0xFFFF for `endCount'.                                                */
-  /*                                                                       */
-  /* The fields `searchRange', `entrySelector' and `rangeShift' are better */
-  /* ignored (they are traces of over-engineering in the TrueType          */
-  /* specification).                                                       */
-  /*                                                                       */
-  /* Each segment also has a signed `delta', as well as an optional offset */
-  /* within the `glyphIds' table.                                          */
-  /*                                                                       */
-  /* If a segment's idOffset is 0, the glyph index corresponding to any    */
-  /* charcode within the segment is obtained by adding the value of        */
-  /* `idDelta' directly to the charcode, modulo 65536.                     */
-  /*                                                                       */
-  /* Otherwise, a glyph index is taken from the glyph IDs sub-array for    */
-  /* the segment, and the value of `idDelta' is added to it.               */
-  /*                                                                       */
-  /*                                                                       */
-  /* Finally, note that a lot of fonts contain an invalid last segment,    */
-  /* where `start' and `end' are correctly set to 0xFFFF but both `delta'  */
-  /* and `offset' are incorrect (e.g., `opens___.ttf' which comes with     */
-  /* OpenOffice.org).  We need special code to deal with them correctly.   */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * TABLE OVERVIEW
+   * --------------
+   *
+   *   NAME          OFFSET         TYPE              DESCRIPTION
+   *
+   *   format        0              USHORT            must be 4
+   *   length        2              USHORT            table length
+   *                                                  in bytes
+   *   language      4              USHORT            Mac language code
+   *
+   *   segCountX2    6              USHORT            2*NUM_SEGS
+   *   searchRange   8              USHORT            2*(1 << LOG_SEGS)
+   *   entrySelector 10             USHORT            LOG_SEGS
+   *   rangeShift    12             USHORT            segCountX2 -
+   *                                                    searchRange
+   *
+   *   endCount      14             USHORT[NUM_SEGS]  end charcode for
+   *                                                  each segment; last
+   *                                                  is 0xFFFF
+   *
+   *   pad           14+NUM_SEGS*2  USHORT            padding
+   *
+   *   startCount    16+NUM_SEGS*2  USHORT[NUM_SEGS]  first charcode for
+   *                                                  each segment
+   *
+   *   idDelta       16+NUM_SEGS*4  SHORT[NUM_SEGS]   delta for each
+   *                                                  segment
+   *   idOffset      16+NUM_SEGS*6  SHORT[NUM_SEGS]   range offset for
+   *                                                  each segment; can be
+   *                                                  zero
+   *
+   *   glyphIds      16+NUM_SEGS*8  USHORT[]          array of glyph ID
+   *                                                  ranges
+   *
+   * Character codes are modelled by a series of ordered (increasing)
+   * intervals called segments.  Each segment has start and end codes,
+   * provided by the `startCount' and `endCount' arrays.  Segments must
+   * not overlap, and the last segment should always contain the value
+   * 0xFFFF for `endCount'.
+   *
+   * The fields `searchRange', `entrySelector' and `rangeShift' are better
+   * ignored (they are traces of over-engineering in the TrueType
+   * specification).
+   *
+   * Each segment also has a signed `delta', as well as an optional offset
+   * within the `glyphIds' table.
+   *
+   * If a segment's idOffset is 0, the glyph index corresponding to any
+   * charcode within the segment is obtained by adding the value of
+   * `idDelta' directly to the charcode, modulo 65536.
+   *
+   * Otherwise, a glyph index is taken from the glyph IDs sub-array for
+   * the segment, and the value of `idDelta' is added to it.
+   *
+   *
+   * Finally, note that a lot of fonts contain an invalid last segment,
+   * where `start' and `end' are correctly set to 0xFFFF but both `delta'
+   * and `offset' are incorrect (e.g., `opens___.ttf' which comes with
+   * OpenOffice.org).  We need special code to deal with them correctly.
+   */
 
 #ifdef TT_CONFIG_CMAP_FORMAT_4
 
@@ -1572,23 +1572,23 @@
   /*************************************************************************/
   /*************************************************************************/
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* TABLE OVERVIEW                                                        */
-  /* --------------                                                        */
-  /*                                                                       */
-  /*   NAME        OFFSET          TYPE             DESCRIPTION            */
-  /*                                                                       */
-  /*   format       0              USHORT           must be 6              */
-  /*   length       2              USHORT           table length in bytes  */
-  /*   language     4              USHORT           Mac language code      */
-  /*                                                                       */
-  /*   first        6              USHORT           first segment code     */
-  /*   count        8              USHORT           segment size in chars  */
-  /*   glyphIds     10             USHORT[count]    glyph IDs              */
-  /*                                                                       */
-  /* A very simplified segment mapping.                                    */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * TABLE OVERVIEW
+   * --------------
+   *
+   *   NAME        OFFSET          TYPE             DESCRIPTION
+   *
+   *   format       0              USHORT           must be 6
+   *   length       2              USHORT           table length in bytes
+   *   language     4              USHORT           Mac language code
+   *
+   *   first        6              USHORT           first segment code
+   *   count        8              USHORT           segment size in chars
+   *   glyphIds     10             USHORT[count]    glyph IDs
+   *
+   * A very simplified segment mapping.
+   */
 
 #ifdef TT_CONFIG_CMAP_FORMAT_6
 
@@ -1767,26 +1767,26 @@
   /*************************************************************************/
   /*************************************************************************/
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* TABLE OVERVIEW                                                        */
-  /* --------------                                                        */
-  /*                                                                       */
-  /*   NAME        OFFSET         TYPE        DESCRIPTION                  */
-  /*                                                                       */
-  /*   format      0              USHORT      must be 8                    */
-  /*   reserved    2              USHORT      reserved                     */
-  /*   length      4              ULONG       length in bytes              */
-  /*   language    8              ULONG       Mac language code            */
-  /*   is32        12             BYTE[8192]  32-bitness bitmap            */
-  /*   count       8204           ULONG       number of groups             */
-  /*                                                                       */
-  /* This header is followed by `count' groups of the following format:    */
-  /*                                                                       */
-  /*   start       0              ULONG       first charcode               */
-  /*   end         4              ULONG       last charcode                */
-  /*   startId     8              ULONG       start glyph ID for the group */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * TABLE OVERVIEW
+   * --------------
+   *
+   *   NAME        OFFSET         TYPE        DESCRIPTION
+   *
+   *   format      0              USHORT      must be 8
+   *   reserved    2              USHORT      reserved
+   *   length      4              ULONG       length in bytes
+   *   language    8              ULONG       Mac language code
+   *   is32        12             BYTE[8192]  32-bitness bitmap
+   *   count       8204           ULONG       number of groups
+   *
+   * This header is followed by `count' groups of the following format:
+   *
+   *   start       0              ULONG       first charcode
+   *   end         4              ULONG       last charcode
+   *   startId     8              ULONG       start glyph ID for the group
+   */
 
 #ifdef TT_CONFIG_CMAP_FORMAT_8
 
@@ -2036,22 +2036,22 @@
   /*************************************************************************/
   /*************************************************************************/
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* TABLE OVERVIEW                                                        */
-  /* --------------                                                        */
-  /*                                                                       */
-  /*   NAME      OFFSET  TYPE               DESCRIPTION                    */
-  /*                                                                       */
-  /*   format     0      USHORT             must be 10                     */
-  /*   reserved   2      USHORT             reserved                       */
-  /*   length     4      ULONG              length in bytes                */
-  /*   language   8      ULONG              Mac language code              */
-  /*                                                                       */
-  /*   start     12      ULONG              first char in range            */
-  /*   count     16      ULONG              number of chars in range       */
-  /*   glyphIds  20      USHORT[count]      glyph indices covered          */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * TABLE OVERVIEW
+   * --------------
+   *
+   *   NAME      OFFSET  TYPE               DESCRIPTION
+   *
+   *   format     0      USHORT             must be 10
+   *   reserved   2      USHORT             reserved
+   *   length     4      ULONG              length in bytes
+   *   language   8      ULONG              Mac language code
+   *
+   *   start     12      ULONG              first char in range
+   *   count     16      ULONG              number of chars in range
+   *   glyphIds  20      USHORT[count]      glyph indices covered
+   */
 
 #ifdef TT_CONFIG_CMAP_FORMAT_10
 
@@ -2208,26 +2208,26 @@
   /*************************************************************************/
   /*************************************************************************/
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* TABLE OVERVIEW                                                        */
-  /* --------------                                                        */
-  /*                                                                       */
-  /*   NAME        OFFSET     TYPE       DESCRIPTION                       */
-  /*                                                                       */
-  /*   format      0          USHORT     must be 12                        */
-  /*   reserved    2          USHORT     reserved                          */
-  /*   length      4          ULONG      length in bytes                   */
-  /*   language    8          ULONG      Mac language code                 */
-  /*   count       12         ULONG      number of groups                  */
-  /*               16                                                      */
-  /*                                                                       */
-  /* This header is followed by `count' groups of the following format:    */
-  /*                                                                       */
-  /*   start       0          ULONG      first charcode                    */
-  /*   end         4          ULONG      last charcode                     */
-  /*   startId     8          ULONG      start glyph ID for the group      */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * TABLE OVERVIEW
+   * --------------
+   *
+   *   NAME        OFFSET     TYPE       DESCRIPTION
+   *
+   *   format      0          USHORT     must be 12
+   *   reserved    2          USHORT     reserved
+   *   length      4          ULONG      length in bytes
+   *   language    8          ULONG      Mac language code
+   *   count       12         ULONG      number of groups
+   *               16
+   *
+   * This header is followed by `count' groups of the following format:
+   *
+   *   start       0          ULONG      first charcode
+   *   end         4          ULONG      last charcode
+   *   startId     8          ULONG      start glyph ID for the group
+   */
 
 #ifdef TT_CONFIG_CMAP_FORMAT_12
 
@@ -2564,26 +2564,26 @@
   /*************************************************************************/
   /*************************************************************************/
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* TABLE OVERVIEW                                                        */
-  /* --------------                                                        */
-  /*                                                                       */
-  /*   NAME        OFFSET     TYPE       DESCRIPTION                       */
-  /*                                                                       */
-  /*   format      0          USHORT     must be 13                        */
-  /*   reserved    2          USHORT     reserved                          */
-  /*   length      4          ULONG      length in bytes                   */
-  /*   language    8          ULONG      Mac language code                 */
-  /*   count       12         ULONG      number of groups                  */
-  /*               16                                                      */
-  /*                                                                       */
-  /* This header is followed by `count' groups of the following format:    */
-  /*                                                                       */
-  /*   start       0          ULONG      first charcode                    */
-  /*   end         4          ULONG      last charcode                     */
-  /*   glyphId     8          ULONG      glyph ID for the whole group      */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * TABLE OVERVIEW
+   * --------------
+   *
+   *   NAME        OFFSET     TYPE       DESCRIPTION
+   *
+   *   format      0          USHORT     must be 13
+   *   reserved    2          USHORT     reserved
+   *   length      4          ULONG      length in bytes
+   *   language    8          ULONG      Mac language code
+   *   count       12         ULONG      number of groups
+   *               16
+   *
+   * This header is followed by `count' groups of the following format:
+   *
+   *   start       0          ULONG      first charcode
+   *   end         4          ULONG      last charcode
+   *   glyphId     8          ULONG      glyph ID for the whole group
+   */
 
 #ifdef TT_CONFIG_CMAP_FORMAT_13
 
@@ -2890,58 +2890,58 @@
   /*************************************************************************/
   /*************************************************************************/
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* TABLE OVERVIEW                                                        */
-  /* --------------                                                        */
-  /*                                                                       */
-  /*   NAME         OFFSET  TYPE    DESCRIPTION                            */
-  /*                                                                       */
-  /*   format         0     USHORT  must be 14                             */
-  /*   length         2     ULONG   table length in bytes                  */
-  /*   numSelector    6     ULONG   number of variation sel. records       */
-  /*                                                                       */
-  /* Followed by numSelector records, each of which looks like             */
-  /*                                                                       */
-  /*   varSelector    0     UINT24  Unicode codepoint of sel.              */
-  /*   defaultOff     3     ULONG   offset to a default UVS table          */
-  /*                                describing any variants to be found in */
-  /*                                the normal Unicode subtable.           */
-  /*   nonDefOff      7     ULONG   offset to a non-default UVS table      */
-  /*                                describing any variants not in the     */
-  /*                                standard cmap, with GIDs here          */
-  /* (either offset may be 0 NULL)                                         */
-  /*                                                                       */
-  /* Selectors are sorted by code point.                                   */
-  /*                                                                       */
-  /* A default Unicode Variation Selector (UVS) subtable is just a list of */
-  /* ranges of code points which are to be found in the standard cmap.  No */
-  /* glyph IDs (GIDs) here.                                                */
-  /*                                                                       */
-  /*   numRanges      0     ULONG   number of ranges following             */
-  /*                                                                       */
-  /* A range looks like                                                    */
-  /*                                                                       */
-  /*   uniStart       0     UINT24  code point of the first character in   */
-  /*                                this range                             */
-  /*   additionalCnt  3     UBYTE   count of additional characters in this */
-  /*                                range (zero means a range of a single  */
-  /*                                character)                             */
-  /*                                                                       */
-  /* Ranges are sorted by `uniStart'.                                      */
-  /*                                                                       */
-  /* A non-default Unicode Variation Selector (UVS) subtable is a list of  */
-  /* mappings from codepoint to GID.                                       */
-  /*                                                                       */
-  /*   numMappings    0     ULONG   number of mappings                     */
-  /*                                                                       */
-  /* A range looks like                                                    */
-  /*                                                                       */
-  /*   uniStart       0     UINT24  code point of the first character in   */
-  /*                                this range                             */
-  /*   GID            3     USHORT  and its GID                            */
-  /*                                                                       */
-  /* Ranges are sorted by `uniStart'.                                      */
+  /**************************************************************************
+   *
+   * TABLE OVERVIEW
+   * --------------
+   *
+   *   NAME         OFFSET  TYPE    DESCRIPTION
+   *
+   *   format         0     USHORT  must be 14
+   *   length         2     ULONG   table length in bytes
+   *   numSelector    6     ULONG   number of variation sel. records
+   *
+   * Followed by numSelector records, each of which looks like
+   *
+   *   varSelector    0     UINT24  Unicode codepoint of sel.
+   *   defaultOff     3     ULONG   offset to a default UVS table
+   *                                describing any variants to be found in
+   *                                the normal Unicode subtable.
+   *   nonDefOff      7     ULONG   offset to a non-default UVS table
+   *                                describing any variants not in the
+   *                                standard cmap, with GIDs here
+   * (either offset may be 0 NULL)
+   *
+   * Selectors are sorted by code point.
+   *
+   * A default Unicode Variation Selector (UVS) subtable is just a list of
+   * ranges of code points which are to be found in the standard cmap.  No
+   * glyph IDs (GIDs) here.
+   *
+   *   numRanges      0     ULONG   number of ranges following
+   *
+   * A range looks like
+   *
+   *   uniStart       0     UINT24  code point of the first character in
+   *                                this range
+   *   additionalCnt  3     UBYTE   count of additional characters in this
+   *                                range (zero means a range of a single
+   *                                character)
+   *
+   * Ranges are sorted by `uniStart'.
+   *
+   * A non-default Unicode Variation Selector (UVS) subtable is a list of
+   * mappings from codepoint to GID.
+   *
+   *   numMappings    0     ULONG   number of mappings
+   *
+   * A range looks like
+   *
+   *   uniStart       0     UINT24  code point of the first character in
+   *                                this range
+   *   GID            3     USHORT  and its GID
+   *
+   */
 
 #ifdef TT_CONFIG_CMAP_FORMAT_14
 
diff --git a/src/sfnt/ttcmap.h b/src/sfnt/ttcmap.h
index ca4252f..14a700d 100644
--- a/src/sfnt/ttcmap.h
+++ b/src/sfnt/ttcmap.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttcmap.h                                                               */
-/*                                                                         */
-/*    TrueType character mapping table (cmap) support (specification).     */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ttcmap.h
+ *
+ *   TrueType character mapping table (cmap) support (specification).
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef TTCMAP_H_
diff --git a/src/sfnt/ttcmapc.h b/src/sfnt/ttcmapc.h
index 4980e9d..11d3e98 100644
--- a/src/sfnt/ttcmapc.h
+++ b/src/sfnt/ttcmapc.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttcmapc.h                                                              */
-/*                                                                         */
-/*    TT CMAP classes definitions (specification only).                    */
-/*                                                                         */
-/*  Copyright 2009-2018 by                                                 */
-/*  Oran Agra and Mickey Gabel.                                            */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ttcmapc.h
+ *
+ *   TT CMAP classes definitions (specification only).
+ *
+ * Copyright 2009-2018 by
+ * Oran Agra and Mickey Gabel.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifdef TT_CONFIG_CMAP_FORMAT_0
diff --git a/src/sfnt/ttcolr.c b/src/sfnt/ttcolr.c
index 0fb3324..bfe8a39 100644
--- a/src/sfnt/ttcolr.c
+++ b/src/sfnt/ttcolr.c
@@ -1,31 +1,31 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttcolr.c                                                               */
-/*                                                                         */
-/*    TrueType and OpenType color outline support.                         */
-/*                                                                         */
-/*  Copyright 2018 by                                                      */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  Written by Shao Yu Zhang <address@hidden>.                           */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* `COLR' and `CPAL' table specification:                                */
-  /*                                                                       */
-  /*   https://www.microsoft.com/typography/otspec/colr.htm                */
-  /*   https://www.microsoft.com/typography/otspec/cpal.htm                */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * ttcolr.c
+ *
+ *   TrueType and OpenType color outline support.
+ *
+ * Copyright 2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * Written by Shao Yu Zhang <address@hidden>.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+
+  /**************************************************************************
+   *
+   * `COLR' and `CPAL' table specification:
+   *
+   *   https://www.microsoft.com/typography/otspec/colr.htm
+   *   https://www.microsoft.com/typography/otspec/cpal.htm
+   *
+   */
 
 
 #include <ft2build.h>
@@ -100,12 +100,12 @@
   } ColrCpal;
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_ttcolrcpal
 
diff --git a/src/sfnt/ttcolr.h b/src/sfnt/ttcolr.h
index bd33f69..1e1b4a2 100644
--- a/src/sfnt/ttcolr.h
+++ b/src/sfnt/ttcolr.h
@@ -1,21 +1,21 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttsbit.h                                                               */
-/*                                                                         */
-/*    TrueType and OpenType color outline support (specification).         */
-/*                                                                         */
-/*  Copyright 2018 by                                                      */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  Written by Shao Yu Zhang <address@hidden>.                           */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ttsbit.h
+ *
+ *   TrueType and OpenType color outline support (specification).
+ *
+ * Copyright 2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * Written by Shao Yu Zhang <address@hidden>.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef __TTCOLR_H__
diff --git a/src/sfnt/ttkern.c b/src/sfnt/ttkern.c
index 68f15a2..48ad417 100644
--- a/src/sfnt/ttkern.c
+++ b/src/sfnt/ttkern.c
@@ -1,20 +1,20 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttkern.c                                                               */
-/*                                                                         */
-/*    Load the basic TrueType kerning table.  This doesn't handle          */
-/*    kerning data within the GPOS table at the moment.                    */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ttkern.c
+ *
+ *   Load the basic TrueType kerning table.  This doesn't handle
+ *   kerning data within the GPOS table at the moment.
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -26,12 +26,12 @@
 #include "sferrors.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_ttkern
 
@@ -127,8 +127,8 @@
       avail |= mask;
 
       /*
-       *  Now check whether the pairs in this table are ordered.
-       *  We then can use binary search.
+       * Now check whether the pairs in this table are ordered.
+       * We then can use binary search.
        */
       if ( num_pairs > 0 )
       {
@@ -283,8 +283,8 @@
         break;
 
        /*
-        *  We don't support format 2 because we haven't seen a single font
-        *  using it in real life...
+        * We don't support format 2 because we haven't seen a single font
+        * using it in real life...
         */
 
       default:
diff --git a/src/sfnt/ttkern.h b/src/sfnt/ttkern.h
index 4e45d09..c26bb8d 100644
--- a/src/sfnt/ttkern.h
+++ b/src/sfnt/ttkern.h
@@ -1,20 +1,20 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttkern.h                                                               */
-/*                                                                         */
-/*    Load the basic TrueType kerning table.  This doesn't handle          */
-/*    kerning data within the GPOS table at the moment.                    */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ttkern.h
+ *
+ *   Load the basic TrueType kerning table.  This doesn't handle
+ *   kerning data within the GPOS table at the moment.
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef TTKERN_H_
diff --git a/src/sfnt/ttload.c b/src/sfnt/ttload.c
index a86a546..f3fed8f 100644
--- a/src/sfnt/ttload.c
+++ b/src/sfnt/ttload.c
@@ -1,20 +1,20 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttload.c                                                               */
-/*                                                                         */
-/*    Load the basic TrueType tables, i.e., tables that can be either in   */
-/*    TTF or OTF fonts (body).                                             */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ttload.c
+ *
+ *   Load the basic TrueType tables, i.e., tables that can be either in
+ *   TTF or OTF fonts (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -26,32 +26,34 @@
 #include "sferrors.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_ttload
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_face_lookup_table                                               */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Looks for a TrueType table by name.                                */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face :: A face object handle.                                      */
-  /*                                                                       */
-  /*    tag  :: The searched tag.                                          */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    A pointer to the table directory entry.  0 if not found.           */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_face_lookup_table
+   *
+   * @Description:
+   *   Looks for a TrueType table by name.
+   *
+   * @Input:
+   *   face ::
+   *     A face object handle.
+   *
+   *   tag ::
+   *     The searched tag.
+   *
+   * @Return:
+   *   A pointer to the table directory entry.  0 if not found.
+   */
   FT_LOCAL_DEF( TT_Table  )
   tt_face_lookup_table( TT_Face   face,
                         FT_ULong  tag  )
@@ -101,27 +103,31 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_face_goto_table                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Looks for a TrueType table by name, then seek a stream to it.      */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face   :: A face object handle.                                    */
-  /*                                                                       */
-  /*    tag    :: The searched tag.                                        */
-  /*                                                                       */
-  /*    stream :: The stream to seek when the table is found.              */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    length :: The length of the table if found, undefined otherwise.   */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_face_goto_table
+   *
+   * @Description:
+   *   Looks for a TrueType table by name, then seek a stream to it.
+   *
+   * @Input:
+   *   face ::
+   *     A face object handle.
+   *
+   *   tag ::
+   *     The searched tag.
+   *
+   *   stream ::
+   *     The stream to seek when the table is found.
+   *
+   * @Output:
+   *   length ::
+   *     The length of the table if found, undefined otherwise.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   tt_face_goto_table( TT_Face    face,
                       FT_ULong   tag,
@@ -309,28 +315,31 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_face_load_font_dir                                              */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Loads the header of a SFNT font file.                              */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face       :: A handle to the target face object.                  */
-  /*                                                                       */
-  /*    stream     :: The input stream.                                    */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    sfnt       :: The SFNT header.                                     */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The stream cursor must be at the beginning of the font directory.  */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_face_load_font_dir
+   *
+   * @Description:
+   *   Loads the header of a SFNT font file.
+   *
+   * @Input:
+   *   face ::
+   *     A handle to the target face object.
+   *
+   *   stream ::
+   *     The input stream.
+   *
+   * @Output:
+   *   sfnt ::
+   *     The SFNT header.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   *
+   * @Note:
+   *   The stream cursor must be at the beginning of the font directory.
+   */
   FT_LOCAL_DEF( FT_Error )
   tt_face_load_font_dir( TT_Face    face,
                          FT_Stream  stream )
@@ -496,46 +505,51 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_face_load_any                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Loads any font table into client memory.                           */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face   :: The face object to look for.                             */
-  /*                                                                       */
-  /*    tag    :: The tag of table to load.  Use the value 0 if you want   */
-  /*              to access the whole font file, else set this parameter   */
-  /*              to a valid TrueType table tag that you can forge with    */
-  /*              the MAKE_TT_TAG macro.                                   */
-  /*                                                                       */
-  /*    offset :: The starting offset in the table (or the file if         */
-  /*              tag == 0).                                               */
-  /*                                                                       */
-  /*    length :: The address of the decision variable:                    */
-  /*                                                                       */
-  /*                If length == NULL:                                     */
-  /*                  Loads the whole table.  Returns an error if          */
-  /*                  `offset' == 0!                                       */
-  /*                                                                       */
-  /*                If *length == 0:                                       */
-  /*                  Exits immediately; returning the length of the given */
-  /*                  table or of the font file, depending on the value of */
-  /*                  `tag'.                                               */
-  /*                                                                       */
-  /*                If *length != 0:                                       */
-  /*                  Loads the next `length' bytes of table or font,      */
-  /*                  starting at offset `offset' (in table or font too).  */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    buffer :: The address of target buffer.                            */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_face_load_any
+   *
+   * @Description:
+   *   Loads any font table into client memory.
+   *
+   * @Input:
+   *   face ::
+   *     The face object to look for.
+   *
+   *   tag ::
+   *     The tag of table to load.  Use the value 0 if you want
+   *     to access the whole font file, else set this parameter
+   *     to a valid TrueType table tag that you can forge with
+   *     the MAKE_TT_TAG macro.
+   *
+   *   offset ::
+   *     The starting offset in the table (or the file if
+   *     tag == 0).
+   *
+   *   length ::
+   *     The address of the decision variable:
+   *
+   *     If length == NULL:
+   *       Loads the whole table.  Returns an error if
+   *       `offset' == 0!
+   *
+   *     If *length == 0:
+   *       Exits immediately; returning the length of the given
+   *       table or of the font file, depending on the value of
+   *       `tag'.
+   *
+   *     If *length != 0:
+   *       Loads the next `length' bytes of table or font,
+   *       starting at offset `offset' (in table or font too).
+   *
+   * @Output:
+   *   buffer ::
+   *     The address of target buffer.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   tt_face_load_any( TT_Face    face,
                     FT_ULong   tag,
@@ -586,22 +600,24 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_face_load_generic_header                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Loads the TrueType table `head' or `bhed'.                         */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face   :: A handle to the target face object.                      */
-  /*                                                                       */
-  /*    stream :: The input stream.                                        */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_face_load_generic_header
+   *
+   * @Description:
+   *   Loads the TrueType table `head' or `bhed'.
+   *
+   * @Input:
+   *   face ::
+   *     A handle to the target face object.
+   *
+   *   stream ::
+   *     The input stream.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   static FT_Error
   tt_face_load_generic_header( TT_Face    face,
                                FT_Stream  stream,
@@ -676,22 +692,24 @@
 #endif /* TT_CONFIG_OPTION_EMBEDDED_BITMAPS */
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_face_load_maxp                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Loads the maximum profile into a face object.                      */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face   :: A handle to the target face object.                      */
-  /*                                                                       */
-  /*    stream :: The input stream.                                        */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_face_load_maxp
+   *
+   * @Description:
+   *   Loads the maximum profile into a face object.
+   *
+   * @Input:
+   *   face ::
+   *     A handle to the target face object.
+   *
+   *   stream ::
+   *     The input stream.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   tt_face_load_maxp( TT_Face    face,
                      FT_Stream  stream )
@@ -784,22 +802,24 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_face_load_name                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Loads the name records.                                            */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face   :: A handle to the target face object.                      */
-  /*                                                                       */
-  /*    stream :: The input stream.                                        */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_face_load_name
+   *
+   * @Description:
+   *   Loads the name records.
+   *
+   * @Input:
+   *   face ::
+   *     A handle to the target face object.
+   *
+   *   stream ::
+   *     The input stream.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   tt_face_load_name( TT_Face    face,
                      FT_Stream  stream )
@@ -981,17 +1001,18 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_face_free_name                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Frees the name records.                                            */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face :: A handle to the target face object.                        */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_face_free_name
+   *
+   * @Description:
+   *   Frees the name records.
+   *
+   * @Input:
+   *   face ::
+   *     A handle to the target face object.
+   */
   FT_LOCAL_DEF( void )
   tt_face_free_name( TT_Face  face )
   {
@@ -1030,23 +1051,25 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_face_load_cmap                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Loads the cmap directory in a face object.  The cmaps themselves   */
-  /*    are loaded on demand in the `ttcmap.c' module.                     */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face   :: A handle to the target face object.                      */
-  /*                                                                       */
-  /*    stream :: A handle to the input stream.                            */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_face_load_cmap
+   *
+   * @Description:
+   *   Loads the cmap directory in a face object.  The cmaps themselves
+   *   are loaded on demand in the `ttcmap.c' module.
+   *
+   * @Input:
+   *   face ::
+   *     A handle to the target face object.
+   *
+   *   stream ::
+   *     A handle to the input stream.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
 
   FT_LOCAL_DEF( FT_Error )
   tt_face_load_cmap( TT_Face    face,
@@ -1068,22 +1091,24 @@
 
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_face_load_os2                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Loads the OS2 table.                                               */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face   :: A handle to the target face object.                      */
-  /*                                                                       */
-  /*    stream :: A handle to the input stream.                            */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_face_load_os2
+   *
+   * @Description:
+   *   Loads the OS2 table.
+   *
+   * @Input:
+   *   face ::
+   *     A handle to the target face object.
+   *
+   *   stream ::
+   *     A handle to the input stream.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   tt_face_load_os2( TT_Face    face,
                     FT_Stream  stream )
@@ -1228,22 +1253,24 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_face_load_postscript                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Loads the Postscript table.                                        */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face   :: A handle to the target face object.                      */
-  /*                                                                       */
-  /*    stream :: A handle to the input stream.                            */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_face_load_postscript
+   *
+   * @Description:
+   *   Loads the Postscript table.
+   *
+   * @Input:
+   *   face ::
+   *     A handle to the target face object.
+   *
+   *   stream ::
+   *     A handle to the input stream.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   tt_face_load_post( TT_Face    face,
                      FT_Stream  stream )
@@ -1288,22 +1315,24 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_face_load_pclt                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Loads the PCL 5 Table.                                             */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face   :: A handle to the target face object.                      */
-  /*                                                                       */
-  /*    stream :: A handle to the input stream.                            */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_face_load_pclt
+   *
+   * @Description:
+   *   Loads the PCL 5 Table.
+   *
+   * @Input:
+   *   face ::
+   *     A handle to the target face object.
+   *
+   *   stream ::
+   *     A handle to the input stream.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   tt_face_load_pclt( TT_Face    face,
                      FT_Stream  stream )
@@ -1349,22 +1378,24 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_face_load_gasp                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Loads the `gasp' table into a face object.                         */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face   :: A handle to the target face object.                      */
-  /*                                                                       */
-  /*    stream :: The input stream.                                        */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_face_load_gasp
+   *
+   * @Description:
+   *   Loads the `gasp' table into a face object.
+   *
+   * @Input:
+   *   face ::
+   *     A handle to the target face object.
+   *
+   *   stream ::
+   *     The input stream.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   tt_face_load_gasp( TT_Face    face,
                      FT_Stream  stream )
diff --git a/src/sfnt/ttload.h b/src/sfnt/ttload.h
index f94be8b..21d9cb6 100644
--- a/src/sfnt/ttload.h
+++ b/src/sfnt/ttload.h
@@ -1,20 +1,20 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttload.h                                                               */
-/*                                                                         */
-/*    Load the basic TrueType tables, i.e., tables that can be either in   */
-/*    TTF or OTF fonts (specification).                                    */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ttload.h
+ *
+ *   Load the basic TrueType tables, i.e., tables that can be either in
+ *   TTF or OTF fonts (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef TTLOAD_H_
diff --git a/src/sfnt/ttmtx.c b/src/sfnt/ttmtx.c
index 6ddda95..8edf4e6 100644
--- a/src/sfnt/ttmtx.c
+++ b/src/sfnt/ttmtx.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttmtx.c                                                                */
-/*                                                                         */
-/*    Load the metrics tables common to TTF and OTF fonts (body).          */
-/*                                                                         */
-/*  Copyright 2006-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ttmtx.c
+ *
+ *   Load the metrics tables common to TTF and OTF fonts (body).
+ *
+ * Copyright 2006-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -38,34 +38,37 @@
   /*            both the horizontal and vertical headers.               */
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_ttmtx
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_face_load_hmtx                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Load the `hmtx' or `vmtx' table into a face object.                */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face     :: A handle to the target face object.                    */
-  /*                                                                       */
-  /*    stream   :: The input stream.                                      */
-  /*                                                                       */
-  /*    vertical :: A boolean flag.  If set, load `vmtx'.                  */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_face_load_hmtx
+   *
+   * @Description:
+   *   Load the `hmtx' or `vmtx' table into a face object.
+   *
+   * @Input:
+   *   face ::
+   *     A handle to the target face object.
+   *
+   *   stream ::
+   *     The input stream.
+   *
+   *   vertical ::
+   *     A boolean flag.  If set, load `vmtx'.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   tt_face_load_hmtx( TT_Face    face,
                      FT_Stream  stream,
@@ -102,24 +105,27 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_face_load_hhea                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Load the `hhea' or 'vhea' table into a face object.                */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face     :: A handle to the target face object.                    */
-  /*                                                                       */
-  /*    stream   :: The input stream.                                      */
-  /*                                                                       */
-  /*    vertical :: A boolean flag.  If set, load `vhea'.                  */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_face_load_hhea
+   *
+   * @Description:
+   *   Load the `hhea' or 'vhea' table into a face object.
+   *
+   * @Input:
+   *   face ::
+   *     A handle to the target face object.
+   *
+   *   stream ::
+   *     The input stream.
+   *
+   *   vertical ::
+   *     A boolean flag.  If set, load `vhea'.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   tt_face_load_hhea( TT_Face    face,
                      FT_Stream  stream,
@@ -190,30 +196,35 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_face_get_metrics                                                */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Return the horizontal or vertical metrics in font units for a      */
-  /*    given glyph.  The values are the left side bearing (top side       */
-  /*    bearing for vertical metrics) and advance width (advance height    */
-  /*    for vertical metrics).                                             */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face     :: A pointer to the TrueType face structure.              */
-  /*                                                                       */
-  /*    vertical :: If set to TRUE, get vertical metrics.                  */
-  /*                                                                       */
-  /*    gindex   :: The glyph index.                                       */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    abearing :: The bearing, either left side or top side.             */
-  /*                                                                       */
-  /*    aadvance :: The advance width or advance height, depending on      */
-  /*                the `vertical' flag.                                   */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_face_get_metrics
+   *
+   * @Description:
+   *   Return the horizontal or vertical metrics in font units for a
+   *   given glyph.  The values are the left side bearing (top side
+   *   bearing for vertical metrics) and advance width (advance height
+   *   for vertical metrics).
+   *
+   * @Input:
+   *   face ::
+   *     A pointer to the TrueType face structure.
+   *
+   *   vertical ::
+   *     If set to TRUE, get vertical metrics.
+   *
+   *   gindex ::
+   *     The glyph index.
+   *
+   * @Output:
+   *   abearing ::
+   *     The bearing, either left side or top side.
+   *
+   *   aadvance ::
+   *     The advance width or advance height, depending on
+   *     the `vertical' flag.
+   */
   FT_LOCAL_DEF( void )
   tt_face_get_metrics( TT_Face     face,
                        FT_Bool     vertical,
diff --git a/src/sfnt/ttmtx.h b/src/sfnt/ttmtx.h
index ab00acd..f360b45 100644
--- a/src/sfnt/ttmtx.h
+++ b/src/sfnt/ttmtx.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttmtx.h                                                                */
-/*                                                                         */
-/*    Load the metrics tables common to TTF and OTF fonts (specification). */
-/*                                                                         */
-/*  Copyright 2006-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ttmtx.h
+ *
+ *   Load the metrics tables common to TTF and OTF fonts (specification).
+ *
+ * Copyright 2006-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef TTMTX_H_
diff --git a/src/sfnt/ttpost.c b/src/sfnt/ttpost.c
index 6de99ef..7148301 100644
--- a/src/sfnt/ttpost.c
+++ b/src/sfnt/ttpost.c
@@ -1,28 +1,28 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttpost.c                                                               */
-/*                                                                         */
-/*    PostScript name table processing for TrueType and OpenType fonts     */
-/*    (body).                                                              */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* The post table is not completely loaded by the core engine.  This     */
-  /* file loads the missing PS glyph names and implements an API to access */
-  /* them.                                                                 */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * ttpost.c
+ *
+ *   PostScript name table processing for TrueType and OpenType fonts
+ *   (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+  /**************************************************************************
+   *
+   * The post table is not completely loaded by the core engine.  This
+   * file loads the missing PS glyph names and implements an API to access
+   * them.
+   *
+   */
 
 
 #include <ft2build.h>
@@ -38,12 +38,12 @@
 #include "sferrors.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_ttpost
 
@@ -459,28 +459,31 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_face_get_ps_name                                                */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Get the PostScript glyph name of a glyph.                          */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face   :: A handle to the parent face.                             */
-  /*                                                                       */
-  /*    idx    :: The glyph index.                                         */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    PSname :: The address of a string pointer.  Undefined in case of   */
-  /*              error, otherwise it is a pointer to the glyph name.      */
-  /*                                                                       */
-  /*              You must not modify the returned string!                 */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_face_get_ps_name
+   *
+   * @Description:
+   *   Get the PostScript glyph name of a glyph.
+   *
+   * @Input:
+   *   face ::
+   *     A handle to the parent face.
+   *
+   *   idx ::
+   *     The glyph index.
+   *
+   * @InOut:
+   *   PSname ::
+   *     The address of a string pointer.  Undefined in case of
+   *     error, otherwise it is a pointer to the glyph name.
+   *
+   *     You must not modify the returned string!
+   *
+   * @Output:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   tt_face_get_ps_name( TT_Face      face,
                        FT_UInt      idx,
diff --git a/src/sfnt/ttpost.h b/src/sfnt/ttpost.h
index 3bec07e..a6f2cf2 100644
--- a/src/sfnt/ttpost.h
+++ b/src/sfnt/ttpost.h
@@ -1,20 +1,20 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttpost.h                                                               */
-/*                                                                         */
-/*    PostScript name table processing for TrueType and OpenType fonts     */
-/*    (specification).                                                     */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ttpost.h
+ *
+ *   PostScript name table processing for TrueType and OpenType fonts
+ *   (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef TTPOST_H_
diff --git a/src/sfnt/ttsbit.c b/src/sfnt/ttsbit.c
index 33b8640..322c000 100644
--- a/src/sfnt/ttsbit.c
+++ b/src/sfnt/ttsbit.c
@@ -1,22 +1,22 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttsbit.c                                                               */
-/*                                                                         */
-/*    TrueType and OpenType embedded bitmap support (body).                */
-/*                                                                         */
-/*  Copyright 2005-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  Copyright 2013 by Google, Inc.                                         */
-/*  Google Author(s): Behdad Esfahbod.                                     */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ttsbit.c
+ *
+ *   TrueType and OpenType embedded bitmap support (body).
+ *
+ * Copyright 2005-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * Copyright 2013 by Google, Inc.
+ * Google Author(s): Behdad Esfahbod.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -36,12 +36,12 @@
 #include "pngshim.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_ttsbit
 
@@ -129,8 +129,8 @@
         }
 
         /*
-         *  Count the number of strikes available in the table.  We are a bit
-         *  paranoid there and don't trust the data.
+         * Count the number of strikes available in the table.  We are a bit
+         * paranoid there and don't trust the data.
          */
         count = (FT_UInt)num_strikes;
         if ( 8 + 48UL * count > table_size )
@@ -182,8 +182,8 @@
                       " expect bad rendering results\n" ));
 
         /*
-         *  Count the number of strikes available in the table.  We are a bit
-         *  paranoid there and don't trust the data.
+         * Count the number of strikes available in the table.  We are a bit
+         * paranoid there and don't trust the data.
          */
         count = (FT_UInt)num_strikes;
         if ( 8 + 4UL * count > table_size )
diff --git a/src/sfnt/ttsbit.h b/src/sfnt/ttsbit.h
index ce2af3c..99bf560 100644
--- a/src/sfnt/ttsbit.h
+++ b/src/sfnt/ttsbit.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttsbit.h                                                               */
-/*                                                                         */
-/*    TrueType and OpenType embedded bitmap support (specification).       */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ttsbit.h
+ *
+ *   TrueType and OpenType embedded bitmap support (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef TTSBIT_H_
diff --git a/src/smooth/ftgrays.c b/src/smooth/ftgrays.c
index afc0198..1ecb499 100644
--- a/src/smooth/ftgrays.c
+++ b/src/smooth/ftgrays.c
@@ -1,92 +1,92 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftgrays.c                                                              */
-/*                                                                         */
-/*    A new `perfect' anti-aliasing renderer (body).                       */
-/*                                                                         */
-/*  Copyright 2000-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This file can be compiled without the rest of the FreeType engine, by */
-  /* defining the STANDALONE_ macro when compiling it.  You also need to   */
-  /* put the files `ftgrays.h' and `ftimage.h' into the current            */
-  /* compilation directory.  Typically, you could do something like        */
-  /*                                                                       */
-  /* - copy `src/smooth/ftgrays.c' (this file) to your current directory   */
-  /*                                                                       */
-  /* - copy `include/freetype/ftimage.h' and `src/smooth/ftgrays.h' to the */
-  /*   same directory                                                      */
-  /*                                                                       */
-  /* - compile `ftgrays' with the STANDALONE_ macro defined, as in         */
-  /*                                                                       */
-  /*     cc -c -DSTANDALONE_ ftgrays.c                                     */
-  /*                                                                       */
-  /* The renderer can be initialized with a call to                        */
-  /* `ft_gray_raster.raster_new'; an anti-aliased bitmap can be generated  */
-  /* with a call to `ft_gray_raster.raster_render'.                        */
-  /*                                                                       */
-  /* See the comments and documentation in the file `ftimage.h' for more   */
-  /* details on how the raster works.                                      */
-  /*                                                                       */
-  /*************************************************************************/
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This is a new anti-aliasing scan-converter for FreeType 2.  The       */
-  /* algorithm used here is _very_ different from the one in the standard  */
-  /* `ftraster' module.  Actually, `ftgrays' computes the _exact_          */
-  /* coverage of the outline on each pixel cell.                           */
-  /*                                                                       */
-  /* It is based on ideas that I initially found in Raph Levien's          */
-  /* excellent LibArt graphics library (see http://www.levien.com/libart   */
-  /* for more information, though the web pages do not tell anything       */
-  /* about the renderer; you'll have to dive into the source code to       */
-  /* understand how it works).                                             */
-  /*                                                                       */
-  /* Note, however, that this is a _very_ different implementation         */
-  /* compared to Raph's.  Coverage information is stored in a very         */
-  /* different way, and I don't use sorted vector paths.  Also, it doesn't */
-  /* use floating point values.                                            */
-  /*                                                                       */
-  /* This renderer has the following advantages:                           */
-  /*                                                                       */
-  /* - It doesn't need an intermediate bitmap.  Instead, one can supply a  */
-  /*   callback function that will be called by the renderer to draw gray  */
-  /*   spans on any target surface.  You can thus do direct composition on */
-  /*   any kind of bitmap, provided that you give the renderer the right   */
-  /*   callback.                                                           */
-  /*                                                                       */
-  /* - A perfect anti-aliaser, i.e., it computes the _exact_ coverage on   */
-  /*   each pixel cell.                                                    */
-  /*                                                                       */
-  /* - It performs a single pass on the outline (the `standard' FT2        */
-  /*   renderer makes two passes).                                         */
-  /*                                                                       */
-  /* - It can easily be modified to render to _any_ number of gray levels  */
-  /*   cheaply.                                                            */
-  /*                                                                       */
-  /* - For small (< 20) pixel sizes, it is faster than the standard        */
-  /*   renderer.                                                           */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+/****************************************************************************
+ *
+ * ftgrays.c
+ *
+ *   A new `perfect' anti-aliasing renderer (body).
+ *
+ * Copyright 2000-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+  /**************************************************************************
+   *
+   * This file can be compiled without the rest of the FreeType engine, by
+   * defining the STANDALONE_ macro when compiling it.  You also need to
+   * put the files `ftgrays.h' and `ftimage.h' into the current
+   * compilation directory.  Typically, you could do something like
+   *
+   * - copy `src/smooth/ftgrays.c' (this file) to your current directory
+   *
+   * - copy `include/freetype/ftimage.h' and `src/smooth/ftgrays.h' to the
+   *   same directory
+   *
+   * - compile `ftgrays' with the STANDALONE_ macro defined, as in
+   *
+   *     cc -c -DSTANDALONE_ ftgrays.c
+   *
+   * The renderer can be initialized with a call to
+   * `ft_gray_raster.raster_new'; an anti-aliased bitmap can be generated
+   * with a call to `ft_gray_raster.raster_render'.
+   *
+   * See the comments and documentation in the file `ftimage.h' for more
+   * details on how the raster works.
+   *
+   */
+
+  /**************************************************************************
+   *
+   * This is a new anti-aliasing scan-converter for FreeType 2.  The
+   * algorithm used here is _very_ different from the one in the standard
+   * `ftraster' module.  Actually, `ftgrays' computes the _exact_
+   * coverage of the outline on each pixel cell.
+   *
+   * It is based on ideas that I initially found in Raph Levien's
+   * excellent LibArt graphics library (see http://www.levien.com/libart
+   * for more information, though the web pages do not tell anything
+   * about the renderer; you'll have to dive into the source code to
+   * understand how it works).
+   *
+   * Note, however, that this is a _very_ different implementation
+   * compared to Raph's.  Coverage information is stored in a very
+   * different way, and I don't use sorted vector paths.  Also, it doesn't
+   * use floating point values.
+   *
+   * This renderer has the following advantages:
+   *
+   * - It doesn't need an intermediate bitmap.  Instead, one can supply a
+   *   callback function that will be called by the renderer to draw gray
+   *   spans on any target surface.  You can thus do direct composition on
+   *   any kind of bitmap, provided that you give the renderer the right
+   *   callback.
+   *
+   * - A perfect anti-aliaser, i.e., it computes the _exact_ coverage on
+   *   each pixel cell.
+   *
+   * - It performs a single pass on the outline (the `standard' FT2
+   *   renderer makes two passes).
+   *
+   * - It can easily be modified to render to _any_ number of gray levels
+   *   cheaply.
+   *
+   * - For small (< 20) pixel sizes, it is faster than the standard
+   *   renderer.
+   *
+   */
+
+
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_smooth
 
@@ -112,9 +112,9 @@
 
 
   /*
-   *  Approximate sqrt(x*x+y*y) using the `alpha max plus beta min'
-   *  algorithm.  We use alpha = 1, beta = 3/8, giving us results with a
-   *  largest error less than 7% compared to the exact value.
+   * Approximate sqrt(x*x+y*y) using the `alpha max plus beta min'
+   * algorithm.  We use alpha = 1, beta = 3/8, giving us results with a
+   * largest error less than 7% compared to the exact value.
    */
 #define FT_HYPOT( x, y )                 \
           ( x = FT_ABS( x ),             \
@@ -393,10 +393,10 @@ typedef ptrdiff_t  FT_PtrDist;
     ( sizeof( long ) * FT_CHAR_BIT - PIXEL_BITS ) )
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /*   TYPE DEFINITIONS                                                    */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * TYPE DEFINITIONS
+   */
 
   /* don't change the following types to FT_Int or FT_Pos, since we might */
   /* need to define them to "float" or "double" when experimenting with   */
@@ -514,10 +514,10 @@ typedef ptrdiff_t  FT_PtrDist;
 #endif /* FT_DEBUG_LEVEL_TRACE */
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Record the current cell in the table.                                 */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * Record the current cell in the table.
+   */
   static void
   gray_record_cell( RAS_ARG )
   {
@@ -559,10 +559,10 @@ typedef ptrdiff_t  FT_PtrDist;
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Set the current cell to a new position.                               */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * Set the current cell to a new position.
+   */
   static void
   gray_set_cell( RAS_ARG_ TCoord  ex,
                           TCoord  ey )
@@ -596,10 +596,10 @@ typedef ptrdiff_t  FT_PtrDist;
 
 #ifndef FT_LONG64
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Render a scanline as one or more cells.                               */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * Render a scanline as one or more cells.
+   */
   static void
   gray_render_scanline( RAS_ARG_ TCoord  ey,
                                  TPos    x1,
@@ -694,10 +694,10 @@ typedef ptrdiff_t  FT_PtrDist;
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Render a given line as a series of scanlines.                         */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * Render a given line as a series of scanlines.
+   */
   static void
   gray_render_line( RAS_ARG_ TPos  to_x,
                              TPos  to_y )
@@ -835,10 +835,10 @@ typedef ptrdiff_t  FT_PtrDist;
 
 #else
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Render a straight line across multiple cells in any direction.        */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * Render a straight line across multiple cells in any direction.
+   */
   static void
   gray_render_line( RAS_ARG_ TPos  to_x,
                              TPos  to_y )
@@ -1328,40 +1328,43 @@ typedef ptrdiff_t  FT_PtrDist;
 
 #ifdef STANDALONE_
 
-  /*************************************************************************/
-  /*                                                                       */
-  /*  The following functions should only compile in stand-alone mode,     */
-  /*  i.e., when building this component without the rest of FreeType.     */
-  /*                                                                       */
-  /*************************************************************************/
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Outline_Decompose                                               */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Walk over an outline's structure to decompose it into individual   */
-  /*    segments and Bézier arcs.  This function is also able to emit      */
-  /*    `move to' and `close to' operations to indicate the start and end  */
-  /*    of new contours in the outline.                                    */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    outline        :: A pointer to the source target.                  */
-  /*                                                                       */
-  /*    func_interface :: A table of `emitters', i.e., function pointers   */
-  /*                      called during decomposition to indicate path     */
-  /*                      operations.                                      */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    user           :: A typeless pointer which is passed to each       */
-  /*                      emitter during the decomposition.  It can be     */
-  /*                      used to store the state during the               */
-  /*                      decomposition.                                   */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    Error code.  0 means success.                                      */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The following functions should only compile in stand-alone mode,
+   * i.e., when building this component without the rest of FreeType.
+   *
+   */
+
+  /**************************************************************************
+   *
+   * @Function:
+   *   FT_Outline_Decompose
+   *
+   * @Description:
+   *   Walk over an outline's structure to decompose it into individual
+   *   segments and Bézier arcs.  This function is also able to emit
+   *   `move to' and `close to' operations to indicate the start and end
+   *   of new contours in the outline.
+   *
+   * @Input:
+   *   outline ::
+   *     A pointer to the source target.
+   *
+   *   func_interface ::
+   *     A table of `emitters', i.e., function pointers
+   *     called during decomposition to indicate path
+   *     operations.
+   *
+   * @InOut:
+   *   user ::
+   *     A typeless pointer which is passed to each
+   *     emitter during the decomposition.  It can be
+   *     used to store the state during the
+   *     decomposition.
+   *
+   * @Return:
+   *   Error code.  0 means success.
+   */
   static int
   FT_Outline_Decompose( const FT_Outline*        outline,
                         const FT_Outline_Funcs*  func_interface,
@@ -1609,32 +1612,34 @@ typedef ptrdiff_t  FT_PtrDist;
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    FT_Outline_Get_CBox                                                */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Return an outline's `control box'.  The control box encloses all   */
-  /*    the outline's points, including Bézier control points.  Though it  */
-  /*    coincides with the exact bounding box for most glyphs, it can be   */
-  /*    slightly larger in some situations (like when rotating an outline  */
-  /*    that contains Bézier outside arcs).                                */
-  /*                                                                       */
-  /*    Computing the control box is very fast, while getting the bounding */
-  /*    box can take much more time as it needs to walk over all segments  */
-  /*    and arcs in the outline.  To get the latter, you can use the       */
-  /*    `ftbbox' component, which is dedicated to this single task.        */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    outline :: A pointer to the source outline descriptor.             */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    acbox   :: The outline's control box.                              */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    See @FT_Glyph_Get_CBox for a discussion of tricky fonts.           */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   FT_Outline_Get_CBox
+   *
+   * @Description:
+   *   Return an outline's `control box'.  The control box encloses all
+   *   the outline's points, including Bézier control points.  Though it
+   *   coincides with the exact bounding box for most glyphs, it can be
+   *   slightly larger in some situations (like when rotating an outline
+   *   that contains Bézier outside arcs).
+   *
+   *   Computing the control box is very fast, while getting the bounding
+   *   box can take much more time as it needs to walk over all segments
+   *   and arcs in the outline.  To get the latter, you can use the
+   *   `ftbbox' component, which is dedicated to this single task.
+   *
+   * @Input:
+   *   outline ::
+   *     A pointer to the source outline descriptor.
+   *
+   * @Output:
+   *   acbox ::
+   *     The outline's control box.
+   *
+   * @Note:
+   *   See @FT_Glyph_Get_CBox for a discussion of tricky fonts.
+   */
 
   static void
   FT_Outline_Get_CBox( const FT_Outline*  outline,
diff --git a/src/smooth/ftgrays.h b/src/smooth/ftgrays.h
index 14847bc..6aa7f35 100644
--- a/src/smooth/ftgrays.h
+++ b/src/smooth/ftgrays.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftgrays.h                                                              */
-/*                                                                         */
-/*    FreeType smooth renderer declaration                                 */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftgrays.h
+ *
+ *   FreeType smooth renderer declaration
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef FTGRAYS_H_
@@ -32,14 +32,14 @@
 #endif
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* To make ftgrays.h independent from configuration files we check       */
-  /* whether FT_EXPORT_VAR has been defined already.                       */
-  /*                                                                       */
-  /* On some systems and compilers (Win32 mostly), an extra keyword is     */
-  /* necessary to compile the library as a DLL.                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * To make ftgrays.h independent from configuration files we check
+   * whether FT_EXPORT_VAR has been defined already.
+   *
+   * On some systems and compilers (Win32 mostly), an extra keyword is
+   * necessary to compile the library as a DLL.
+   */
 #ifndef FT_EXPORT_VAR
 #define FT_EXPORT_VAR( x )  extern  x
 #endif
diff --git a/src/smooth/ftsmerrs.h b/src/smooth/ftsmerrs.h
index 226dc1b..4c55e32 100644
--- a/src/smooth/ftsmerrs.h
+++ b/src/smooth/ftsmerrs.h
@@ -1,27 +1,27 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftsmerrs.h                                                             */
-/*                                                                         */
-/*    smooth renderer error codes (specification only).                    */
-/*                                                                         */
-/*  Copyright 2001-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This file is used to define the smooth renderer error enumeration     */
-  /* constants.                                                            */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * ftsmerrs.h
+ *
+ *   smooth renderer error codes (specification only).
+ *
+ * Copyright 2001-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+
+  /**************************************************************************
+   *
+   * This file is used to define the smooth renderer error enumeration
+   * constants.
+   *
+   */
 
 #ifndef FTSMERRS_H_
 #define FTSMERRS_H_
diff --git a/src/smooth/ftsmooth.c b/src/smooth/ftsmooth.c
index 3813251..02b0c3d 100644
--- a/src/smooth/ftsmooth.c
+++ b/src/smooth/ftsmooth.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftsmooth.c                                                             */
-/*                                                                         */
-/*    Anti-aliasing renderer interface (body).                             */
-/*                                                                         */
-/*  Copyright 2000-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftsmooth.c
+ *
+ *   Anti-aliasing renderer interface (body).
+ *
+ * Copyright 2000-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
diff --git a/src/smooth/ftsmooth.h b/src/smooth/ftsmooth.h
index c76ffc5..782f11a 100644
--- a/src/smooth/ftsmooth.h
+++ b/src/smooth/ftsmooth.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ftsmooth.h                                                             */
-/*                                                                         */
-/*    Anti-aliasing renderer interface (specification).                    */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ftsmooth.h
+ *
+ *   Anti-aliasing renderer interface (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef FTSMOOTH_H_
diff --git a/src/smooth/smooth.c b/src/smooth/smooth.c
index 8a9c208..ac414f3 100644
--- a/src/smooth/smooth.c
+++ b/src/smooth/smooth.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  smooth.c                                                               */
-/*                                                                         */
-/*    FreeType anti-aliasing rasterer module component (body only).        */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * smooth.c
+ *
+ *   FreeType anti-aliasing rasterer module component (body only).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #define FT_MAKE_OPTION_SINGLE_OBJECT
diff --git a/src/truetype/truetype.c b/src/truetype/truetype.c
index da56cf2..dd64db8 100644
--- a/src/truetype/truetype.c
+++ b/src/truetype/truetype.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  truetype.c                                                             */
-/*                                                                         */
-/*    FreeType TrueType driver component (body only).                      */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * truetype.c
+ *
+ *   FreeType TrueType driver component (body only).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #define FT_MAKE_OPTION_SINGLE_OBJECT
diff --git a/src/truetype/ttdriver.c b/src/truetype/ttdriver.c
index ec0d40b..eac736c 100644
--- a/src/truetype/ttdriver.c
+++ b/src/truetype/ttdriver.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttdriver.c                                                             */
-/*                                                                         */
-/*    TrueType font driver implementation (body).                          */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ttdriver.c
+ *
+ *   TrueType font driver implementation (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -44,18 +44,18 @@
 #include "tterrors.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_ttdriver
 
 
   /*
-   *  PROPERTY SERVICE
+   * PROPERTY SERVICE
    *
    */
   static FT_Error
@@ -163,38 +163,42 @@
   /*************************************************************************/
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_get_kerning                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A driver method used to return the kerning vector between two      */
-  /*    glyphs of the same face.                                           */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face        :: A handle to the source face object.                 */
-  /*                                                                       */
-  /*    left_glyph  :: The index of the left glyph in the kern pair.       */
-  /*                                                                       */
-  /*    right_glyph :: The index of the right glyph in the kern pair.      */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    kerning     :: The kerning vector.  This is in font units for      */
-  /*                   scalable formats, and in pixels for fixed-sizes     */
-  /*                   formats.                                            */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    Only horizontal layouts (left-to-right & right-to-left) are        */
-  /*    supported by this function.  Other layouts, or more sophisticated  */
-  /*    kernings, are out of scope of this method (the basic driver        */
-  /*    interface is meant to be simple).                                  */
-  /*                                                                       */
-  /*    They can be implemented by format-specific interfaces.             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_get_kerning
+   *
+   * @Description:
+   *   A driver method used to return the kerning vector between two
+   *   glyphs of the same face.
+   *
+   * @Input:
+   *   face ::
+   *     A handle to the source face object.
+   *
+   *   left_glyph ::
+   *     The index of the left glyph in the kern pair.
+   *
+   *   right_glyph ::
+   *     The index of the right glyph in the kern pair.
+   *
+   * @Output:
+   *   kerning ::
+   *     The kerning vector.  This is in font units for
+   *     scalable formats, and in pixels for fixed-sizes
+   *     formats.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   *
+   * @Note:
+   *   Only horizontal layouts (left-to-right & right-to-left) are
+   *   supported by this function.  Other layouts, or more sophisticated
+   *   kernings, are out of scope of this method (the basic driver
+   *   interface is meant to be simple).
+   *
+   *   They can be implemented by format-specific interfaces.
+   */
   static FT_Error
   tt_get_kerning( FT_Face     ttface,          /* TT_Face */
                   FT_UInt     left_glyph,
@@ -383,32 +387,36 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_glyph_load                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A driver method used to load a glyph within a given glyph slot.    */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    slot        :: A handle to the target slot object where the glyph  */
-  /*                   will be loaded.                                     */
-  /*                                                                       */
-  /*    size        :: A handle to the source face size at which the glyph */
-  /*                   must be scaled, loaded, etc.                        */
-  /*                                                                       */
-  /*    glyph_index :: The index of the glyph in the font file.            */
-  /*                                                                       */
-  /*    load_flags  :: A flag indicating what to load for this glyph.  The */
-  /*                   FT_LOAD_XXX constants can be used to control the    */
-  /*                   glyph loading process (e.g., whether the outline    */
-  /*                   should be scaled, whether to load bitmaps or not,   */
-  /*                   whether to hint the outline, etc).                  */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_glyph_load
+   *
+   * @Description:
+   *   A driver method used to load a glyph within a given glyph slot.
+   *
+   * @Input:
+   *   slot ::
+   *     A handle to the target slot object where the glyph
+   *     will be loaded.
+   *
+   *   size ::
+   *     A handle to the source face size at which the glyph
+   *     must be scaled, loaded, etc.
+   *
+   *   glyph_index ::
+   *     The index of the glyph in the font file.
+   *
+   *   load_flags ::
+   *     A flag indicating what to load for this glyph.  The
+   *     FT_LOAD_XXX constants can be used to control the
+   *     glyph loading process (e.g., whether the outline
+   *     should be scaled, whether to load bitmaps or not,
+   *     whether to hint the outline, etc).
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   static FT_Error
   tt_glyph_load( FT_GlyphSlot  ttslot,      /* TT_GlyphSlot */
                  FT_Size       ttsize,      /* TT_Size      */
diff --git a/src/truetype/ttdriver.h b/src/truetype/ttdriver.h
index bada7d5..45e25b6 100644
--- a/src/truetype/ttdriver.h
+++ b/src/truetype/ttdriver.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttdriver.h                                                             */
-/*                                                                         */
-/*    High-level TrueType driver interface (specification).                */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ttdriver.h
+ *
+ *   High-level TrueType driver interface (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef TTDRIVER_H_
diff --git a/src/truetype/tterrors.h b/src/truetype/tterrors.h
index 88bca3a..a14dee3 100644
--- a/src/truetype/tterrors.h
+++ b/src/truetype/tterrors.h
@@ -1,27 +1,27 @@
-/***************************************************************************/
-/*                                                                         */
-/*  tterrors.h                                                             */
-/*                                                                         */
-/*    TrueType error codes (specification only).                           */
-/*                                                                         */
-/*  Copyright 2001-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This file is used to define the TrueType error enumeration            */
-  /* constants.                                                            */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * tterrors.h
+ *
+ *   TrueType error codes (specification only).
+ *
+ * Copyright 2001-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+
+  /**************************************************************************
+   *
+   * This file is used to define the TrueType error enumeration
+   * constants.
+   *
+   */
 
 #ifndef TTERRORS_H_
 #define TTERRORS_H_
diff --git a/src/truetype/ttgload.c b/src/truetype/ttgload.c
index f7f723a..574cdf6 100644
--- a/src/truetype/ttgload.c
+++ b/src/truetype/ttgload.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttgload.c                                                              */
-/*                                                                         */
-/*    TrueType Glyph Loader (body).                                        */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ttgload.c
+ *
+ *   TrueType Glyph Loader (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -38,20 +38,20 @@
 #include "ttsubpix.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_ttgload
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Composite glyph flags.                                                */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * Composite glyph flags.
+   */
 #define ARGS_ARE_WORDS             0x0001
 #define ARGS_ARE_XY_VALUES         0x0002
 #define ROUND_XY_TO_GRID           0x0004
@@ -67,10 +67,10 @@
 #define UNSCALED_COMPONENT_OFFSET  0x1000
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Return the horizontal metrics in font units for a given glyph.        */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * Return the horizontal metrics in font units for a given glyph.
+   */
   FT_LOCAL_DEF( void )
   TT_Get_HMetrics( TT_Face     face,
                    FT_UInt     idx,
@@ -84,11 +84,11 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Return the vertical metrics in font units for a given glyph.          */
-  /* See function `tt_loader_set_pp' below for explanations.               */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * Return the vertical metrics in font units for a given glyph.
+   * See function `tt_loader_set_pp' below for explanations.
+   */
   FT_LOCAL_DEF( void )
   TT_Get_VMetrics( TT_Face     face,
                    FT_UInt     idx,
@@ -250,13 +250,13 @@
 #endif /* FT_CONFIG_OPTION_INCREMENTAL */
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The following functions are used by default with TrueType fonts.      */
-  /* However, they can be replaced by alternatives if we need to support   */
-  /* TrueType-compressed formats (like MicroType) in the future.           */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * The following functions are used by default with TrueType fonts.
+   * However, they can be replaced by alternatives if we need to support
+   * TrueType-compressed formats (like MicroType) in the future.
+   *
+   */
 
   FT_CALLBACK_DEF( FT_Error )
   TT_Access_Glyph_Frame( TT_Loader  loader,
@@ -776,15 +776,15 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    TT_Hint_Glyph                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Hint the glyph using the zone prepared by the caller.  Note that   */
-  /*    the zone is supposed to include four phantom points.               */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   TT_Hint_Glyph
+   *
+   * @Description:
+   *   Hint the glyph using the zone prepared by the caller.  Note that
+   *   the zone is supposed to include four phantom points.
+   */
   static FT_Error
   TT_Hint_Glyph( TT_Loader  loader,
                  FT_Bool    is_composite )
@@ -904,16 +904,16 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    TT_Process_Simple_Glyph                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Once a simple glyph has been loaded, it needs to be processed.     */
-  /*    Usually, this means scaling and hinting through bytecode           */
-  /*    interpretation.                                                    */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   TT_Process_Simple_Glyph
+   *
+   * @Description:
+   *   Once a simple glyph has been loaded, it needs to be processed.
+   *   Usually, this means scaling and hinting through bytecode
+   *   interpretation.
+   */
   static FT_Error
   TT_Process_Simple_Glyph( TT_Loader  loader )
   {
@@ -1079,15 +1079,15 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    TT_Process_Composite_Component                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Once a composite component has been loaded, it needs to be         */
-  /*    processed.  Usually, this means transforming and translating.      */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   TT_Process_Composite_Component
+   *
+   * @Description:
+   *   Once a composite component has been loaded, it needs to be
+   *   processed.  Usually, this means transforming and translating.
+   */
   static FT_Error
   TT_Process_Composite_Component( TT_Loader    loader,
                                   FT_SubGlyph  subglyph,
@@ -1161,10 +1161,10 @@
 
 #if 0
 
-        /*******************************************************************/
-        /*                                                                 */
-        /* This algorithm is what Apple documents.  But it doesn't work.   */
-        /*                                                                 */
+        /********************************************************************
+         *
+         * This algorithm is what Apple documents.  But it doesn't work.
+         */
         int  a = subglyph->transform.xx > 0 ?  subglyph->transform.xx
                                             : -subglyph->transform.xx;
         int  b = subglyph->transform.yx > 0 ?  subglyph->transform.yx
@@ -1186,10 +1186,10 @@
 
 #else /* 1 */
 
-        /*******************************************************************/
-        /*                                                                 */
-        /* This algorithm is a guess and works much better than the above. */
-        /*                                                                 */
+        /********************************************************************
+         *
+         * This algorithm is a guess and works much better than the above.
+         */
         FT_Fixed  mac_xscale = FT_Hypot( subglyph->transform.xx,
                                          subglyph->transform.xy );
         FT_Fixed  mac_yscale = FT_Hypot( subglyph->transform.yy,
@@ -1247,16 +1247,16 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    TT_Process_Composite_Glyph                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    This is slightly different from TT_Process_Simple_Glyph, in that   */
-  /*    its sole purpose is to hint the glyph.  Thus this function is      */
-  /*    only available when bytecode interpreter is enabled.               */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   TT_Process_Composite_Glyph
+   *
+   * @Description:
+   *   This is slightly different from TT_Process_Simple_Glyph, in that
+   *   its sole purpose is to hint the glyph.  Thus this function is
+   *   only available when bytecode interpreter is enabled.
+   */
   static FT_Error
   TT_Process_Composite_Glyph( TT_Loader  loader,
                               FT_UInt    start_point,
@@ -1505,15 +1505,15 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    load_truetype_glyph                                                */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Loads a given truetype glyph.  Handles composites and uses a       */
-  /*    TT_Loader object.                                                  */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   load_truetype_glyph
+   *
+   * @Description:
+   *   Loads a given truetype glyph.  Handles composites and uses a
+   *   TT_Loader object.
+   */
   static FT_Error
   load_truetype_glyph( TT_Loader  loader,
                        FT_UInt    glyph_index,
@@ -2664,33 +2664,37 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    TT_Load_Glyph                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A function used to load a single glyph within a given glyph slot,  */
-  /*    for a given size.                                                  */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    glyph       :: A handle to a target slot object where the glyph    */
-  /*                   will be loaded.                                     */
-  /*                                                                       */
-  /*    size        :: A handle to the source face size at which the glyph */
-  /*                   must be scaled/loaded.                              */
-  /*                                                                       */
-  /*    glyph_index :: The index of the glyph in the font file.            */
-  /*                                                                       */
-  /*    load_flags  :: A flag indicating what to load for this glyph.  The */
-  /*                   FT_LOAD_XXX constants can be used to control the    */
-  /*                   glyph loading process (e.g., whether the outline    */
-  /*                   should be scaled, whether to load bitmaps or not,   */
-  /*                   whether to hint the outline, etc).                  */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   TT_Load_Glyph
+   *
+   * @Description:
+   *   A function used to load a single glyph within a given glyph slot,
+   *   for a given size.
+   *
+   * @Input:
+   *   glyph ::
+   *     A handle to a target slot object where the glyph
+   *     will be loaded.
+   *
+   *   size ::
+   *     A handle to the source face size at which the glyph
+   *     must be scaled/loaded.
+   *
+   *   glyph_index ::
+   *     The index of the glyph in the font file.
+   *
+   *   load_flags ::
+   *     A flag indicating what to load for this glyph.  The
+   *     FT_LOAD_XXX constants can be used to control the
+   *     glyph loading process (e.g., whether the outline
+   *     should be scaled, whether to load bitmaps or not,
+   *     whether to hint the outline, etc).
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   TT_Load_Glyph( TT_Size       size,
                  TT_GlyphSlot  glyph,
diff --git a/src/truetype/ttgload.h b/src/truetype/ttgload.h
index d237cfd..c117728 100644
--- a/src/truetype/ttgload.h
+++ b/src/truetype/ttgload.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttgload.h                                                              */
-/*                                                                         */
-/*    TrueType Glyph Loader (specification).                               */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ttgload.h
+ *
+ *   TrueType Glyph Loader (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef TTGLOAD_H_
diff --git a/src/truetype/ttgxvar.c b/src/truetype/ttgxvar.c
index 29ab2a4..f3c39fc 100644
--- a/src/truetype/ttgxvar.c
+++ b/src/truetype/ttgxvar.c
@@ -1,42 +1,42 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttgxvar.c                                                              */
-/*                                                                         */
-/*    TrueType GX Font Variation loader                                    */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, Werner Lemberg, and George Williams.     */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* Apple documents the `fvar', `gvar', `cvar', and `avar' tables at      */
-  /*                                                                       */
-  /*   
https://developer.apple.com/fonts/TrueType-Reference-Manual/RM06/Chap6[fgca]var.html
 */
-  /*                                                                       */
-  /* The documentation for `gvar' is not intelligible; `cvar' refers you   */
-  /* to `gvar' and is thus also incomprehensible.                          */
-  /*                                                                       */
-  /* The documentation for `avar' appears correct, but Apple has no fonts  */
-  /* with an `avar' table, so it is hard to test.                          */
-  /*                                                                       */
-  /* Many thanks to John Jenkins (at Apple) in figuring this out.          */
-  /*                                                                       */
-  /*                                                                       */
-  /* Apple's `kern' table has some references to tuple indices, but as     */
-  /* there is no indication where these indices are defined, nor how to    */
-  /* interpolate the kerning values (different tuples have different       */
-  /* classes) this issue is ignored.                                       */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * ttgxvar.c
+ *
+ *   TrueType GX Font Variation loader
+ *
+ * Copyright 2004-2018 by
+ * David Turner, Robert Wilhelm, Werner Lemberg, and George Williams.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+
+  /**************************************************************************
+   *
+   * Apple documents the `fvar', `gvar', `cvar', and `avar' tables at
+   *
+   *   
https://developer.apple.com/fonts/TrueType-Reference-Manual/RM06/Chap6[fgca]var.html
+   *
+   * The documentation for `gvar' is not intelligible; `cvar' refers you
+   * to `gvar' and is thus also incomprehensible.
+   *
+   * The documentation for `avar' appears correct, but Apple has no fonts
+   * with an `avar' table, so it is hard to test.
+   *
+   * Many thanks to John Jenkins (at Apple) in figuring this out.
+   *
+   *
+   * Apple's `kern' table has some references to tuple indices, but as
+   * there is no indication where these indices are defined, nor how to
+   * interpolate the kerning values (different tuples have different
+   * classes) this issue is ignored.
+   *
+   */
 
 
 #include <ft2build.h>
@@ -67,12 +67,12 @@
                         : (stream)->limit
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_ttgxvar
 
@@ -86,12 +86,12 @@
   /*************************************************************************/
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro ALL_POINTS is used in `ft_var_readpackedpoints'.  It        */
-  /* indicates that there is a delta for every point without needing to    */
-  /* enumerate all of them.                                                */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro ALL_POINTS is used in `ft_var_readpackedpoints'.  It
+   * indicates that there is a delta for every point without needing to
+   * enumerate all of them.
+   */
 
   /* ensure that value `0' has the same width as a pointer */
 #define ALL_POINTS  (FT_UShort*)~(FT_PtrDist)0
@@ -101,29 +101,32 @@
 #define GX_PT_POINT_RUN_COUNT_MASK  0x7FU
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    ft_var_readpackedpoints                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Read a set of points to which the following deltas will apply.     */
-  /*    Points are packed with a run length encoding.                      */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    stream    :: The data stream.                                      */
-  /*                                                                       */
-  /*    size      :: The size of the table holding the data.               */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    point_cnt :: The number of points read.  A zero value means that   */
-  /*                 all points in the glyph will be affected, without     */
-  /*                 enumerating them individually.                        */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    An array of FT_UShort containing the affected points or the        */
-  /*    special value ALL_POINTS.                                          */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   ft_var_readpackedpoints
+   *
+   * @Description:
+   *   Read a set of points to which the following deltas will apply.
+   *   Points are packed with a run length encoding.
+   *
+   * @Input:
+   *   stream ::
+   *     The data stream.
+   *
+   *   size ::
+   *     The size of the table holding the data.
+   *
+   * @Output:
+   *   point_cnt ::
+   *     The number of points read.  A zero value means that
+   *     all points in the glyph will be affected, without
+   *     enumerating them individually.
+   *
+   * @Return:
+   *   An array of FT_UShort containing the affected points or the
+   *   special value ALL_POINTS.
+   */
   static FT_UShort*
   ft_var_readpackedpoints( FT_Stream  stream,
                            FT_ULong   size,
@@ -211,28 +214,31 @@
 #define GX_DT_DELTA_RUN_COUNT_MASK  0x3FU
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    ft_var_readpackeddeltas                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Read a set of deltas.  These are packed slightly differently than  */
-  /*    points.  In particular there is no overall count.                  */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    stream    :: The data stream.                                      */
-  /*                                                                       */
-  /*    size      :: The size of the table holding the data.               */
-  /*                                                                       */
-  /*    delta_cnt :: The number of deltas to be read.                      */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    An array of FT_Short containing the deltas for the affected        */
-  /*    points.  (This only gets the deltas for one dimension.  It will    */
-  /*    generally be called twice, once for x, once for y.  When used in   */
-  /*    cvt table, it will only be called once.)                           */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   ft_var_readpackeddeltas
+   *
+   * @Description:
+   *   Read a set of deltas.  These are packed slightly differently than
+   *   points.  In particular there is no overall count.
+   *
+   * @Input:
+   *   stream ::
+   *     The data stream.
+   *
+   *   size ::
+   *     The size of the table holding the data.
+   *
+   *   delta_cnt ::
+   *     The number of deltas to be read.
+   *
+   * @Return:
+   *   An array of FT_Short containing the deltas for the affected
+   *   points.  (This only gets the deltas for one dimension.  It will
+   *   generally be called twice, once for x, once for y.  When used in
+   *   cvt table, it will only be called once.)
+   */
   static FT_Short*
   ft_var_readpackeddeltas( FT_Stream  stream,
                            FT_ULong   size,
@@ -293,18 +299,19 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    ft_var_load_avar                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Parse the `avar' table if present.  It need not be, so we return   */
-  /*    nothing.                                                           */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    face :: The font face.                                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   ft_var_load_avar
+   *
+   * @Description:
+   *   Parse the `avar' table if present.  It need not be, so we return
+   *   nothing.
+   *
+   * @InOut:
+   *   face ::
+   *     The font face.
+   */
   static void
   ft_var_load_avar( TT_Face  face )
   {
@@ -702,29 +709,30 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    ft_var_load_hvvar                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    If `vertical' is zero, parse the `HVAR' table and set              */
-  /*    `blend->hvar_loaded' to TRUE.  On success, `blend->hvar_checked'   */
-  /*    is set to TRUE.                                                    */
-  /*                                                                       */
-  /*    If `vertical' is not zero, parse the `VVAR' table and set          */
-  /*    `blend->vvar_loaded' to TRUE.  On success, `blend->vvar_checked'   */
-  /*    is set to TRUE.                                                    */
-  /*                                                                       */
-  /*    Some memory may remain allocated on error; it is always freed in   */
-  /*    `tt_done_blend', however.                                          */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    face :: The font face.                                             */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   ft_var_load_hvvar
+   *
+   * @Description:
+   *   If `vertical' is zero, parse the `HVAR' table and set
+   *   `blend->hvar_loaded' to TRUE.  On success, `blend->hvar_checked'
+   *   is set to TRUE.
+   *
+   *   If `vertical' is not zero, parse the `VVAR' table and set
+   *   `blend->vvar_loaded' to TRUE.  On success, `blend->vvar_checked'
+   *   is set to TRUE.
+   *
+   *   Some memory may remain allocated on error; it is always freed in
+   *   `tt_done_blend', however.
+   *
+   * @InOut:
+   *   face ::
+   *     The font face.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   static FT_Error
   ft_var_load_hvvar( TT_Face  face,
                      FT_Bool  vertical )
@@ -937,25 +945,29 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_hvadvance_adjust                                                */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Apply `HVAR' advance width or `VVAR' advance height adjustment of  */
-  /*    a given glyph.                                                     */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    gindex   :: The glyph index.                                       */
-  /*                                                                       */
-  /*    vertical :: If set, handle `VVAR' table.                           */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    face     :: The font face.                                         */
-  /*                                                                       */
-  /*    adelta   :: Points to width or height value that gets modified.    */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_hvadvance_adjust
+   *
+   * @Description:
+   *   Apply `HVAR' advance width or `VVAR' advance height adjustment of
+   *   a given glyph.
+   *
+   * @Input:
+   *   gindex ::
+   *     The glyph index.
+   *
+   *   vertical ::
+   *     If set, handle `VVAR' table.
+   *
+   * @InOut:
+   *   face ::
+   *     The font face.
+   *
+   *   adelta ::
+   *     Points to width or height value that gets modified.
+   */
   static FT_Error
   tt_hvadvance_adjust( TT_Face  face,
                        FT_UInt  gindex,
@@ -1151,20 +1163,21 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    ft_var_load_mvar                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Parse the `MVAR' table.                                            */
-  /*                                                                       */
-  /*    Some memory may remain allocated on error; it is always freed in   */
-  /*    `tt_done_blend', however.                                          */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    face :: The font face.                                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   ft_var_load_mvar
+   *
+   * @Description:
+   *   Parse the `MVAR' table.
+   *
+   *   Some memory may remain allocated on error; it is always freed in
+   *   `tt_done_blend', however.
+   *
+   * @InOut:
+   *   face ::
+   *     The font face.
+   */
   static void
   ft_var_load_mvar( TT_Face  face )
   {
@@ -1297,17 +1310,18 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_apply_mvar                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Apply `MVAR' table adjustments.                                    */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    face :: The font face.                                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_apply_mvar
+   *
+   * @Description:
+   *   Apply `MVAR' table adjustments.
+   *
+   * @InOut:
+   *   face ::
+   *     The font face.
+   */
   FT_LOCAL_DEF( void )
   tt_apply_mvar( TT_Face  face )
   {
@@ -1400,21 +1414,22 @@
   } GX_GVar_Head;
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    ft_var_load_gvar                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Parse the `gvar' table if present.  If `fvar' is there, `gvar' had */
-  /*    better be there too.                                               */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    face :: The font face.                                             */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   ft_var_load_gvar
+   *
+   * @Description:
+   *   Parse the `gvar' table if present.  If `fvar' is there, `gvar' had
+   *   better be there too.
+   *
+   * @InOut:
+   *   face ::
+   *     The font face.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   static FT_Error
   ft_var_load_gvar( TT_Face  face )
   {
@@ -1567,33 +1582,38 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    ft_var_apply_tuple                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Figure out whether a given tuple (design) applies to the current   */
-  /*    blend, and if so, what is the scaling factor.                      */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    blend           :: The current blend of the font.                  */
-  /*                                                                       */
-  /*    tupleIndex      :: A flag saying whether this is an intermediate   */
-  /*                       tuple or not.                                   */
-  /*                                                                       */
-  /*    tuple_coords    :: The coordinates of the tuple in normalized axis */
-  /*                       units.                                          */
-  /*                                                                       */
-  /*    im_start_coords :: The initial coordinates where this tuple starts */
-  /*                       to apply (for intermediate coordinates).        */
-  /*                                                                       */
-  /*    im_end_coords   :: The final coordinates after which this tuple no */
-  /*                       longer applies (for intermediate coordinates).  */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    An FT_Fixed value containing the scaling factor.                   */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   ft_var_apply_tuple
+   *
+   * @Description:
+   *   Figure out whether a given tuple (design) applies to the current
+   *   blend, and if so, what is the scaling factor.
+   *
+   * @Input:
+   *   blend ::
+   *     The current blend of the font.
+   *
+   *   tupleIndex ::
+   *     A flag saying whether this is an intermediate
+   *     tuple or not.
+   *
+   *   tuple_coords ::
+   *     The coordinates of the tuple in normalized axis
+   *     units.
+   *
+   *   im_start_coords ::
+   *     The initial coordinates where this tuple starts
+   *     to apply (for intermediate coordinates).
+   *
+   *   im_end_coords ::
+   *     The final coordinates after which this tuple no
+   *     longer applies (for intermediate coordinates).
+   *
+   * @Return:
+   *   An FT_Fixed value containing the scaling factor.
+   */
   static FT_Fixed
   ft_var_apply_tuple( GX_Blend   blend,
                       FT_UShort  tupleIndex,
@@ -1910,27 +1930,29 @@
   } GX_FVar_Axis;
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    TT_Get_MM_Var                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Check that the font's `fvar' table is valid, parse it, and return  */
-  /*    those data.  It also loads (and parses) the `MVAR' table, if       */
-  /*    possible.                                                          */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    face   :: The font face.                                           */
-  /*              TT_Get_MM_Var initializes the blend structure.           */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    master :: The `fvar' data (must be freed by caller).  Can be NULL, */
-  /*              which makes this function simply load MM support.        */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   TT_Get_MM_Var
+   *
+   * @Description:
+   *   Check that the font's `fvar' table is valid, parse it, and return
+   *   those data.  It also loads (and parses) the `MVAR' table, if
+   *   possible.
+   *
+   * @InOut:
+   *   face ::
+   *     The font face.
+   *     TT_Get_MM_Var initializes the blend structure.
+   *
+   * @Output:
+   *   master ::
+   *     The `fvar' data (must be freed by caller).  Can be NULL,
+   *     which makes this function simply load MM support.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   TT_Get_MM_Var( TT_Face      face,
                  FT_MM_Var*  *master )
@@ -2590,31 +2612,34 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    TT_Set_MM_Blend                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Set the blend (normalized) coordinates for this instance of the    */
-  /*    font.  Check that the `gvar' table is reasonable and does some     */
-  /*    initial preparation.                                               */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    face       :: The font.                                            */
-  /*                  Initialize the blend structure with `gvar' data.     */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    num_coords :: The number of available coordinates.  If it is       */
-  /*                  larger than the number of axes, ignore the excess    */
-  /*                  values.  If it is smaller than the number of axes,   */
-  /*                  use the default value (0) for the remaining axes.    */
-  /*                                                                       */
-  /*    coords     :: An array of `num_coords', each between [-1,1].       */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   TT_Set_MM_Blend
+   *
+   * @Description:
+   *   Set the blend (normalized) coordinates for this instance of the
+   *   font.  Check that the `gvar' table is reasonable and does some
+   *   initial preparation.
+   *
+   * @InOut:
+   *   face ::
+   *     The font.
+   *     Initialize the blend structure with `gvar' data.
+   *
+   * @Input:
+   *   num_coords ::
+   *     The number of available coordinates.  If it is
+   *     larger than the number of axes, ignore the excess
+   *     values.  If it is smaller than the number of axes,
+   *     use the default value (0) for the remaining axes.
+   *
+   *   coords ::
+   *     An array of `num_coords', each between [-1,1].
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   TT_Set_MM_Blend( TT_Face    face,
                    FT_UInt    num_coords,
@@ -2636,29 +2661,32 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    TT_Get_MM_Blend                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Get the blend (normalized) coordinates for this instance of the    */
-  /*    font.                                                              */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    face       :: The font.                                            */
-  /*                  Initialize the blend structure with `gvar' data.     */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    num_coords :: The number of available coordinates.  If it is       */
-  /*                  larger than the number of axes, set the excess       */
-  /*                  values to 0.                                         */
-  /*                                                                       */
-  /*    coords     :: An array of `num_coords', each between [-1,1].       */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   TT_Get_MM_Blend
+   *
+   * @Description:
+   *   Get the blend (normalized) coordinates for this instance of the
+   *   font.
+   *
+   * @InOut:
+   *   face ::
+   *     The font.
+   *     Initialize the blend structure with `gvar' data.
+   *
+   * @Input:
+   *   num_coords ::
+   *     The number of available coordinates.  If it is
+   *     larger than the number of axes, set the excess
+   *     values to 0.
+   *
+   *   coords ::
+   *     An array of `num_coords', each between [-1,1].
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   TT_Get_MM_Blend( TT_Face    face,
                    FT_UInt    num_coords,
@@ -2712,31 +2740,34 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    TT_Set_Var_Design                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Set the coordinates for the instance, measured in the user         */
-  /*    coordinate system.  Parse the `avar' table (if present) to convert */
-  /*    from user to normalized coordinates.                               */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    face       :: The font face.                                       */
-  /*                  Initialize the blend struct with `gvar' data.        */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    num_coords :: The number of available coordinates.  If it is       */
-  /*                  larger than the number of axes, ignore the excess    */
-  /*                  values.  If it is smaller than the number of axes,   */
-  /*                  use the default values for the remaining axes.       */
-  /*                                                                       */
-  /*    coords     :: A coordinate array with `num_coords' elements.       */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   TT_Set_Var_Design
+   *
+   * @Description:
+   *   Set the coordinates for the instance, measured in the user
+   *   coordinate system.  Parse the `avar' table (if present) to convert
+   *   from user to normalized coordinates.
+   *
+   * @InOut:
+   *   face ::
+   *     The font face.
+   *     Initialize the blend struct with `gvar' data.
+   *
+   * @Input:
+   *   num_coords ::
+   *     The number of available coordinates.  If it is
+   *     larger than the number of axes, ignore the excess
+   *     values.  If it is smaller than the number of axes,
+   *     use the default values for the remaining axes.
+   *
+   *   coords ::
+   *     A coordinate array with `num_coords' elements.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   TT_Set_Var_Design( TT_Face    face,
                      FT_UInt    num_coords,
@@ -2854,28 +2885,31 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    TT_Get_Var_Design                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Get the design coordinates of the currently selected interpolated  */
-  /*    font.                                                              */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face       :: A handle to the source face.                         */
-  /*                                                                       */
-  /*    num_coords :: The number of design coordinates to retrieve.  If it */
-  /*                  is larger than the number of axes, set the excess    */
-  /*                  values to~0.                                         */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    coords     :: The design coordinates array.                        */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0~means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   TT_Get_Var_Design
+   *
+   * @Description:
+   *   Get the design coordinates of the currently selected interpolated
+   *   font.
+   *
+   * @Input:
+   *   face ::
+   *     A handle to the source face.
+   *
+   *   num_coords ::
+   *     The number of design coordinates to retrieve.  If it
+   *     is larger than the number of axes, set the excess
+   *     values to~0.
+   *
+   * @Output:
+   *   coords ::
+   *     The design coordinates array.
+   *
+   * @Return:
+   *   FreeType error code.  0~means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   TT_Get_Var_Design( TT_Face    face,
                      FT_UInt    num_coords,
@@ -2929,24 +2963,26 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    TT_Set_Named_Instance                                              */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Set the given named instance, also resetting any further           */
-  /*    variation.                                                         */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face           :: A handle to the source face.                     */
-  /*                                                                       */
-  /*    instance_index :: The instance index, starting with value 1.       */
-  /*                      Value 0 indicates to not use an instance.        */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0~means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   TT_Set_Named_Instance
+   *
+   * @Description:
+   *   Set the given named instance, also resetting any further
+   *   variation.
+   *
+   * @Input:
+   *   face ::
+   *     A handle to the source face.
+   *
+   *   instance_index ::
+   *     The instance index, starting with value 1.
+   *     Value 0 indicates to not use an instance.
+   *
+   * @Return:
+   *   FreeType error code.  0~means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   TT_Set_Named_Instance( TT_Face  face,
                          FT_UInt  instance_index )
@@ -3022,27 +3058,29 @@
   /*************************************************************************/
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_face_vary_cvt                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Modify the loaded cvt table according to the `cvar' table and the  */
-  /*    font's blend.                                                      */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    face   :: A handle to the target face object.                      */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    stream :: A handle to the input stream.                            */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /*    Most errors are ignored.  It is perfectly valid not to have a      */
-  /*    `cvar' table even if there is a `gvar' and `fvar' table.           */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_face_vary_cvt
+   *
+   * @Description:
+   *   Modify the loaded cvt table according to the `cvar' table and the
+   *   font's blend.
+   *
+   * @InOut:
+   *   face ::
+   *     A handle to the target face object.
+   *
+   * @Input:
+   *   stream ::
+   *     A handle to the input stream.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   *
+   *   Most errors are ignored.  It is perfectly valid not to have a
+   *   `cvar' table even if there is a `gvar' and `fvar' table.
+   */
   FT_LOCAL_DEF( FT_Error )
   tt_face_vary_cvt( TT_Face    face,
                     FT_Stream  stream )
@@ -3528,28 +3566,32 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    TT_Vary_Apply_Glyph_Deltas                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Apply the appropriate deltas to the current glyph.                 */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face        :: A handle to the target face object.                 */
-  /*                                                                       */
-  /*    glyph_index :: The index of the glyph being modified.              */
-  /*                                                                       */
-  /*    n_points    :: The number of the points in the glyph, including    */
-  /*                   phantom points.                                     */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    outline     :: The outline to change.                              */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   TT_Vary_Apply_Glyph_Deltas
+   *
+   * @Description:
+   *   Apply the appropriate deltas to the current glyph.
+   *
+   * @Input:
+   *   face ::
+   *     A handle to the target face object.
+   *
+   *   glyph_index ::
+   *     The index of the glyph being modified.
+   *
+   *   n_points ::
+   *     The number of the points in the glyph, including
+   *     phantom points.
+   *
+   * @InOut:
+   *   outline ::
+   *     The outline to change.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   TT_Vary_Apply_Glyph_Deltas( TT_Face      face,
                               FT_UInt      glyph_index,
@@ -3922,16 +3964,16 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_get_var_blend                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    An extended internal version of `TT_Get_MM_Blend' that returns     */
-  /*    pointers instead of copying data, without any initialization of    */
-  /*    the MM machinery in case it isn't loaded yet.                      */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_get_var_blend
+   *
+   * @Description:
+   *   An extended internal version of `TT_Get_MM_Blend' that returns
+   *   pointers instead of copying data, without any initialization of
+   *   the MM machinery in case it isn't loaded yet.
+   */
   FT_LOCAL_DEF( FT_Error )
   tt_get_var_blend( TT_Face      face,
                     FT_UInt     *num_coords,
@@ -3993,14 +4035,14 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_done_blend                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Free the blend internal data structure.                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_done_blend
+   *
+   * @Description:
+   *   Free the blend internal data structure.
+   */
   FT_LOCAL_DEF( void )
   tt_done_blend( TT_Face  face )
   {
diff --git a/src/truetype/ttgxvar.h b/src/truetype/ttgxvar.h
index a37bb90..bdc09d1 100644
--- a/src/truetype/ttgxvar.h
+++ b/src/truetype/ttgxvar.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttgxvar.h                                                              */
-/*                                                                         */
-/*    TrueType GX Font Variation loader (specification)                    */
-/*                                                                         */
-/*  Copyright 2004-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, Werner Lemberg and George Williams.      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ttgxvar.h
+ *
+ *   TrueType GX Font Variation loader (specification)
+ *
+ * Copyright 2004-2018 by
+ * David Turner, Robert Wilhelm, Werner Lemberg and George Williams.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef TTGXVAR_H_
@@ -29,15 +29,15 @@ FT_BEGIN_HEADER
 
 #ifdef TT_CONFIG_OPTION_GX_VAR_SUPPORT
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    GX_AVarCorrespondenceRec                                           */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A data structure representing `shortFracCorrespondence' in `avar'  */
-  /*    table according to the specifications from Apple.                  */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Struct:
+   *   GX_AVarCorrespondenceRec
+   *
+   * @Description:
+   *   A data structure representing `shortFracCorrespondence' in `avar'
+   *   table according to the specifications from Apple.
+   */
   typedef struct  GX_AVarCorrespondenceRec_
   {
     FT_Fixed  fromCoord;
@@ -46,15 +46,15 @@ FT_BEGIN_HEADER
   } GX_AVarCorrespondenceRec_, *GX_AVarCorrespondence;
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    GX_AVarRec                                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Data from the segment field of `avar' table.                       */
-  /*    There is one of these for each axis.                               */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Struct:
+   *   GX_AVarRec
+   *
+   * @Description:
+   *   Data from the segment field of `avar' table.
+   *   There is one of these for each axis.
+   */
   typedef struct  GX_AVarSegmentRec_
   {
     FT_UShort              pairCount;
@@ -114,14 +114,14 @@ FT_BEGIN_HEADER
   } GX_DeltaSetIdxMapRec, *GX_DeltaSetIdxMap;
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    GX_HVVarTableRec                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Data from either the `HVAR' or `VVAR' table.                       */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Struct:
+   *   GX_HVVarTableRec
+   *
+   * @Description:
+   *   Data from either the `HVAR' or `VVAR' table.
+   */
   typedef struct  GX_HVVarTableRec_
   {
     GX_ItemVarStoreRec    itemStore;        /* Item Variation Store  */
@@ -191,14 +191,14 @@ FT_BEGIN_HEADER
   } GX_ValueRec, *GX_Value;
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    GX_MVarTableRec                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Data from the `MVAR' table.                                        */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Struct:
+   *   GX_MVarTableRec
+   *
+   * @Description:
+   *   Data from the `MVAR' table.
+   */
   typedef struct  GX_MVarTableRec_
   {
     FT_UShort  valueCount;
@@ -209,95 +209,95 @@ FT_BEGIN_HEADER
   } GX_MVarTableRec, *GX_MVarTable;
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    GX_BlendRec                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Data for interpolating a font from a distortable font specified    */
-  /*    by the GX *var tables ([fgcahvm]var).                              */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    num_axis ::                                                        */
-  /*      The number of axes along which interpolation may happen.         */
-  /*                                                                       */
-  /*    coords ::                                                          */
-  /*      An array of design coordinates (in user space) indicating the    */
-  /*      contribution along each axis to the final interpolated font.     */
-  /*      `normalizedcoords' holds the same values.                        */
-  /*                                                                       */
-  /*    normalizedcoords ::                                                */
-  /*      An array of normalized values (between [-1,1]) indicating the    */
-  /*      contribution along each axis to the final interpolated font.     */
-  /*      `coords' holds the same values.                                  */
-  /*                                                                       */
-  /*    mmvar ::                                                           */
-  /*      Data from the `fvar' table.                                      */
-  /*                                                                       */
-  /*    mmvar_len ::                                                       */
-  /*      The length of the `mmvar' structure.                             */
-  /*                                                                       */
-  /*    normalized_stylecoords ::                                          */
-  /*      A two-dimensional array that holds the named instance data from  */
-  /*      `mmvar' as normalized values.                                    */
-  /*                                                                       */
-  /*    avar_loaded ::                                                     */
-  /*      A Boolean; if set, FreeType tried to load (and parse) the `avar' */
-  /*      table.                                                           */
-  /*                                                                       */
-  /*    avar_segment ::                                                    */
-  /*      Data from the `avar' table.                                      */
-  /*                                                                       */
-  /*    hvar_loaded ::                                                     */
-  /*      A Boolean; if set, FreeType tried to load (and parse) the `hvar' */
-  /*      table.                                                           */
-  /*                                                                       */
-  /*    hvar_checked ::                                                    */
-  /*      A Boolean; if set, FreeType successfully loaded and parsed the   */
-  /*      `hvar' table.                                                    */
-  /*                                                                       */
-  /*    hvar_error ::                                                      */
-  /*      If loading and parsing of the `hvar' table failed, this field    */
-  /*      holds the corresponding error code.                              */
-  /*                                                                       */
-  /*    hvar_table ::                                                      */
-  /*      Data from the `hvar' table.                                      */
-  /*                                                                       */
-  /*    vvar_loaded ::                                                     */
-  /*      A Boolean; if set, FreeType tried to load (and parse) the `vvar' */
-  /*      table.                                                           */
-  /*                                                                       */
-  /*    vvar_checked ::                                                    */
-  /*      A Boolean; if set, FreeType successfully loaded and parsed the   */
-  /*      `vvar' table.                                                    */
-  /*                                                                       */
-  /*    vvar_error ::                                                      */
-  /*      If loading and parsing of the `vvar' table failed, this field    */
-  /*      holds the corresponding error code.                              */
-  /*                                                                       */
-  /*    vvar_table ::                                                      */
-  /*      Data from the `vvar' table.                                      */
-  /*                                                                       */
-  /*    mvar_table ::                                                      */
-  /*      Data from the `mvar' table.                                      */
-  /*                                                                       */
-  /*    tuplecount ::                                                      */
-  /*      The number of shared tuples in the `gvar' table.                 */
-  /*                                                                       */
-  /*    tuplecoords ::                                                     */
-  /*      A two-dimensional array that holds the shared tuple coordinates  */
-  /*      in the `gvar' table.                                             */
-  /*                                                                       */
-  /*    gv_glyphcnt ::                                                     */
-  /*      The number of glyphs handled in the `gvar' table.                */
-  /*                                                                       */
-  /*    glyphoffsets ::                                                    */
-  /*      Offsets into the glyph variation data array.                     */
-  /*                                                                       */
-  /*    gvar_size ::                                                       */
-  /*      The size of the `gvar' table.                                    */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Struct:
+   *   GX_BlendRec
+   *
+   * @Description:
+   *   Data for interpolating a font from a distortable font specified
+   *   by the GX *var tables ([fgcahvm]var).
+   *
+   * @Fields:
+   *   num_axis ::
+   *     The number of axes along which interpolation may happen.
+   *
+   *   coords ::
+   *     An array of design coordinates (in user space) indicating the
+   *     contribution along each axis to the final interpolated font.
+   *     `normalizedcoords' holds the same values.
+   *
+   *   normalizedcoords ::
+   *     An array of normalized values (between [-1,1]) indicating the
+   *     contribution along each axis to the final interpolated font.
+   *     `coords' holds the same values.
+   *
+   *   mmvar ::
+   *     Data from the `fvar' table.
+   *
+   *   mmvar_len ::
+   *     The length of the `mmvar' structure.
+   *
+   *   normalized_stylecoords ::
+   *     A two-dimensional array that holds the named instance data from
+   *     `mmvar' as normalized values.
+   *
+   *   avar_loaded ::
+   *     A Boolean; if set, FreeType tried to load (and parse) the `avar'
+   *     table.
+   *
+   *   avar_segment ::
+   *     Data from the `avar' table.
+   *
+   *   hvar_loaded ::
+   *     A Boolean; if set, FreeType tried to load (and parse) the `hvar'
+   *     table.
+   *
+   *   hvar_checked ::
+   *     A Boolean; if set, FreeType successfully loaded and parsed the
+   *     `hvar' table.
+   *
+   *   hvar_error ::
+   *     If loading and parsing of the `hvar' table failed, this field
+   *     holds the corresponding error code.
+   *
+   *   hvar_table ::
+   *     Data from the `hvar' table.
+   *
+   *   vvar_loaded ::
+   *     A Boolean; if set, FreeType tried to load (and parse) the `vvar'
+   *     table.
+   *
+   *   vvar_checked ::
+   *     A Boolean; if set, FreeType successfully loaded and parsed the
+   *     `vvar' table.
+   *
+   *   vvar_error ::
+   *     If loading and parsing of the `vvar' table failed, this field
+   *     holds the corresponding error code.
+   *
+   *   vvar_table ::
+   *     Data from the `vvar' table.
+   *
+   *   mvar_table ::
+   *     Data from the `mvar' table.
+   *
+   *   tuplecount ::
+   *     The number of shared tuples in the `gvar' table.
+   *
+   *   tuplecoords ::
+   *     A two-dimensional array that holds the shared tuple coordinates
+   *     in the `gvar' table.
+   *
+   *   gv_glyphcnt ::
+   *     The number of glyphs handled in the `gvar' table.
+   *
+   *   glyphoffsets ::
+   *     Offsets into the glyph variation data array.
+   *
+   *   gvar_size ::
+   *     The size of the `gvar' table.
+   */
   typedef struct  GX_BlendRec_
   {
     FT_UInt         num_axis;
@@ -336,14 +336,14 @@ FT_BEGIN_HEADER
   } GX_BlendRec;
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <enum>                                                                */
-  /*    GX_TupleCountFlags                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Flags used within the `TupleCount' field of the `gvar' table.      */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @enum:
+   *   GX_TupleCountFlags
+   *
+   * @Description:
+   *   Flags used within the `TupleCount' field of the `gvar' table.
+   */
   typedef enum  GX_TupleCountFlags_
   {
     GX_TC_TUPLES_SHARE_POINT_NUMBERS = 0x8000,
@@ -353,15 +353,15 @@ FT_BEGIN_HEADER
   } GX_TupleCountFlags;
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <enum>                                                                */
-  /*    GX_TupleIndexFlags                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Flags used within the `TupleIndex' field of the `gvar' and `cvar'  */
-  /*    tables.                                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @enum:
+   *   GX_TupleIndexFlags
+   *
+   * @Description:
+   *   Flags used within the `TupleIndex' field of the `gvar' and `cvar'
+   *   tables.
+   */
   typedef enum  GX_TupleIndexFlags_
   {
     GX_TI_EMBEDDED_TUPLE_COORD  = 0x8000,
diff --git a/src/truetype/ttinterp.c b/src/truetype/ttinterp.c
index fff07db..9457297 100644
--- a/src/truetype/ttinterp.c
+++ b/src/truetype/ttinterp.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttinterp.c                                                             */
-/*                                                                         */
-/*    TrueType bytecode interpreter (body).                                */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ttinterp.c
+ *
+ *   TrueType bytecode interpreter (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 /* Greg Hitchcock from Microsoft has helped a lot in resolving unclear */
@@ -39,12 +39,12 @@
 #ifdef TT_USE_BYTECODE_INTERPRETER
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_ttinterp
 
@@ -82,10 +82,10 @@
           exc->func_dualproj( exc, (v)->x, (v)->y )
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Two simple bounds-checking macros.                                    */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * Two simple bounds-checking macros.
+   */
 #define BOUNDS( x, n )   ( (FT_UInt)(x)  >= (FT_UInt)(n)  )
 #define BOUNDSL( x, n )  ( (FT_ULong)(x) >= (FT_ULong)(n) )
 
@@ -97,30 +97,33 @@
 #define FAILURE  1
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /*                        CODERANGE FUNCTIONS                            */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    TT_Goto_CodeRange                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Switches to a new code range (updates the code related elements in */
-  /*    `exec', and `IP').                                                 */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    range :: The new execution code range.                             */
-  /*                                                                       */
-  /*    IP    :: The new IP in the new code range.                         */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    exec  :: The target execution context.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   *                       CODERANGE FUNCTIONS
+   *
+   */
+
+
+  /**************************************************************************
+   *
+   * @Function:
+   *   TT_Goto_CodeRange
+   *
+   * @Description:
+   *   Switches to a new code range (updates the code related elements in
+   *   `exec', and `IP').
+   *
+   * @Input:
+   *   range ::
+   *     The new execution code range.
+   *
+   *   IP ::
+   *     The new IP in the new code range.
+   *
+   * @InOut:
+   *   exec ::
+   *     The target execution context.
+   */
   FT_LOCAL_DEF( void )
   TT_Goto_CodeRange( TT_ExecContext  exec,
                      FT_Int          range,
@@ -148,24 +151,28 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    TT_Set_CodeRange                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Sets a code range.                                                 */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    range  :: The code range index.                                    */
-  /*                                                                       */
-  /*    base   :: The new code base.                                       */
-  /*                                                                       */
-  /*    length :: The range size in bytes.                                 */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    exec   :: The target execution context.                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   TT_Set_CodeRange
+   *
+   * @Description:
+   *   Sets a code range.
+   *
+   * @Input:
+   *   range ::
+   *     The code range index.
+   *
+   *   base ::
+   *     The new code base.
+   *
+   *   length ::
+   *     The range size in bytes.
+   *
+   * @InOut:
+   *   exec ::
+   *     The target execution context.
+   */
   FT_LOCAL_DEF( void )
   TT_Set_CodeRange( TT_ExecContext  exec,
                     FT_Int          range,
@@ -179,20 +186,22 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    TT_Clear_CodeRange                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Clears a code range.                                               */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    range :: The code range index.                                     */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    exec  :: The target execution context.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   TT_Clear_CodeRange
+   *
+   * @Description:
+   *   Clears a code range.
+   *
+   * @Input:
+   *   range ::
+   *     The code range index.
+   *
+   * @InOut:
+   *   exec ::
+   *     The target execution context.
+   */
   FT_LOCAL_DEF( void )
   TT_Clear_CodeRange( TT_ExecContext  exec,
                       FT_Int          range )
@@ -204,29 +213,31 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /*                   EXECUTION CONTEXT ROUTINES                          */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    TT_Done_Context                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Destroys a given context.                                          */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    exec   :: A handle to the target execution context.                */
-  /*                                                                       */
-  /*    memory :: A handle to the parent memory object.                    */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    Only the glyph loader and debugger should call this function.      */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   *                  EXECUTION CONTEXT ROUTINES
+   *
+   */
+
+
+  /**************************************************************************
+   *
+   * @Function:
+   *   TT_Done_Context
+   *
+   * @Description:
+   *   Destroys a given context.
+   *
+   * @Input:
+   *   exec ::
+   *     A handle to the target execution context.
+   *
+   *   memory ::
+   *     A handle to the parent memory object.
+   *
+   * @Note:
+   *   Only the glyph loader and debugger should call this function.
+   */
   FT_LOCAL_DEF( void )
   TT_Done_Context( TT_ExecContext  exec )
   {
@@ -257,23 +268,25 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Init_Context                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Initializes a context object.                                      */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    memory :: A handle to the parent memory object.                    */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    exec   :: A handle to the target execution context.                */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Init_Context
+   *
+   * @Description:
+   *   Initializes a context object.
+   *
+   * @Input:
+   *   memory ::
+   *     A handle to the parent memory object.
+   *
+   * @InOut:
+   *   exec ::
+   *     A handle to the target execution context.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   static FT_Error
   Init_Context( TT_ExecContext  exec,
                 FT_Memory       memory )
@@ -313,30 +326,35 @@
  }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Update_Max                                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Checks the size of a buffer and reallocates it if necessary.       */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    memory     :: A handle to the parent memory object.                */
-  /*                                                                       */
-  /*    multiplier :: The size in bytes of each element in the buffer.     */
-  /*                                                                       */
-  /*    new_max    :: The new capacity (size) of the buffer.               */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    size       :: The address of the buffer's current size expressed   */
-  /*                  in elements.                                         */
-  /*                                                                       */
-  /*    buff       :: The address of the buffer base pointer.              */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Update_Max
+   *
+   * @Description:
+   *   Checks the size of a buffer and reallocates it if necessary.
+   *
+   * @Input:
+   *   memory ::
+   *     A handle to the parent memory object.
+   *
+   *   multiplier ::
+   *     The size in bytes of each element in the buffer.
+   *
+   *   new_max ::
+   *     The new capacity (size) of the buffer.
+   *
+   * @InOut:
+   *   size ::
+   *     The address of the buffer's current size expressed
+   *     in elements.
+   *
+   *   buff ::
+   *     The address of the buffer base pointer.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   Update_Max( FT_Memory  memory,
               FT_ULong*  size,
@@ -359,28 +377,31 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    TT_Load_Context                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Prepare an execution context for glyph hinting.                    */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face :: A handle to the source face object.                        */
-  /*                                                                       */
-  /*    size :: A handle to the source size object.                        */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    exec :: A handle to the target execution context.                  */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    Only the glyph loader and debugger should call this function.      */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   TT_Load_Context
+   *
+   * @Description:
+   *   Prepare an execution context for glyph hinting.
+   *
+   * @Input:
+   *   face ::
+   *     A handle to the source face object.
+   *
+   *   size ::
+   *     A handle to the source size object.
+   *
+   * @InOut:
+   *   exec ::
+   *     A handle to the target execution context.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   *
+   * @Note:
+   *   Only the glyph loader and debugger should call this function.
+   */
   FT_LOCAL_DEF( FT_Error )
   TT_Load_Context( TT_ExecContext  exec,
                    TT_Face         face,
@@ -467,23 +488,25 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    TT_Save_Context                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Saves the code ranges in a `size' object.                          */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    exec :: A handle to the source execution context.                  */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    size :: A handle to the target size object.                        */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    Only the glyph loader and debugger should call this function.      */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   TT_Save_Context
+   *
+   * @Description:
+   *   Saves the code ranges in a `size' object.
+   *
+   * @Input:
+   *   exec ::
+   *     A handle to the source execution context.
+   *
+   * @InOut:
+   *   size ::
+   *     A handle to the target size object.
+   *
+   * @Note:
+   *   Only the glyph loader and debugger should call this function.
+   */
   FT_LOCAL_DEF( void )
   TT_Save_Context( TT_ExecContext  exec,
                    TT_Size         size )
@@ -505,27 +528,29 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    TT_Run_Context                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Executes one or more instructions in the execution context.        */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    debug :: A Boolean flag.  If set, the function sets some internal  */
-  /*             variables and returns immediately, otherwise TT_RunIns()  */
-  /*             is called.                                                */
-  /*                                                                       */
-  /*             This is commented out currently.                          */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    exec  :: A handle to the target execution context.                 */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    TrueType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   TT_Run_Context
+   *
+   * @Description:
+   *   Executes one or more instructions in the execution context.
+   *
+   * @Input:
+   *   debug ::
+   *     A Boolean flag.  If set, the function sets some internal
+   *     variables and returns immediately, otherwise TT_RunIns()
+   *     is called.
+   *
+   *     This is commented out currently.
+   *
+   * @Input:
+   *   exec ::
+   *     A handle to the target execution context.
+   *
+   * @Return:
+   *   TrueType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   TT_Run_Context( TT_ExecContext  exec )
   {
@@ -609,22 +634,22 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Before an opcode is executed, the interpreter verifies that there are */
-  /* enough arguments on the stack, with the help of the `Pop_Push_Count'  */
-  /* table.                                                                */
-  /*                                                                       */
-  /* For each opcode, the first column gives the number of arguments that  */
-  /* are popped from the stack; the second one gives the number of those   */
-  /* that are pushed in result.                                            */
-  /*                                                                       */
-  /* Opcodes which have a varying number of parameters in the data stream  */
-  /* (NPUSHB, NPUSHW) are handled specially; they have a negative value in */
-  /* the `opcode_length' table, and the value in `Pop_Push_Count' is set   */
-  /* to zero.                                                              */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * Before an opcode is executed, the interpreter verifies that there are
+   * enough arguments on the stack, with the help of the `Pop_Push_Count'
+   * table.
+   *
+   * For each opcode, the first column gives the number of arguments that
+   * are popped from the stack; the second one gives the number of those
+   * that are pushed in result.
+   *
+   * Opcodes which have a varying number of parameters in the data stream
+   * (NPUSHB, NPUSHW) are handled specially; they have a negative value in
+   * the `opcode_length' table, and the value in `Pop_Push_Count' is set
+   * to zero.
+   *
+   */
 
 
 #undef  PACK
@@ -1448,18 +1473,18 @@
 #endif /* TT_DotFix14 */
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Current_Ratio                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Returns the current aspect ratio scaling factor depending on the   */
-  /*    projection vector's state and device resolutions.                  */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    The aspect ratio in 16.16 format, always <= 1.0 .                  */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Current_Ratio
+   *
+   * @Description:
+   *   Returns the current aspect ratio scaling factor depending on the
+   *   projection vector's state and device resolutions.
+   *
+   * @Return:
+   *   The aspect ratio in 16.16 format, always <= 1.0 .
+   */
   static FT_Long
   Current_Ratio( TT_ExecContext  exc )
   {
@@ -1501,11 +1526,11 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Functions related to the control value table (CVT).                   */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * Functions related to the control value table (CVT).
+   *
+   */
 
 
   FT_CALLBACK_DEF( FT_F26Dot6 )
@@ -1560,21 +1585,21 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    GetShortIns                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Returns a short integer taken from the instruction stream at       */
-  /*    address IP.                                                        */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    Short read at code[IP].                                            */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    This one could become a macro.                                     */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   GetShortIns
+   *
+   * @Description:
+   *   Returns a short integer taken from the instruction stream at
+   *   address IP.
+   *
+   * @Return:
+   *   Short read at code[IP].
+   *
+   * @Note:
+   *   This one could become a macro.
+   */
   static FT_Short
   GetShortIns( TT_ExecContext  exc )
   {
@@ -1585,22 +1610,24 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Ins_Goto_CodeRange                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Goes to a certain code range in the instruction stream.            */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    aRange :: The index of the code range.                             */
-  /*                                                                       */
-  /*    aIP    :: The new IP address in the code range.                    */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    SUCCESS or FAILURE.                                                */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Ins_Goto_CodeRange
+   *
+   * @Description:
+   *   Goes to a certain code range in the instruction stream.
+   *
+   * @Input:
+   *   aRange ::
+   *     The index of the code range.
+   *
+   *   aIP ::
+   *     The new IP address in the code range.
+   *
+   * @Return:
+   *   SUCCESS or FAILURE.
+   */
   static FT_Bool
   Ins_Goto_CodeRange( TT_ExecContext  exc,
                       FT_Int          aRange,
@@ -1642,27 +1669,30 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Direct_Move                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Moves a point by a given distance along the freedom vector.  The   */
-  /*    point will be `touched'.                                           */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    point    :: The index of the point to move.                        */
-  /*                                                                       */
-  /*    distance :: The distance to apply.                                 */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    zone     :: The affected glyph zone.                               */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    See `ttinterp.h' for details on backward compatibility mode.       */
-  /*    `Touches' the point.                                               */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Direct_Move
+   *
+   * @Description:
+   *   Moves a point by a given distance along the freedom vector.  The
+   *   point will be `touched'.
+   *
+   * @Input:
+   *   point ::
+   *     The index of the point to move.
+   *
+   *   distance ::
+   *     The distance to apply.
+   *
+   * @InOut:
+   *   zone ::
+   *     The affected glyph zone.
+   *
+   * @Note:
+   *   See `ttinterp.h' for details on backward compatibility mode.
+   *   `Touches' the point.
+   */
   static void
   Direct_Move( TT_ExecContext  exc,
                TT_GlyphZone    zone,
@@ -1728,23 +1758,26 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Direct_Move_Orig                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Moves the *original* position of a point by a given distance along */
-  /*    the freedom vector.  Obviously, the point will not be `touched'.   */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    point    :: The index of the point to move.                        */
-  /*                                                                       */
-  /*    distance :: The distance to apply.                                 */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    zone     :: The affected glyph zone.                               */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Direct_Move_Orig
+   *
+   * @Description:
+   *   Moves the *original* position of a point by a given distance along
+   *   the freedom vector.  Obviously, the point will not be `touched'.
+   *
+   * @Input:
+   *   point ::
+   *     The index of the point to move.
+   *
+   *   distance ::
+   *     The distance to apply.
+   *
+   * @InOut:
+   *   zone ::
+   *     The affected glyph zone.
+   */
   static void
   Direct_Move_Orig( TT_ExecContext  exc,
                     TT_GlyphZone    zone,
@@ -1772,15 +1805,15 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Special versions of Direct_Move()                                     */
-  /*                                                                       */
-  /*   The following versions are used whenever both vectors are both      */
-  /*   along one of the coordinate unit vectors, i.e. in 90% of the cases. */
-  /*   See `ttinterp.h' for details on backward compatibility mode.        */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * Special versions of Direct_Move()
+   *
+   *   The following versions are used whenever both vectors are both
+   *   along one of the coordinate unit vectors, i.e. in 90% of the cases.
+   *   See `ttinterp.h' for details on backward compatibility mode.
+   *
+   */
 
 
   static void
@@ -1827,14 +1860,14 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Special versions of Direct_Move_Orig()                                */
-  /*                                                                       */
-  /*   The following versions are used whenever both vectors are both      */
-  /*   along one of the coordinate unit vectors, i.e. in 90% of the cases. */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * Special versions of Direct_Move_Orig()
+   *
+   *   The following versions are used whenever both vectors are both
+   *   along one of the coordinate unit vectors, i.e. in 90% of the cases.
+   *
+   */
 
 
   static void
@@ -1861,28 +1894,30 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Round_None                                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Does not round, but adds engine compensation.                      */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    distance     :: The distance (not) to round.                       */
-  /*                                                                       */
-  /*    compensation :: The engine compensation.                           */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    The compensated distance.                                          */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The TrueType specification says very few about the relationship    */
-  /*    between rounding and engine compensation.  However, it seems from  */
-  /*    the description of super round that we should add the compensation */
-  /*    before rounding.                                                   */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Round_None
+   *
+   * @Description:
+   *   Does not round, but adds engine compensation.
+   *
+   * @Input:
+   *   distance ::
+   *     The distance (not) to round.
+   *
+   *   compensation ::
+   *     The engine compensation.
+   *
+   * @Return:
+   *   The compensated distance.
+   *
+   * @Note:
+   *   The TrueType specification says very few about the relationship
+   *   between rounding and engine compensation.  However, it seems from
+   *   the description of super round that we should add the compensation
+   *   before rounding.
+   */
   static FT_F26Dot6
   Round_None( TT_ExecContext  exc,
               FT_F26Dot6      distance,
@@ -1909,22 +1944,24 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Round_To_Grid                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Rounds value to grid after adding engine compensation.             */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    distance     :: The distance to round.                             */
-  /*                                                                       */
-  /*    compensation :: The engine compensation.                           */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    Rounded distance.                                                  */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Round_To_Grid
+   *
+   * @Description:
+   *   Rounds value to grid after adding engine compensation.
+   *
+   * @Input:
+   *   distance ::
+   *     The distance to round.
+   *
+   *   compensation ::
+   *     The engine compensation.
+   *
+   * @Return:
+   *   Rounded distance.
+   */
   static FT_F26Dot6
   Round_To_Grid( TT_ExecContext  exc,
                  FT_F26Dot6      distance,
@@ -1953,22 +1990,24 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Round_To_Half_Grid                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Rounds value to half grid after adding engine compensation.        */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    distance     :: The distance to round.                             */
-  /*                                                                       */
-  /*    compensation :: The engine compensation.                           */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    Rounded distance.                                                  */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Round_To_Half_Grid
+   *
+   * @Description:
+   *   Rounds value to half grid after adding engine compensation.
+   *
+   * @Input:
+   *   distance ::
+   *     The distance to round.
+   *
+   *   compensation ::
+   *     The engine compensation.
+   *
+   * @Return:
+   *   Rounded distance.
+   */
   static FT_F26Dot6
   Round_To_Half_Grid( TT_ExecContext  exc,
                       FT_F26Dot6      distance,
@@ -1999,22 +2038,24 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Round_Down_To_Grid                                                 */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Rounds value down to grid after adding engine compensation.        */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    distance     :: The distance to round.                             */
-  /*                                                                       */
-  /*    compensation :: The engine compensation.                           */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    Rounded distance.                                                  */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Round_Down_To_Grid
+   *
+   * @Description:
+   *   Rounds value down to grid after adding engine compensation.
+   *
+   * @Input:
+   *   distance ::
+   *     The distance to round.
+   *
+   *   compensation ::
+   *     The engine compensation.
+   *
+   * @Return:
+   *   Rounded distance.
+   */
   static FT_F26Dot6
   Round_Down_To_Grid( TT_ExecContext  exc,
                       FT_F26Dot6      distance,
@@ -2042,22 +2083,24 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Round_Up_To_Grid                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Rounds value up to grid after adding engine compensation.          */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    distance     :: The distance to round.                             */
-  /*                                                                       */
-  /*    compensation :: The engine compensation.                           */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    Rounded distance.                                                  */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Round_Up_To_Grid
+   *
+   * @Description:
+   *   Rounds value up to grid after adding engine compensation.
+   *
+   * @Input:
+   *   distance ::
+   *     The distance to round.
+   *
+   *   compensation ::
+   *     The engine compensation.
+   *
+   * @Return:
+   *   Rounded distance.
+   */
   static FT_F26Dot6
   Round_Up_To_Grid( TT_ExecContext  exc,
                     FT_F26Dot6      distance,
@@ -2086,22 +2129,24 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Round_To_Double_Grid                                               */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Rounds value to double grid after adding engine compensation.      */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    distance     :: The distance to round.                             */
-  /*                                                                       */
-  /*    compensation :: The engine compensation.                           */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    Rounded distance.                                                  */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Round_To_Double_Grid
+   *
+   * @Description:
+   *   Rounds value to double grid after adding engine compensation.
+   *
+   * @Input:
+   *   distance ::
+   *     The distance to round.
+   *
+   *   compensation ::
+   *     The engine compensation.
+   *
+   * @Return:
+   *   Rounded distance.
+   */
   static FT_F26Dot6
   Round_To_Double_Grid( TT_ExecContext  exc,
                         FT_F26Dot6      distance,
@@ -2130,28 +2175,30 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Round_Super                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Super-rounds value to grid after adding engine compensation.       */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    distance     :: The distance to round.                             */
-  /*                                                                       */
-  /*    compensation :: The engine compensation.                           */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    Rounded distance.                                                  */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The TrueType specification says very little about the relationship */
-  /*    between rounding and engine compensation.  However, it seems from  */
-  /*    the description of super round that we should add the compensation */
-  /*    before rounding.                                                   */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Round_Super
+   *
+   * @Description:
+   *   Super-rounds value to grid after adding engine compensation.
+   *
+   * @Input:
+   *   distance ::
+   *     The distance to round.
+   *
+   *   compensation ::
+   *     The engine compensation.
+   *
+   * @Return:
+   *   Rounded distance.
+   *
+   * @Note:
+   *   The TrueType specification says very little about the relationship
+   *   between rounding and engine compensation.  However, it seems from
+   *   the description of super round that we should add the compensation
+   *   before rounding.
+   */
   static FT_F26Dot6
   Round_Super( TT_ExecContext  exc,
                FT_F26Dot6      distance,
@@ -2183,26 +2230,28 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Round_Super_45                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Super-rounds value to grid after adding engine compensation.       */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    distance     :: The distance to round.                             */
-  /*                                                                       */
-  /*    compensation :: The engine compensation.                           */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    Rounded distance.                                                  */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    There is a separate function for Round_Super_45() as we may need   */
-  /*    greater precision.                                                 */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Round_Super_45
+   *
+   * @Description:
+   *   Super-rounds value to grid after adding engine compensation.
+   *
+   * @Input:
+   *   distance ::
+   *     The distance to round.
+   *
+   *   compensation ::
+   *     The engine compensation.
+   *
+   * @Return:
+   *   Rounded distance.
+   *
+   * @Note:
+   *   There is a separate function for Round_Super_45() as we may need
+   *   greater precision.
+   */
   static FT_F26Dot6
   Round_Super_45( TT_ExecContext  exc,
                   FT_F26Dot6      distance,
@@ -2234,17 +2283,18 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Compute_Round                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Sets the rounding mode.                                            */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    round_mode :: The rounding mode to be used.                        */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Compute_Round
+   *
+   * @Description:
+   *   Sets the rounding mode.
+   *
+   * @Input:
+   *   round_mode ::
+   *     The rounding mode to be used.
+   */
   static void
   Compute_Round( TT_ExecContext  exc,
                  FT_Byte         round_mode )
@@ -2286,19 +2336,21 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    SetSuperRound                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Sets Super Round parameters.                                       */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    GridPeriod :: The grid period.                                     */
-  /*                                                                       */
-  /*    selector   :: The SROUND opcode.                                   */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   SetSuperRound
+   *
+   * @Description:
+   *   Sets Super Round parameters.
+   *
+   * @Input:
+   *   GridPeriod ::
+   *     The grid period.
+   *
+   *   selector ::
+   *     The SROUND opcode.
+   */
   static void
   SetSuperRound( TT_ExecContext  exc,
                  FT_F2Dot14      GridPeriod,
@@ -2355,22 +2407,24 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Project                                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Computes the projection of vector given by (v2-v1) along the       */
-  /*    current projection vector.                                         */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    v1 :: First input vector.                                          */
-  /*    v2 :: Second input vector.                                         */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    The distance in F26dot6 format.                                    */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Project
+   *
+   * @Description:
+   *   Computes the projection of vector given by (v2-v1) along the
+   *   current projection vector.
+   *
+   * @Input:
+   *   v1 ::
+   *     First input vector.
+   *   v2 ::
+   *     Second input vector.
+   *
+   * @Return:
+   *   The distance in F26dot6 format.
+   */
   static FT_F26Dot6
   Project( TT_ExecContext  exc,
            FT_Pos          dx,
@@ -2382,22 +2436,24 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Dual_Project                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Computes the projection of the vector given by (v2-v1) along the   */
-  /*    current dual vector.                                               */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    v1 :: First input vector.                                          */
-  /*    v2 :: Second input vector.                                         */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    The distance in F26dot6 format.                                    */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Dual_Project
+   *
+   * @Description:
+   *   Computes the projection of the vector given by (v2-v1) along the
+   *   current dual vector.
+   *
+   * @Input:
+   *   v1 ::
+   *     First input vector.
+   *   v2 ::
+   *     Second input vector.
+   *
+   * @Return:
+   *   The distance in F26dot6 format.
+   */
   static FT_F26Dot6
   Dual_Project( TT_ExecContext  exc,
                 FT_Pos          dx,
@@ -2409,22 +2465,24 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Project_x                                                          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Computes the projection of the vector given by (v2-v1) along the   */
-  /*    horizontal axis.                                                   */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    v1 :: First input vector.                                          */
-  /*    v2 :: Second input vector.                                         */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    The distance in F26dot6 format.                                    */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Project_x
+   *
+   * @Description:
+   *   Computes the projection of the vector given by (v2-v1) along the
+   *   horizontal axis.
+   *
+   * @Input:
+   *   v1 ::
+   *     First input vector.
+   *   v2 ::
+   *     Second input vector.
+   *
+   * @Return:
+   *   The distance in F26dot6 format.
+   */
   static FT_F26Dot6
   Project_x( TT_ExecContext  exc,
              FT_Pos          dx,
@@ -2437,22 +2495,24 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Project_y                                                          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Computes the projection of the vector given by (v2-v1) along the   */
-  /*    vertical axis.                                                     */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    v1 :: First input vector.                                          */
-  /*    v2 :: Second input vector.                                         */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    The distance in F26dot6 format.                                    */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Project_y
+   *
+   * @Description:
+   *   Computes the projection of the vector given by (v2-v1) along the
+   *   vertical axis.
+   *
+   * @Input:
+   *   v1 ::
+   *     First input vector.
+   *   v2 ::
+   *     Second input vector.
+   *
+   * @Return:
+   *   The distance in F26dot6 format.
+   */
   static FT_F26Dot6
   Project_y( TT_ExecContext  exc,
              FT_Pos          dx,
@@ -2465,15 +2525,15 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Compute_Funcs                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Computes the projection and movement function pointers according   */
-  /*    to the current graphics state.                                     */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Compute_Funcs
+   *
+   * @Description:
+   *   Computes the projection and movement function pointers according
+   *   to the current graphics state.
+   */
   static void
   Compute_Funcs( TT_ExecContext  exc )
   {
@@ -2528,28 +2588,31 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Normalize                                                          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Norms a vector.                                                    */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    Vx :: The horizontal input vector coordinate.                      */
-  /*    Vy :: The vertical input vector coordinate.                        */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    R  :: The normed unit vector.                                      */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    Returns FAILURE if a vector parameter is zero.                     */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    In case Vx and Vy are both zero, `Normalize' returns SUCCESS, and  */
-  /*    R is undefined.                                                    */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Normalize
+   *
+   * @Description:
+   *   Norms a vector.
+   *
+   * @Input:
+   *   Vx ::
+   *     The horizontal input vector coordinate.
+   *   Vy ::
+   *     The vertical input vector coordinate.
+   *
+   * @Output:
+   *   R ::
+   *     The normed unit vector.
+   *
+   * @Return:
+   *   Returns FAILURE if a vector parameter is zero.
+   *
+   * @Note:
+   *   In case Vx and Vy are both zero, `Normalize' returns SUCCESS, and
+   *   R is undefined.
+   */
   static FT_Bool
   Normalize( FT_F26Dot6      Vx,
              FT_F26Dot6      Vy,
@@ -2577,11 +2640,11 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Here we start with the implementation of the various opcodes.         */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * Here we start with the implementation of the various opcodes.
+   *
+   */
 
 
 #define ARRAY_BOUND_ERROR                         \
@@ -2592,12 +2655,12 @@
     } while (0)
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* MPPEM[]:      Measure Pixel Per EM                                    */
-  /* Opcode range: 0x4B                                                    */
-  /* Stack:        --> Euint16                                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * MPPEM[]:      Measure Pixel Per EM
+   * Opcode range: 0x4B
+   * Stack:        --> Euint16
+   */
   static void
   Ins_MPPEM( TT_ExecContext  exc,
              FT_Long*        args )
@@ -2606,12 +2669,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* MPS[]:        Measure Point Size                                      */
-  /* Opcode range: 0x4C                                                    */
-  /* Stack:        --> Euint16                                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * MPS[]:        Measure Point Size
+   * Opcode range: 0x4C
+   * Stack:        --> Euint16
+   */
   static void
   Ins_MPS( TT_ExecContext  exc,
            FT_Long*        args )
@@ -2633,12 +2696,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* DUP[]:        DUPlicate the stack's top element                       */
-  /* Opcode range: 0x20                                                    */
-  /* Stack:        StkElt --> StkElt StkElt                                */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * DUP[]:        DUPlicate the stack's top element
+   * Opcode range: 0x20
+   * Stack:        StkElt --> StkElt StkElt
+   */
   static void
   Ins_DUP( FT_Long*  args )
   {
@@ -2646,12 +2709,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* POP[]:        POP the stack's top element                             */
-  /* Opcode range: 0x21                                                    */
-  /* Stack:        StkElt -->                                              */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * POP[]:        POP the stack's top element
+   * Opcode range: 0x21
+   * Stack:        StkElt -->
+   */
   static void
   Ins_POP( void )
   {
@@ -2659,12 +2722,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* CLEAR[]:      CLEAR the entire stack                                  */
-  /* Opcode range: 0x22                                                    */
-  /* Stack:        StkElt... -->                                           */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * CLEAR[]:      CLEAR the entire stack
+   * Opcode range: 0x22
+   * Stack:        StkElt... -->
+   */
   static void
   Ins_CLEAR( TT_ExecContext  exc )
   {
@@ -2672,12 +2735,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SWAP[]:       SWAP the stack's top two elements                       */
-  /* Opcode range: 0x23                                                    */
-  /* Stack:        2 * StkElt --> 2 * StkElt                               */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SWAP[]:       SWAP the stack's top two elements
+   * Opcode range: 0x23
+   * Stack:        2 * StkElt --> 2 * StkElt
+   */
   static void
   Ins_SWAP( FT_Long*  args )
   {
@@ -2690,12 +2753,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* DEPTH[]:      return the stack DEPTH                                  */
-  /* Opcode range: 0x24                                                    */
-  /* Stack:        --> uint32                                              */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * DEPTH[]:      return the stack DEPTH
+   * Opcode range: 0x24
+   * Stack:        --> uint32
+   */
   static void
   Ins_DEPTH( TT_ExecContext  exc,
              FT_Long*        args )
@@ -2704,12 +2767,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* LT[]:         Less Than                                               */
-  /* Opcode range: 0x50                                                    */
-  /* Stack:        int32? int32? --> bool                                  */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * LT[]:         Less Than
+   * Opcode range: 0x50
+   * Stack:        int32? int32? --> bool
+   */
   static void
   Ins_LT( FT_Long*  args )
   {
@@ -2717,12 +2780,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* LTEQ[]:       Less Than or EQual                                      */
-  /* Opcode range: 0x51                                                    */
-  /* Stack:        int32? int32? --> bool                                  */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * LTEQ[]:       Less Than or EQual
+   * Opcode range: 0x51
+   * Stack:        int32? int32? --> bool
+   */
   static void
   Ins_LTEQ( FT_Long*  args )
   {
@@ -2730,12 +2793,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* GT[]:         Greater Than                                            */
-  /* Opcode range: 0x52                                                    */
-  /* Stack:        int32? int32? --> bool                                  */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * GT[]:         Greater Than
+   * Opcode range: 0x52
+   * Stack:        int32? int32? --> bool
+   */
   static void
   Ins_GT( FT_Long*  args )
   {
@@ -2743,12 +2806,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* GTEQ[]:       Greater Than or EQual                                   */
-  /* Opcode range: 0x53                                                    */
-  /* Stack:        int32? int32? --> bool                                  */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * GTEQ[]:       Greater Than or EQual
+   * Opcode range: 0x53
+   * Stack:        int32? int32? --> bool
+   */
   static void
   Ins_GTEQ( FT_Long*  args )
   {
@@ -2756,12 +2819,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* EQ[]:         EQual                                                   */
-  /* Opcode range: 0x54                                                    */
-  /* Stack:        StkElt StkElt --> bool                                  */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * EQ[]:         EQual
+   * Opcode range: 0x54
+   * Stack:        StkElt StkElt --> bool
+   */
   static void
   Ins_EQ( FT_Long*  args )
   {
@@ -2769,12 +2832,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* NEQ[]:        Not EQual                                               */
-  /* Opcode range: 0x55                                                    */
-  /* Stack:        StkElt StkElt --> bool                                  */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * NEQ[]:        Not EQual
+   * Opcode range: 0x55
+   * Stack:        StkElt StkElt --> bool
+   */
   static void
   Ins_NEQ( FT_Long*  args )
   {
@@ -2782,12 +2845,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* ODD[]:        Is ODD                                                  */
-  /* Opcode range: 0x56                                                    */
-  /* Stack:        f26.6 --> bool                                          */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * ODD[]:        Is ODD
+   * Opcode range: 0x56
+   * Stack:        f26.6 --> bool
+   */
   static void
   Ins_ODD( TT_ExecContext  exc,
            FT_Long*        args )
@@ -2796,12 +2859,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* EVEN[]:       Is EVEN                                                 */
-  /* Opcode range: 0x57                                                    */
-  /* Stack:        f26.6 --> bool                                          */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * EVEN[]:       Is EVEN
+   * Opcode range: 0x57
+   * Stack:        f26.6 --> bool
+   */
   static void
   Ins_EVEN( TT_ExecContext  exc,
             FT_Long*        args )
@@ -2810,12 +2873,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* AND[]:        logical AND                                             */
-  /* Opcode range: 0x5A                                                    */
-  /* Stack:        uint32 uint32 --> uint32                                */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * AND[]:        logical AND
+   * Opcode range: 0x5A
+   * Stack:        uint32 uint32 --> uint32
+   */
   static void
   Ins_AND( FT_Long*  args )
   {
@@ -2823,12 +2886,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* OR[]:         logical OR                                              */
-  /* Opcode range: 0x5B                                                    */
-  /* Stack:        uint32 uint32 --> uint32                                */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * OR[]:         logical OR
+   * Opcode range: 0x5B
+   * Stack:        uint32 uint32 --> uint32
+   */
   static void
   Ins_OR( FT_Long*  args )
   {
@@ -2836,12 +2899,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* NOT[]:        logical NOT                                             */
-  /* Opcode range: 0x5C                                                    */
-  /* Stack:        StkElt --> uint32                                       */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * NOT[]:        logical NOT
+   * Opcode range: 0x5C
+   * Stack:        StkElt --> uint32
+   */
   static void
   Ins_NOT( FT_Long*  args )
   {
@@ -2849,12 +2912,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* ADD[]:        ADD                                                     */
-  /* Opcode range: 0x60                                                    */
-  /* Stack:        f26.6 f26.6 --> f26.6                                   */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * ADD[]:        ADD
+   * Opcode range: 0x60
+   * Stack:        f26.6 f26.6 --> f26.6
+   */
   static void
   Ins_ADD( FT_Long*  args )
   {
@@ -2862,12 +2925,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SUB[]:        SUBtract                                                */
-  /* Opcode range: 0x61                                                    */
-  /* Stack:        f26.6 f26.6 --> f26.6                                   */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SUB[]:        SUBtract
+   * Opcode range: 0x61
+   * Stack:        f26.6 f26.6 --> f26.6
+   */
   static void
   Ins_SUB( FT_Long*  args )
   {
@@ -2875,12 +2938,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* DIV[]:        DIVide                                                  */
-  /* Opcode range: 0x62                                                    */
-  /* Stack:        f26.6 f26.6 --> f26.6                                   */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * DIV[]:        DIVide
+   * Opcode range: 0x62
+   * Stack:        f26.6 f26.6 --> f26.6
+   */
   static void
   Ins_DIV( TT_ExecContext  exc,
            FT_Long*        args )
@@ -2892,12 +2955,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* MUL[]:        MULtiply                                                */
-  /* Opcode range: 0x63                                                    */
-  /* Stack:        f26.6 f26.6 --> f26.6                                   */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * MUL[]:        MULtiply
+   * Opcode range: 0x63
+   * Stack:        f26.6 f26.6 --> f26.6
+   */
   static void
   Ins_MUL( FT_Long*  args )
   {
@@ -2905,12 +2968,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* ABS[]:        ABSolute value                                          */
-  /* Opcode range: 0x64                                                    */
-  /* Stack:        f26.6 --> f26.6                                         */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * ABS[]:        ABSolute value
+   * Opcode range: 0x64
+   * Stack:        f26.6 --> f26.6
+   */
   static void
   Ins_ABS( FT_Long*  args )
   {
@@ -2919,12 +2982,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* NEG[]:        NEGate                                                  */
-  /* Opcode range: 0x65                                                    */
-  /* Stack:        f26.6 --> f26.6                                         */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * NEG[]:        NEGate
+   * Opcode range: 0x65
+   * Stack:        f26.6 --> f26.6
+   */
   static void
   Ins_NEG( FT_Long*  args )
   {
@@ -2932,12 +2995,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* FLOOR[]:      FLOOR                                                   */
-  /* Opcode range: 0x66                                                    */
-  /* Stack:        f26.6 --> f26.6                                         */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * FLOOR[]:      FLOOR
+   * Opcode range: 0x66
+   * Stack:        f26.6 --> f26.6
+   */
   static void
   Ins_FLOOR( FT_Long*  args )
   {
@@ -2945,12 +3008,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* CEILING[]:    CEILING                                                 */
-  /* Opcode range: 0x67                                                    */
-  /* Stack:        f26.6 --> f26.6                                         */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * CEILING[]:    CEILING
+   * Opcode range: 0x67
+   * Stack:        f26.6 --> f26.6
+   */
   static void
   Ins_CEILING( FT_Long*  args )
   {
@@ -2958,12 +3021,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* RS[]:         Read Store                                              */
-  /* Opcode range: 0x43                                                    */
-  /* Stack:        uint32 --> uint32                                       */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * RS[]:         Read Store
+   * Opcode range: 0x43
+   * Stack:        uint32 --> uint32
+   */
   static void
   Ins_RS( TT_ExecContext  exc,
           FT_Long*        args )
@@ -3004,12 +3067,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* WS[]:         Write Store                                             */
-  /* Opcode range: 0x42                                                    */
-  /* Stack:        uint32 uint32 -->                                       */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * WS[]:         Write Store
+   * Opcode range: 0x42
+   * Stack:        uint32 uint32 -->
+   */
   static void
   Ins_WS( TT_ExecContext  exc,
           FT_Long*        args )
@@ -3027,12 +3090,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* WCVTP[]:      Write CVT in Pixel units                                */
-  /* Opcode range: 0x44                                                    */
-  /* Stack:        f26.6 uint32 -->                                        */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * WCVTP[]:      Write CVT in Pixel units
+   * Opcode range: 0x44
+   * Stack:        f26.6 uint32 -->
+   */
   static void
   Ins_WCVTP( TT_ExecContext  exc,
              FT_Long*        args )
@@ -3050,12 +3113,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* WCVTF[]:      Write CVT in Funits                                     */
-  /* Opcode range: 0x70                                                    */
-  /* Stack:        uint32 uint32 -->                                       */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * WCVTF[]:      Write CVT in Funits
+   * Opcode range: 0x70
+   * Stack:        uint32 uint32 -->
+   */
   static void
   Ins_WCVTF( TT_ExecContext  exc,
              FT_Long*        args )
@@ -3073,12 +3136,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* RCVT[]:       Read CVT                                                */
-  /* Opcode range: 0x45                                                    */
-  /* Stack:        uint32 --> f26.6                                        */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * RCVT[]:       Read CVT
+   * Opcode range: 0x45
+   * Stack:        uint32 --> f26.6
+   */
   static void
   Ins_RCVT( TT_ExecContext  exc,
             FT_Long*        args )
@@ -3098,12 +3161,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* AA[]:         Adjust Angle                                            */
-  /* Opcode range: 0x7F                                                    */
-  /* Stack:        uint32 -->                                              */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * AA[]:         Adjust Angle
+   * Opcode range: 0x7F
+   * Stack:        uint32 -->
+   */
   static void
   Ins_AA( void )
   {
@@ -3111,14 +3174,14 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* DEBUG[]:      DEBUG.  Unsupported.                                    */
-  /* Opcode range: 0x4F                                                    */
-  /* Stack:        uint32 -->                                              */
-  /*                                                                       */
-  /* Note: The original instruction pops a value from the stack.           */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * DEBUG[]:      DEBUG.  Unsupported.
+   * Opcode range: 0x4F
+   * Stack:        uint32 -->
+   *
+   * Note: The original instruction pops a value from the stack.
+   */
   static void
   Ins_DEBUG( TT_ExecContext  exc )
   {
@@ -3126,12 +3189,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* ROUND[ab]:    ROUND value                                             */
-  /* Opcode range: 0x68-0x6B                                               */
-  /* Stack:        f26.6 --> f26.6                                         */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * ROUND[ab]:    ROUND value
+   * Opcode range: 0x68-0x6B
+   * Stack:        f26.6 --> f26.6
+   */
   static void
   Ins_ROUND( TT_ExecContext  exc,
              FT_Long*        args )
@@ -3143,12 +3206,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* NROUND[ab]:   No ROUNDing of value                                    */
-  /* Opcode range: 0x6C-0x6F                                               */
-  /* Stack:        f26.6 --> f26.6                                         */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * NROUND[ab]:   No ROUNDing of value
+   * Opcode range: 0x6C-0x6F
+   * Stack:        f26.6 --> f26.6
+   */
   static void
   Ins_NROUND( TT_ExecContext  exc,
               FT_Long*        args )
@@ -3160,12 +3223,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* MAX[]:        MAXimum                                                 */
-  /* Opcode range: 0x8B                                                    */
-  /* Stack:        int32? int32? --> int32                                 */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * MAX[]:        MAXimum
+   * Opcode range: 0x8B
+   * Stack:        int32? int32? --> int32
+   */
   static void
   Ins_MAX( FT_Long*  args )
   {
@@ -3174,12 +3237,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* MIN[]:        MINimum                                                 */
-  /* Opcode range: 0x8C                                                    */
-  /* Stack:        int32? int32? --> int32                                 */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * MIN[]:        MINimum
+   * Opcode range: 0x8C
+   * Stack:        int32? int32? --> int32
+   */
   static void
   Ins_MIN( FT_Long*  args )
   {
@@ -3188,12 +3251,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* MINDEX[]:     Move INDEXed element                                    */
-  /* Opcode range: 0x26                                                    */
-  /* Stack:        int32? --> StkElt                                       */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * MINDEX[]:     Move INDEXed element
+   * Opcode range: 0x26
+   * Stack:        int32? --> StkElt
+   */
   static void
   Ins_MINDEX( TT_ExecContext  exc,
               FT_Long*        args )
@@ -3221,12 +3284,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* CINDEX[]:     Copy INDEXed element                                    */
-  /* Opcode range: 0x25                                                    */
-  /* Stack:        int32 --> StkElt                                        */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * CINDEX[]:     Copy INDEXed element
+   * Opcode range: 0x25
+   * Stack:        int32 --> StkElt
+   */
   static void
   Ins_CINDEX( TT_ExecContext  exc,
               FT_Long*        args )
@@ -3247,12 +3310,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* ROLL[]:       ROLL top three elements                                 */
-  /* Opcode range: 0x8A                                                    */
-  /* Stack:        3 * StkElt --> 3 * StkElt                               */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * ROLL[]:       ROLL top three elements
+   * Opcode range: 0x8A
+   * Stack:        3 * StkElt --> 3 * StkElt
+   */
   static void
   Ins_ROLL( FT_Long*  args )
   {
@@ -3269,19 +3332,19 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* MANAGING THE FLOW OF CONTROL                                          */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * MANAGING THE FLOW OF CONTROL
+   *
+   */
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SLOOP[]:      Set LOOP variable                                       */
-  /* Opcode range: 0x17                                                    */
-  /* Stack:        int32? -->                                              */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SLOOP[]:      Set LOOP variable
+   * Opcode range: 0x17
+   * Stack:        int32? -->
+   */
   static void
   Ins_SLOOP( TT_ExecContext  exc,
              FT_Long*        args )
@@ -3323,12 +3386,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* IF[]:         IF test                                                 */
-  /* Opcode range: 0x58                                                    */
-  /* Stack:        StkElt -->                                              */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * IF[]:         IF test
+   * Opcode range: 0x58
+   * Stack:        StkElt -->
+   */
   static void
   Ins_IF( TT_ExecContext  exc,
           FT_Long*        args )
@@ -3367,12 +3430,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* ELSE[]:       ELSE                                                    */
-  /* Opcode range: 0x1B                                                    */
-  /* Stack:        -->                                                     */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * ELSE[]:       ELSE
+   * Opcode range: 0x1B
+   * Stack:        -->
+   */
   static void
   Ins_ELSE( TT_ExecContext  exc )
   {
@@ -3400,12 +3463,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* EIF[]:        End IF                                                  */
-  /* Opcode range: 0x59                                                    */
-  /* Stack:        -->                                                     */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * EIF[]:        End IF
+   * Opcode range: 0x59
+   * Stack:        -->
+   */
   static void
   Ins_EIF( void )
   {
@@ -3413,12 +3476,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* JMPR[]:       JuMP Relative                                           */
-  /* Opcode range: 0x1C                                                    */
-  /* Stack:        int32 -->                                               */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * JMPR[]:       JuMP Relative
+   * Opcode range: 0x1C
+   * Stack:        int32 -->
+   */
   static void
   Ins_JMPR( TT_ExecContext  exc,
             FT_Long*        args )
@@ -3448,12 +3511,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* JROT[]:       Jump Relative On True                                   */
-  /* Opcode range: 0x78                                                    */
-  /* Stack:        StkElt int32 -->                                        */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * JROT[]:       Jump Relative On True
+   * Opcode range: 0x78
+   * Stack:        StkElt int32 -->
+   */
   static void
   Ins_JROT( TT_ExecContext  exc,
             FT_Long*        args )
@@ -3463,12 +3526,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* JROF[]:       Jump Relative On False                                  */
-  /* Opcode range: 0x79                                                    */
-  /* Stack:        StkElt int32 -->                                        */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * JROF[]:       Jump Relative On False
+   * Opcode range: 0x79
+   * Stack:        StkElt int32 -->
+   */
   static void
   Ins_JROF( TT_ExecContext  exc,
             FT_Long*        args )
@@ -3478,19 +3541,19 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* DEFINING AND USING FUNCTIONS AND INSTRUCTIONS                         */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * DEFINING AND USING FUNCTIONS AND INSTRUCTIONS
+   *
+   */
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* FDEF[]:       Function DEFinition                                     */
-  /* Opcode range: 0x2C                                                    */
-  /* Stack:        uint32 -->                                              */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * FDEF[]:       Function DEFinition
+   * Opcode range: 0x2C
+   * Stack:        uint32 -->
+   */
   static void
   Ins_FDEF( TT_ExecContext  exc,
             FT_Long*        args )
@@ -3788,12 +3851,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* ENDF[]:       END Function definition                                 */
-  /* Opcode range: 0x2D                                                    */
-  /* Stack:        -->                                                     */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * ENDF[]:       END Function definition
+   * Opcode range: 0x2D
+   * Stack:        -->
+   */
   static void
   Ins_ENDF( TT_ExecContext  exc )
   {
@@ -3837,12 +3900,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* CALL[]:       CALL function                                           */
-  /* Opcode range: 0x2B                                                    */
-  /* Stack:        uint32? -->                                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * CALL[]:       CALL function
+   * Opcode range: 0x2B
+   * Stack:        uint32? -->
+   */
   static void
   Ins_CALL( TT_ExecContext  exc,
             FT_Long*        args )
@@ -3926,12 +3989,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* LOOPCALL[]:   LOOP and CALL function                                  */
-  /* Opcode range: 0x2A                                                    */
-  /* Stack:        uint32? Eint16? -->                                     */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * LOOPCALL[]:   LOOP and CALL function
+   * Opcode range: 0x2A
+   * Stack:        uint32? Eint16? -->
+   */
   static void
   Ins_LOOPCALL( TT_ExecContext  exc,
                 FT_Long*        args )
@@ -4019,12 +4082,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* IDEF[]:       Instruction DEFinition                                  */
-  /* Opcode range: 0x89                                                    */
-  /* Stack:        Eint8 -->                                               */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * IDEF[]:       Instruction DEFinition
+   * Opcode range: 0x89
+   * Stack:        Eint8 -->
+   */
   static void
   Ins_IDEF( TT_ExecContext  exc,
             FT_Long*        args )
@@ -4094,19 +4157,19 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* PUSHING DATA ONTO THE INTERPRETER STACK                               */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * PUSHING DATA ONTO THE INTERPRETER STACK
+   *
+   */
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* NPUSHB[]:     PUSH N Bytes                                            */
-  /* Opcode range: 0x40                                                    */
-  /* Stack:        --> uint32...                                           */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * NPUSHB[]:     PUSH N Bytes
+   * Opcode range: 0x40
+   * Stack:        --> uint32...
+   */
   static void
   Ins_NPUSHB( TT_ExecContext  exc,
               FT_Long*        args )
@@ -4129,12 +4192,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* NPUSHW[]:     PUSH N Words                                            */
-  /* Opcode range: 0x41                                                    */
-  /* Stack:        --> int32...                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * NPUSHW[]:     PUSH N Words
+   * Opcode range: 0x41
+   * Stack:        --> int32...
+   */
   static void
   Ins_NPUSHW( TT_ExecContext  exc,
               FT_Long*        args )
@@ -4160,12 +4223,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* PUSHB[abc]:   PUSH Bytes                                              */
-  /* Opcode range: 0xB0-0xB7                                               */
-  /* Stack:        --> uint32...                                           */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * PUSHB[abc]:   PUSH Bytes
+   * Opcode range: 0xB0-0xB7
+   * Stack:        --> uint32...
+   */
   static void
   Ins_PUSHB( TT_ExecContext  exc,
              FT_Long*        args )
@@ -4186,12 +4249,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* PUSHW[abc]:   PUSH Words                                              */
-  /* Opcode range: 0xB8-0xBF                                               */
-  /* Stack:        --> int32...                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * PUSHW[abc]:   PUSH Words
+   * Opcode range: 0xB8-0xBF
+   * Stack:        --> int32...
+   */
   static void
   Ins_PUSHW( TT_ExecContext  exc,
              FT_Long*        args )
@@ -4216,11 +4279,11 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* MANAGING THE GRAPHICS STATE                                           */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * MANAGING THE GRAPHICS STATE
+   *
+   */
 
 
   static FT_Bool
@@ -4274,20 +4337,20 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SVTCA[a]:     Set (F and P) Vectors to Coordinate Axis                */
-  /* Opcode range: 0x00-0x01                                               */
-  /* Stack:        -->                                                     */
-  /*                                                                       */
-  /* SPvTCA[a]:    Set PVector to Coordinate Axis                          */
-  /* Opcode range: 0x02-0x03                                               */
-  /* Stack:        -->                                                     */
-  /*                                                                       */
-  /* SFvTCA[a]:    Set FVector to Coordinate Axis                          */
-  /* Opcode range: 0x04-0x05                                               */
-  /* Stack:        -->                                                     */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SVTCA[a]:     Set (F and P) Vectors to Coordinate Axis
+   * Opcode range: 0x00-0x01
+   * Stack:        -->
+   *
+   * SPvTCA[a]:    Set PVector to Coordinate Axis
+   * Opcode range: 0x02-0x03
+   * Stack:        -->
+   *
+   * SFvTCA[a]:    Set FVector to Coordinate Axis
+   * Opcode range: 0x04-0x05
+   * Stack:        -->
+   */
   static void
   Ins_SxyTCA( TT_ExecContext  exc )
   {
@@ -4318,12 +4381,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SPvTL[a]:     Set PVector To Line                                     */
-  /* Opcode range: 0x06-0x07                                               */
-  /* Stack:        uint32 uint32 -->                                       */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SPvTL[a]:     Set PVector To Line
+   * Opcode range: 0x06-0x07
+   * Stack:        uint32 uint32 -->
+   */
   static void
   Ins_SPVTL( TT_ExecContext  exc,
              FT_Long*        args )
@@ -4339,12 +4402,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SFvTL[a]:     Set FVector To Line                                     */
-  /* Opcode range: 0x08-0x09                                               */
-  /* Stack:        uint32 uint32 -->                                       */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SFvTL[a]:     Set FVector To Line
+   * Opcode range: 0x08-0x09
+   * Stack:        uint32 uint32 -->
+   */
   static void
   Ins_SFVTL( TT_ExecContext  exc,
              FT_Long*        args )
@@ -4359,12 +4422,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SFvTPv[]:     Set FVector To PVector                                  */
-  /* Opcode range: 0x0E                                                    */
-  /* Stack:        -->                                                     */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SFvTPv[]:     Set FVector To PVector
+   * Opcode range: 0x0E
+   * Stack:        -->
+   */
   static void
   Ins_SFVTPV( TT_ExecContext  exc )
   {
@@ -4373,12 +4436,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SPvFS[]:      Set PVector From Stack                                  */
-  /* Opcode range: 0x0A                                                    */
-  /* Stack:        f2.14 f2.14 -->                                         */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SPvFS[]:      Set PVector From Stack
+   * Opcode range: 0x0A
+   * Stack:        f2.14 f2.14 -->
+   */
   static void
   Ins_SPVFS( TT_ExecContext  exc,
              FT_Long*        args )
@@ -4400,12 +4463,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SFvFS[]:      Set FVector From Stack                                  */
-  /* Opcode range: 0x0B                                                    */
-  /* Stack:        f2.14 f2.14 -->                                         */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SFvFS[]:      Set FVector From Stack
+   * Opcode range: 0x0B
+   * Stack:        f2.14 f2.14 -->
+   */
   static void
   Ins_SFVFS( TT_ExecContext  exc,
              FT_Long*        args )
@@ -4425,12 +4488,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* GPv[]:        Get Projection Vector                                   */
-  /* Opcode range: 0x0C                                                    */
-  /* Stack:        ef2.14 --> ef2.14                                       */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * GPv[]:        Get Projection Vector
+   * Opcode range: 0x0C
+   * Stack:        ef2.14 --> ef2.14
+   */
   static void
   Ins_GPV( TT_ExecContext  exc,
            FT_Long*        args )
@@ -4440,12 +4503,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* GFv[]:        Get Freedom Vector                                      */
-  /* Opcode range: 0x0D                                                    */
-  /* Stack:        ef2.14 --> ef2.14                                       */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * GFv[]:        Get Freedom Vector
+   * Opcode range: 0x0D
+   * Stack:        ef2.14 --> ef2.14
+   */
   static void
   Ins_GFV( TT_ExecContext  exc,
            FT_Long*        args )
@@ -4455,12 +4518,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SRP0[]:       Set Reference Point 0                                   */
-  /* Opcode range: 0x10                                                    */
-  /* Stack:        uint32 -->                                              */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SRP0[]:       Set Reference Point 0
+   * Opcode range: 0x10
+   * Stack:        uint32 -->
+   */
   static void
   Ins_SRP0( TT_ExecContext  exc,
             FT_Long*        args )
@@ -4469,12 +4532,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SRP1[]:       Set Reference Point 1                                   */
-  /* Opcode range: 0x11                                                    */
-  /* Stack:        uint32 -->                                              */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SRP1[]:       Set Reference Point 1
+   * Opcode range: 0x11
+   * Stack:        uint32 -->
+   */
   static void
   Ins_SRP1( TT_ExecContext  exc,
             FT_Long*        args )
@@ -4483,12 +4546,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SRP2[]:       Set Reference Point 2                                   */
-  /* Opcode range: 0x12                                                    */
-  /* Stack:        uint32 -->                                              */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SRP2[]:       Set Reference Point 2
+   * Opcode range: 0x12
+   * Stack:        uint32 -->
+   */
   static void
   Ins_SRP2( TT_ExecContext  exc,
             FT_Long*        args )
@@ -4497,12 +4560,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SMD[]:        Set Minimum Distance                                    */
-  /* Opcode range: 0x1A                                                    */
-  /* Stack:        f26.6 -->                                               */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SMD[]:        Set Minimum Distance
+   * Opcode range: 0x1A
+   * Stack:        f26.6 -->
+   */
   static void
   Ins_SMD( TT_ExecContext  exc,
            FT_Long*        args )
@@ -4511,12 +4574,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SCVTCI[]:     Set Control Value Table Cut In                          */
-  /* Opcode range: 0x1D                                                    */
-  /* Stack:        f26.6 -->                                               */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SCVTCI[]:     Set Control Value Table Cut In
+   * Opcode range: 0x1D
+   * Stack:        f26.6 -->
+   */
   static void
   Ins_SCVTCI( TT_ExecContext  exc,
               FT_Long*        args )
@@ -4525,12 +4588,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SSWCI[]:      Set Single Width Cut In                                 */
-  /* Opcode range: 0x1E                                                    */
-  /* Stack:        f26.6 -->                                               */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SSWCI[]:      Set Single Width Cut In
+   * Opcode range: 0x1E
+   * Stack:        f26.6 -->
+   */
   static void
   Ins_SSWCI( TT_ExecContext  exc,
              FT_Long*        args )
@@ -4539,12 +4602,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SSW[]:        Set Single Width                                        */
-  /* Opcode range: 0x1F                                                    */
-  /* Stack:        int32? -->                                              */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SSW[]:        Set Single Width
+   * Opcode range: 0x1F
+   * Stack:        int32? -->
+   */
   static void
   Ins_SSW( TT_ExecContext  exc,
            FT_Long*        args )
@@ -4554,12 +4617,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* FLIPON[]:     Set auto-FLIP to ON                                     */
-  /* Opcode range: 0x4D                                                    */
-  /* Stack:        -->                                                     */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * FLIPON[]:     Set auto-FLIP to ON
+   * Opcode range: 0x4D
+   * Stack:        -->
+   */
   static void
   Ins_FLIPON( TT_ExecContext  exc )
   {
@@ -4567,12 +4630,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* FLIPOFF[]:    Set auto-FLIP to OFF                                    */
-  /* Opcode range: 0x4E                                                    */
-  /* Stack:        -->                                                     */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * FLIPOFF[]:    Set auto-FLIP to OFF
+   * Opcode range: 0x4E
+   * Stack:        -->
+   */
   static void
   Ins_FLIPOFF( TT_ExecContext  exc )
   {
@@ -4580,12 +4643,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SANGW[]:      Set ANGle Weight                                        */
-  /* Opcode range: 0x7E                                                    */
-  /* Stack:        uint32 -->                                              */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SANGW[]:      Set ANGle Weight
+   * Opcode range: 0x7E
+   * Stack:        uint32 -->
+   */
   static void
   Ins_SANGW( void )
   {
@@ -4593,12 +4656,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SDB[]:        Set Delta Base                                          */
-  /* Opcode range: 0x5E                                                    */
-  /* Stack:        uint32 -->                                              */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SDB[]:        Set Delta Base
+   * Opcode range: 0x5E
+   * Stack:        uint32 -->
+   */
   static void
   Ins_SDB( TT_ExecContext  exc,
            FT_Long*        args )
@@ -4607,12 +4670,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SDS[]:        Set Delta Shift                                         */
-  /* Opcode range: 0x5F                                                    */
-  /* Stack:        uint32 -->                                              */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SDS[]:        Set Delta Shift
+   * Opcode range: 0x5F
+   * Stack:        uint32 -->
+   */
   static void
   Ins_SDS( TT_ExecContext  exc,
            FT_Long*        args )
@@ -4624,12 +4687,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* RTHG[]:       Round To Half Grid                                      */
-  /* Opcode range: 0x19                                                    */
-  /* Stack:        -->                                                     */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * RTHG[]:       Round To Half Grid
+   * Opcode range: 0x19
+   * Stack:        -->
+   */
   static void
   Ins_RTHG( TT_ExecContext  exc )
   {
@@ -4638,12 +4701,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* RTG[]:        Round To Grid                                           */
-  /* Opcode range: 0x18                                                    */
-  /* Stack:        -->                                                     */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * RTG[]:        Round To Grid
+   * Opcode range: 0x18
+   * Stack:        -->
+   */
   static void
   Ins_RTG( TT_ExecContext  exc )
   {
@@ -4652,11 +4715,11 @@
   }
 
 
-  /*************************************************************************/
-  /* RTDG[]:       Round To Double Grid                                    */
-  /* Opcode range: 0x3D                                                    */
-  /* Stack:        -->                                                     */
-  /*                                                                       */
+  /**************************************************************************
+   * RTDG[]:       Round To Double Grid
+   * Opcode range: 0x3D
+   * Stack:        -->
+   */
   static void
   Ins_RTDG( TT_ExecContext  exc )
   {
@@ -4665,11 +4728,11 @@
   }
 
 
-  /*************************************************************************/
-  /* RUTG[]:       Round Up To Grid                                        */
-  /* Opcode range: 0x7C                                                    */
-  /* Stack:        -->                                                     */
-  /*                                                                       */
+  /**************************************************************************
+   * RUTG[]:       Round Up To Grid
+   * Opcode range: 0x7C
+   * Stack:        -->
+   */
   static void
   Ins_RUTG( TT_ExecContext  exc )
   {
@@ -4678,12 +4741,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* RDTG[]:       Round Down To Grid                                      */
-  /* Opcode range: 0x7D                                                    */
-  /* Stack:        -->                                                     */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * RDTG[]:       Round Down To Grid
+   * Opcode range: 0x7D
+   * Stack:        -->
+   */
   static void
   Ins_RDTG( TT_ExecContext  exc )
   {
@@ -4692,12 +4755,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* ROFF[]:       Round OFF                                               */
-  /* Opcode range: 0x7A                                                    */
-  /* Stack:        -->                                                     */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * ROFF[]:       Round OFF
+   * Opcode range: 0x7A
+   * Stack:        -->
+   */
   static void
   Ins_ROFF( TT_ExecContext  exc )
   {
@@ -4706,12 +4769,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SROUND[]:     Super ROUND                                             */
-  /* Opcode range: 0x76                                                    */
-  /* Stack:        Eint8 -->                                               */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SROUND[]:     Super ROUND
+   * Opcode range: 0x76
+   * Stack:        Eint8 -->
+   */
   static void
   Ins_SROUND( TT_ExecContext  exc,
               FT_Long*        args )
@@ -4723,12 +4786,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* S45ROUND[]:   Super ROUND 45 degrees                                  */
-  /* Opcode range: 0x77                                                    */
-  /* Stack:        uint32 -->                                              */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * S45ROUND[]:   Super ROUND 45 degrees
+   * Opcode range: 0x77
+   * Stack:        uint32 -->
+   */
   static void
   Ins_S45ROUND( TT_ExecContext  exc,
                 FT_Long*        args )
@@ -4740,15 +4803,15 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* GC[a]:        Get Coordinate projected onto                           */
-  /* Opcode range: 0x46-0x47                                               */
-  /* Stack:        uint32 --> f26.6                                        */
-  /*                                                                       */
-  /* XXX: UNDOCUMENTED: Measures from the original glyph must be taken     */
-  /*      along the dual projection vector!                                */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * GC[a]:        Get Coordinate projected onto
+   * Opcode range: 0x46-0x47
+   * Stack:        uint32 --> f26.6
+   *
+   * XXX: UNDOCUMENTED: Measures from the original glyph must be taken
+   *      along the dual projection vector!
+   */
   static void
   Ins_GC( TT_ExecContext  exc,
           FT_Long*        args )
@@ -4777,16 +4840,16 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SCFS[]:       Set Coordinate From Stack                               */
-  /* Opcode range: 0x48                                                    */
-  /* Stack:        f26.6 uint32 -->                                        */
-  /*                                                                       */
-  /* Formula:                                                              */
-  /*                                                                       */
-  /*   OA := OA + ( value - OA.p )/( f.p ) * f                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SCFS[]:       Set Coordinate From Stack
+   * Opcode range: 0x48
+   * Stack:        f26.6 uint32 -->
+   *
+   * Formula:
+   *
+   *   OA := OA + ( value - OA.p )/( f.p ) * f
+   */
   static void
   Ins_SCFS( TT_ExecContext  exc,
             FT_Long*        args )
@@ -4815,21 +4878,21 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* MD[a]:        Measure Distance                                        */
-  /* Opcode range: 0x49-0x4A                                               */
-  /* Stack:        uint32 uint32 --> f26.6                                 */
-  /*                                                                       */
-  /* XXX: UNDOCUMENTED: Measure taken in the original glyph must be along  */
-  /*                    the dual projection vector.                        */
-  /*                                                                       */
-  /* XXX: UNDOCUMENTED: Flag attributes are inverted!                      */
-  /*                      0 => measure distance in original outline        */
-  /*                      1 => measure distance in grid-fitted outline     */
-  /*                                                                       */
-  /* XXX: UNDOCUMENTED: `zp0 - zp1', and not `zp2 - zp1!                   */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * MD[a]:        Measure Distance
+   * Opcode range: 0x49-0x4A
+   * Stack:        uint32 uint32 --> f26.6
+   *
+   * XXX: UNDOCUMENTED: Measure taken in the original glyph must be along
+   *                    the dual projection vector.
+   *
+   * XXX: UNDOCUMENTED: Flag attributes are inverted!
+   *                      0 => measure distance in original outline
+   *                      1 => measure distance in grid-fitted outline
+   *
+   * XXX: UNDOCUMENTED: `zp0 - zp1', and not `zp2 - zp1!
+   */
   static void
   Ins_MD( TT_ExecContext  exc,
           FT_Long*        args )
@@ -4902,12 +4965,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SDPvTL[a]:    Set Dual PVector to Line                                */
-  /* Opcode range: 0x86-0x87                                               */
-  /* Stack:        uint32 uint32 -->                                       */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SDPvTL[a]:    Set Dual PVector to Line
+   * Opcode range: 0x86-0x87
+   * Stack:        uint32 uint32 -->
+   */
   static void
   Ins_SDPVTL( TT_ExecContext  exc,
               FT_Long*        args )
@@ -4985,12 +5048,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SZP0[]:       Set Zone Pointer 0                                      */
-  /* Opcode range: 0x13                                                    */
-  /* Stack:        uint32 -->                                              */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SZP0[]:       Set Zone Pointer 0
+   * Opcode range: 0x13
+   * Stack:        uint32 -->
+   */
   static void
   Ins_SZP0( TT_ExecContext  exc,
             FT_Long*        args )
@@ -5015,12 +5078,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SZP1[]:       Set Zone Pointer 1                                      */
-  /* Opcode range: 0x14                                                    */
-  /* Stack:        uint32 -->                                              */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SZP1[]:       Set Zone Pointer 1
+   * Opcode range: 0x14
+   * Stack:        uint32 -->
+   */
   static void
   Ins_SZP1( TT_ExecContext  exc,
             FT_Long*        args )
@@ -5045,12 +5108,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SZP2[]:       Set Zone Pointer 2                                      */
-  /* Opcode range: 0x15                                                    */
-  /* Stack:        uint32 -->                                              */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SZP2[]:       Set Zone Pointer 2
+   * Opcode range: 0x15
+   * Stack:        uint32 -->
+   */
   static void
   Ins_SZP2( TT_ExecContext  exc,
             FT_Long*        args )
@@ -5075,12 +5138,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SZPS[]:       Set Zone PointerS                                       */
-  /* Opcode range: 0x16                                                    */
-  /* Stack:        uint32 -->                                              */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SZPS[]:       Set Zone PointerS
+   * Opcode range: 0x16
+   * Stack:        uint32 -->
+   */
   static void
   Ins_SZPS( TT_ExecContext  exc,
             FT_Long*        args )
@@ -5110,12 +5173,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* INSTCTRL[]:   INSTruction ConTRoL                                     */
-  /* Opcode range: 0x8E                                                    */
-  /* Stack:        int32 int32 -->                                         */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * INSTCTRL[]:   INSTruction ConTRoL
+   * Opcode range: 0x8E
+   * Stack:        int32 int32 -->
+   */
   static void
   Ins_INSTCTRL( TT_ExecContext  exc,
                 FT_Long*        args )
@@ -5172,12 +5235,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SCANCTRL[]:   SCAN ConTRoL                                            */
-  /* Opcode range: 0x85                                                    */
-  /* Stack:        uint32? -->                                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SCANCTRL[]:   SCAN ConTRoL
+   * Opcode range: 0x85
+   * Stack:        uint32? -->
+   */
   static void
   Ins_SCANCTRL( TT_ExecContext  exc,
                 FT_Long*        args )
@@ -5219,12 +5282,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SCANTYPE[]:   SCAN TYPE                                               */
-  /* Opcode range: 0x8D                                                    */
-  /* Stack:        uint16 -->                                              */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SCANTYPE[]:   SCAN TYPE
+   * Opcode range: 0x8D
+   * Stack:        uint16 -->
+   */
   static void
   Ins_SCANTYPE( TT_ExecContext  exc,
                 FT_Long*        args )
@@ -5234,19 +5297,19 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* MANAGING OUTLINES                                                     */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * MANAGING OUTLINES
+   *
+   */
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* FLIPPT[]:     FLIP PoinT                                              */
-  /* Opcode range: 0x80                                                    */
-  /* Stack:        uint32... -->                                           */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * FLIPPT[]:     FLIP PoinT
+   * Opcode range: 0x80
+   * Stack:        uint32... -->
+   */
   static void
   Ins_FLIPPT( TT_ExecContext  exc )
   {
@@ -5295,12 +5358,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* FLIPRGON[]:   FLIP RanGe ON                                           */
-  /* Opcode range: 0x81                                                    */
-  /* Stack:        uint32 uint32 -->                                       */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * FLIPRGON[]:   FLIP RanGe ON
+   * Opcode range: 0x81
+   * Stack:        uint32 uint32 -->
+   */
   static void
   Ins_FLIPRGON( TT_ExecContext  exc,
                 FT_Long*        args )
@@ -5333,12 +5396,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* FLIPRGOFF:    FLIP RanGe OFF                                          */
-  /* Opcode range: 0x82                                                    */
-  /* Stack:        uint32 uint32 -->                                       */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * FLIPRGOFF:    FLIP RanGe OFF
+   * Opcode range: 0x82
+   * Stack:        uint32 uint32 -->
+   */
   static void
   Ins_FLIPRGOFF( TT_ExecContext  exc,
                  FT_Long*        args )
@@ -5450,12 +5513,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SHP[a]:       SHift Point by the last point                           */
-  /* Opcode range: 0x32-0x33                                               */
-  /* Stack:        uint32... -->                                           */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SHP[a]:       SHift Point by the last point
+   * Opcode range: 0x32-0x33
+   * Stack:        uint32... -->
+   */
   static void
   Ins_SHP( TT_ExecContext  exc )
   {
@@ -5507,16 +5570,16 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SHC[a]:       SHift Contour                                           */
-  /* Opcode range: 0x34-35                                                 */
-  /* Stack:        uint32 -->                                              */
-  /*                                                                       */
-  /* UNDOCUMENTED: According to Greg Hitchcock, there is one (virtual)     */
-  /*               contour in the twilight zone, namely contour number     */
-  /*               zero which includes all points of it.                   */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SHC[a]:       SHift Contour
+   * Opcode range: 0x34-35
+   * Stack:        uint32 -->
+   *
+   * UNDOCUMENTED: According to Greg Hitchcock, there is one (virtual)
+   *               contour in the twilight zone, namely contour number
+   *               zero which includes all points of it.
+   */
   static void
   Ins_SHC( TT_ExecContext  exc,
            FT_Long*        args )
@@ -5563,12 +5626,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SHZ[a]:       SHift Zone                                              */
-  /* Opcode range: 0x36-37                                                 */
-  /* Stack:        uint32 -->                                              */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SHZ[a]:       SHift Zone
+   * Opcode range: 0x36-37
+   * Stack:        uint32 -->
+   */
   static void
   Ins_SHZ( TT_ExecContext  exc,
            FT_Long*        args )
@@ -5611,12 +5674,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* SHPIX[]:      SHift points by a PIXel amount                          */
-  /* Opcode range: 0x38                                                    */
-  /* Stack:        f26.6 uint32... -->                                     */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * SHPIX[]:      SHift points by a PIXel amount
+   * Opcode range: 0x38
+   * Stack:        f26.6 uint32... -->
+   */
   static void
   Ins_SHPIX( TT_ExecContext  exc,
              FT_Long*        args )
@@ -5771,12 +5834,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* MSIRP[a]:     Move Stack Indirect Relative Position                   */
-  /* Opcode range: 0x3A-0x3B                                               */
-  /* Stack:        f26.6 uint32 -->                                        */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * MSIRP[a]:     Move Stack Indirect Relative Position
+   * Opcode range: 0x3A-0x3B
+   * Stack:        f26.6 uint32 -->
+   */
   static void
   Ins_MSIRP( TT_ExecContext  exc,
              FT_Long*        args )
@@ -5846,12 +5909,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* MDAP[a]:      Move Direct Absolute Point                              */
-  /* Opcode range: 0x2E-0x2F                                               */
-  /* Stack:        uint32 -->                                              */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * MDAP[a]:      Move Direct Absolute Point
+   * Opcode range: 0x2E-0x2F
+   * Stack:        uint32 -->
+   */
   static void
   Ins_MDAP( TT_ExecContext  exc,
             FT_Long*        args )
@@ -5900,12 +5963,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* MIAP[a]:      Move Indirect Absolute Point                            */
-  /* Opcode range: 0x3E-0x3F                                               */
-  /* Stack:        uint32 uint32 -->                                       */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * MIAP[a]:      Move Indirect Absolute Point
+   * Opcode range: 0x3E-0x3F
+   * Stack:        uint32 uint32 -->
+   */
   static void
   Ins_MIAP( TT_ExecContext  exc,
             FT_Long*        args )
@@ -6020,12 +6083,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* MDRP[abcde]:  Move Direct Relative Point                              */
-  /* Opcode range: 0xC0-0xDF                                               */
-  /* Stack:        uint32 -->                                              */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * MDRP[abcde]:  Move Direct Relative Point
+   * Opcode range: 0xC0-0xDF
+   * Stack:        uint32 -->
+   */
   static void
   Ins_MDRP( TT_ExecContext  exc,
             FT_Long*        args )
@@ -6164,12 +6227,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* MIRP[abcde]:  Move Indirect Relative Point                            */
-  /* Opcode range: 0xE0-0xFF                                               */
-  /* Stack:        int32? uint32 -->                                       */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * MIRP[abcde]:  Move Indirect Relative Point
+   * Opcode range: 0xE0-0xFF
+   * Stack:        int32? uint32 -->
+   */
   static void
   Ins_MIRP( TT_ExecContext  exc,
             FT_Long*        args )
@@ -6411,12 +6474,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* ALIGNRP[]:    ALIGN Relative Point                                    */
-  /* Opcode range: 0x3C                                                    */
-  /* Stack:        uint32 uint32... -->                                    */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * ALIGNRP[]:    ALIGN Relative Point
+   * Opcode range: 0x3C
+   * Stack:        uint32 uint32... -->
+   */
   static void
   Ins_ALIGNRP( TT_ExecContext  exc )
   {
@@ -6474,12 +6537,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* ISECT[]:      moves point to InterSECTion                             */
-  /* Opcode range: 0x0F                                                    */
-  /* Stack:        5 * uint32 -->                                          */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * ISECT[]:      moves point to InterSECTion
+   * Opcode range: 0x0F
+   * Stack:        5 * uint32 -->
+   */
   static void
   Ins_ISECT( TT_ExecContext  exc,
              FT_Long*        args )
@@ -6570,12 +6633,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* ALIGNPTS[]:   ALIGN PoinTS                                            */
-  /* Opcode range: 0x27                                                    */
-  /* Stack:        uint32 uint32 -->                                       */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * ALIGNPTS[]:   ALIGN PoinTS
+   * Opcode range: 0x27
+   * Stack:        uint32 uint32 -->
+   */
   static void
   Ins_ALIGNPTS( TT_ExecContext  exc,
                 FT_Long*        args )
@@ -6602,12 +6665,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* IP[]:         Interpolate Point                                       */
-  /* Opcode range: 0x39                                                    */
-  /* Stack:        uint32... -->                                           */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * IP[]:         Interpolate Point
+   * Opcode range: 0x39
+   * Stack:        uint32... -->
+   */
 
   /* SOMETIMES, DUMBER CODE IS BETTER CODE */
 
@@ -6762,12 +6825,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* UTP[a]:       UnTouch Point                                           */
-  /* Opcode range: 0x29                                                    */
-  /* Stack:        uint32 -->                                              */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * UTP[a]:       UnTouch Point
+   * Opcode range: 0x29
+   * Stack:        uint32 -->
+   */
   static void
   Ins_UTP( TT_ExecContext  exc,
            FT_Long*        args )
@@ -6931,12 +6994,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* IUP[a]:       Interpolate Untouched Points                            */
-  /* Opcode range: 0x30-0x31                                               */
-  /* Stack:        -->                                                     */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * IUP[a]:       Interpolate Untouched Points
+   * Opcode range: 0x30-0x31
+   * Stack:        -->
+   */
   static void
   Ins_IUP( TT_ExecContext  exc )
   {
@@ -7059,12 +7122,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* DELTAPn[]:    DELTA exceptions P1, P2, P3                             */
-  /* Opcode range: 0x5D,0x71,0x72                                          */
-  /* Stack:        uint32 (2 * uint32)... -->                              */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * DELTAPn[]:    DELTA exceptions P1, P2, P3
+   * Opcode range: 0x5D,0x71,0x72
+   * Stack:        uint32 (2 * uint32)... -->
+   */
   static void
   Ins_DELTAP( TT_ExecContext  exc,
               FT_Long*        args )
@@ -7141,12 +7204,12 @@
           if ( SUBPIXEL_HINTING_INFINALITY )
           {
             /*
-             *  Allow delta move if
+             * Allow delta move if
              *
-             *  - not using ignore_x_mode rendering,
-             *  - glyph is specifically set to allow it, or
-             *  - glyph is composite and freedom vector is not in subpixel
-             *    direction.
+             * - not using ignore_x_mode rendering,
+             * - glyph is specifically set to allow it, or
+             * - glyph is composite and freedom vector is not in subpixel
+             *   direction.
              */
             if ( !exc->ignore_x_mode                                   ||
                  ( exc->sph_tweak_flags & SPH_TWEAK_ALWAYS_DO_DELTAP ) ||
@@ -7226,12 +7289,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* DELTACn[]:    DELTA exceptions C1, C2, C3                             */
-  /* Opcode range: 0x73,0x74,0x75                                          */
-  /* Stack:        uint32 (2 * uint32)... -->                              */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * DELTACn[]:    DELTA exceptions C1, C2, C3
+   * Opcode range: 0x73,0x74,0x75
+   * Stack:        uint32 (2 * uint32)... -->
+   */
   static void
   Ins_DELTAC( TT_ExecContext  exc,
               FT_Long*        args )
@@ -7304,27 +7367,27 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* MISC. INSTRUCTIONS                                                    */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * MISC. INSTRUCTIONS
+   *
+   */
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* GETINFO[]:    GET INFOrmation                                         */
-  /* Opcode range: 0x88                                                    */
-  /* Stack:        uint32 --> uint32                                       */
-  /*                                                                       */
-  /* XXX: UNDOCUMENTED: Selector bits higher than 9 are currently (May     */
-  /*      2015) not documented in the OpenType specification.              */
-  /*                                                                       */
-  /*      Selector bit 11 is incorrectly described as bit 8, while the     */
-  /*      real meaning of bit 8 (vertical LCD subpixels) stays             */
-  /*      undocumented.  The same mistake can be found in Greg Hitchcock's */
-  /*      whitepaper.                                                      */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * GETINFO[]:    GET INFOrmation
+   * Opcode range: 0x88
+   * Stack:        uint32 --> uint32
+   *
+   * XXX: UNDOCUMENTED: Selector bits higher than 9 are currently (May
+   *      2015) not documented in the OpenType specification.
+   *
+   *      Selector bit 11 is incorrectly described as bit 8, while the
+   *      real meaning of bit 8 (vertical LCD subpixels) stays
+   *      undocumented.  The same mistake can be found in Greg Hitchcock's
+   *      whitepaper.
+   */
   static void
   Ins_GETINFO( TT_ExecContext  exc,
                FT_Long*        args )
@@ -7336,11 +7399,11 @@
     K = 0;
 
 #ifdef TT_SUPPORT_SUBPIXEL_HINTING_INFINALITY
-    /********************************/
-    /* RASTERIZER VERSION           */
-    /* Selector Bit:  0             */
-    /* Return Bit(s): 0-7           */
-    /*                              */
+    /*********************************
+     * RASTERIZER VERSION
+     * Selector Bit:  0
+     * Return Bit(s): 0-7
+     */
     if ( SUBPIXEL_HINTING_INFINALITY &&
          ( args[0] & 1 ) != 0        &&
          exc->subpixel_hinting       )
@@ -7361,39 +7424,39 @@
       if ( ( args[0] & 1 ) != 0 )
         K = driver->interpreter_version;
 
-    /********************************/
-    /* GLYPH ROTATED                */
-    /* Selector Bit:  1             */
-    /* Return Bit(s): 8             */
-    /*                              */
+    /*********************************
+     * GLYPH ROTATED
+     * Selector Bit:  1
+     * Return Bit(s): 8
+     */
     if ( ( args[0] & 2 ) != 0 && exc->tt_metrics.rotated )
       K |= 1 << 8;
 
-    /********************************/
-    /* GLYPH STRETCHED              */
-    /* Selector Bit:  2             */
-    /* Return Bit(s): 9             */
-    /*                              */
+    /*********************************
+     * GLYPH STRETCHED
+     * Selector Bit:  2
+     * Return Bit(s): 9
+     */
     if ( ( args[0] & 4 ) != 0 && exc->tt_metrics.stretched )
       K |= 1 << 9;
 
 #ifdef TT_CONFIG_OPTION_GX_VAR_SUPPORT
-    /********************************/
-    /* VARIATION GLYPH              */
-    /* Selector Bit:  3             */
-    /* Return Bit(s): 10            */
-    /*                              */
-    /* XXX: UNDOCUMENTED!           */
+    /*********************************
+     * VARIATION GLYPH
+     * Selector Bit:  3
+     * Return Bit(s): 10
+     *
+     */
     if ( (args[0] & 8 ) != 0 && exc->face->blend )
       K |= 1 << 10;
 #endif
 
-    /********************************/
-    /* BI-LEVEL HINTING AND         */
-    /* GRAYSCALE RENDERING          */
-    /* Selector Bit:  5             */
-    /* Return Bit(s): 12            */
-    /*                              */
+    /*********************************
+     * BI-LEVEL HINTING AND
+     * GRAYSCALE RENDERING
+     * Selector Bit:  5
+     * Return Bit(s): 12
+     */
     if ( ( args[0] & 32 ) != 0 && exc->grayscale )
       K |= 1 << 12;
 
@@ -7404,50 +7467,50 @@
     /* Bold Italic'. */
     if ( SUBPIXEL_HINTING_MINIMAL && exc->subpixel_hinting_lean )
     {
-      /********************************/
-      /* HINTING FOR SUBPIXEL         */
-      /* Selector Bit:  6             */
-      /* Return Bit(s): 13            */
-      /*                              */
-      /* v40 does subpixel hinting by default. */
+      /*********************************
+       * HINTING FOR SUBPIXEL
+       * Selector Bit:  6
+       * Return Bit(s): 13
+       *
+       */
       if ( ( args[0] & 64 ) != 0 )
         K |= 1 << 13;
 
-      /********************************/
-      /* VERTICAL LCD SUBPIXELS?      */
-      /* Selector Bit:  8             */
-      /* Return Bit(s): 15            */
-      /*                              */
+      /*********************************
+       * VERTICAL LCD SUBPIXELS?
+       * Selector Bit:  8
+       * Return Bit(s): 15
+       */
       if ( ( args[0] & 256 ) != 0 && exc->vertical_lcd_lean )
         K |= 1 << 15;
 
-      /********************************/
-      /* SUBPIXEL POSITIONED?         */
-      /* Selector Bit:  10            */
-      /* Return Bit(s): 17            */
-      /*                              */
-      /* XXX: FreeType supports it, dependent on what client does? */
+      /*********************************
+       * SUBPIXEL POSITIONED?
+       * Selector Bit:  10
+       * Return Bit(s): 17
+       *
+       */
       if ( ( args[0] & 1024 ) != 0 )
         K |= 1 << 17;
 
-      /********************************/
-      /* SYMMETRICAL SMOOTHING        */
-      /* Selector Bit:  11            */
-      /* Return Bit(s): 18            */
-      /*                              */
-      /* The only smoothing method FreeType supports unless someone sets */
-      /* FT_LOAD_TARGET_MONO.                                            */
+      /*********************************
+       * SYMMETRICAL SMOOTHING
+       * Selector Bit:  11
+       * Return Bit(s): 18
+       *
+       * The only smoothing method FreeType supports unless someone sets
+       */
       if ( ( args[0] & 2048 ) != 0 && exc->subpixel_hinting_lean )
         K |= 1 << 18;
 
-      /********************************/
-      /* CLEARTYPE HINTING AND        */
-      /* GRAYSCALE RENDERING          */
-      /* Selector Bit:  12            */
-      /* Return Bit(s): 19            */
-      /*                              */
-      /* Grayscale rendering is what FreeType does anyway unless someone */
-      /* sets FT_LOAD_TARGET_MONO or FT_LOAD_TARGET_LCD(_V)              */
+      /*********************************
+       * CLEARTYPE HINTING AND
+       * GRAYSCALE RENDERING
+       * Selector Bit:  12
+       * Return Bit(s): 19
+       *
+       * Grayscale rendering is what FreeType does anyway unless someone
+       */
       if ( ( args[0] & 4096 ) != 0 && exc->grayscale_cleartype )
         K |= 1 << 19;
     }
@@ -7461,67 +7524,67 @@
 
       if ( exc->rasterizer_version >= 37 )
       {
-        /********************************/
-        /* HINTING FOR SUBPIXEL         */
-        /* Selector Bit:  6             */
-        /* Return Bit(s): 13            */
-        /*                              */
+        /*********************************
+         * HINTING FOR SUBPIXEL
+         * Selector Bit:  6
+         * Return Bit(s): 13
+         */
         if ( ( args[0] & 64 ) != 0 && exc->subpixel_hinting )
           K |= 1 << 13;
 
-        /********************************/
-        /* COMPATIBLE WIDTHS ENABLED    */
-        /* Selector Bit:  7             */
-        /* Return Bit(s): 14            */
-        /*                              */
-        /* Functionality still needs to be added */
+        /*********************************
+         * COMPATIBLE WIDTHS ENABLED
+         * Selector Bit:  7
+         * Return Bit(s): 14
+         *
+         */
         if ( ( args[0] & 128 ) != 0 && exc->compatible_widths )
           K |= 1 << 14;
 
-        /********************************/
-        /* VERTICAL LCD SUBPIXELS?      */
-        /* Selector Bit:  8             */
-        /* Return Bit(s): 15            */
-        /*                              */
-        /* Functionality still needs to be added */
+        /*********************************
+         * VERTICAL LCD SUBPIXELS?
+         * Selector Bit:  8
+         * Return Bit(s): 15
+         *
+         */
         if ( ( args[0] & 256 ) != 0 && exc->vertical_lcd )
           K |= 1 << 15;
 
-        /********************************/
-        /* HINTING FOR BGR?             */
-        /* Selector Bit:  9             */
-        /* Return Bit(s): 16            */
-        /*                              */
-        /* Functionality still needs to be added */
+        /*********************************
+         * HINTING FOR BGR?
+         * Selector Bit:  9
+         * Return Bit(s): 16
+         *
+         */
         if ( ( args[0] & 512 ) != 0 && exc->bgr )
           K |= 1 << 16;
 
         if ( exc->rasterizer_version >= 38 )
         {
-          /********************************/
-          /* SUBPIXEL POSITIONED?         */
-          /* Selector Bit:  10            */
-          /* Return Bit(s): 17            */
-          /*                              */
-          /* Functionality still needs to be added */
+          /*********************************
+           * SUBPIXEL POSITIONED?
+           * Selector Bit:  10
+           * Return Bit(s): 17
+           *
+           */
           if ( ( args[0] & 1024 ) != 0 && exc->subpixel_positioned )
             K |= 1 << 17;
 
-          /********************************/
-          /* SYMMETRICAL SMOOTHING        */
-          /* Selector Bit:  11            */
-          /* Return Bit(s): 18            */
-          /*                              */
-          /* Functionality still needs to be added */
+          /*********************************
+           * SYMMETRICAL SMOOTHING
+           * Selector Bit:  11
+           * Return Bit(s): 18
+           *
+           */
           if ( ( args[0] & 2048 ) != 0 && exc->symmetrical_smoothing )
             K |= 1 << 18;
 
-          /********************************/
-          /* GRAY CLEARTYPE               */
-          /* Selector Bit:  12            */
-          /* Return Bit(s): 19            */
-          /*                              */
-          /* Functionality still needs to be added */
+          /*********************************
+           * GRAY CLEARTYPE
+           * Selector Bit:  12
+           * Return Bit(s): 19
+           *
+           */
           if ( ( args[0] & 4096 ) != 0 && exc->gray_cleartype )
             K |= 1 << 19;
         }
@@ -7536,16 +7599,16 @@
 
 #ifdef TT_CONFIG_OPTION_GX_VAR_SUPPORT
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* GETVARIATION[]: get normalized variation (blend) coordinates          */
-  /* Opcode range: 0x91                                                    */
-  /* Stack:        --> f2.14...                                            */
-  /*                                                                       */
-  /* XXX: UNDOCUMENTED!  There is no official documentation from Apple for */
-  /*      this bytecode instruction.  Active only if a font has GX         */
-  /*      variation axes.                                                  */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * GETVARIATION[]: get normalized variation (blend) coordinates
+   * Opcode range: 0x91
+   * Stack:        --> f2.14...
+   *
+   * XXX: UNDOCUMENTED!  There is no official documentation from Apple for
+   *      this bytecode instruction.  Active only if a font has GX
+   *      variation axes.
+   */
   static void
   Ins_GETVARIATION( TT_ExecContext  exc,
                     FT_Long*        args )
@@ -7575,15 +7638,15 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* GETDATA[]:    no idea what this is good for                           */
-  /* Opcode range: 0x92                                                    */
-  /* Stack:        --> 17                                                  */
-  /*                                                                       */
-  /* XXX: UNDOCUMENTED!  There is no documentation from Apple for this     */
-  /*      very weird bytecode instruction.                                 */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * GETDATA[]:    no idea what this is good for
+   * Opcode range: 0x92
+   * Stack:        --> 17
+   *
+   * XXX: UNDOCUMENTED!  There is no documentation from Apple for this
+   *      very weird bytecode instruction.
+   */
   static void
   Ins_GETDATA( FT_Long*  args )
   {
@@ -7631,34 +7694,34 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* RUN                                                                   */
-  /*                                                                       */
-  /*  This function executes a run of opcodes.  It will exit in the        */
-  /*  following cases:                                                     */
-  /*                                                                       */
-  /*  - Errors (in which case it returns FALSE).                           */
-  /*                                                                       */
-  /*  - Reaching the end of the main code range (returns TRUE).            */
-  /*    Reaching the end of a code range within a function call is an      */
-  /*    error.                                                             */
-  /*                                                                       */
-  /*  - After executing one single opcode, if the flag `Instruction_Trap'  */
-  /*    is set to TRUE (returns TRUE).                                     */
-  /*                                                                       */
-  /*  On exit with TRUE, test IP < CodeSize to know whether it comes from  */
-  /*  an instruction trap or a normal termination.                         */
-  /*                                                                       */
-  /*                                                                       */
-  /*  Note: The documented DEBUG opcode pops a value from the stack.  This */
-  /*        behaviour is unsupported; here a DEBUG opcode is always an     */
-  /*        error.                                                         */
-  /*                                                                       */
-  /*                                                                       */
-  /* THIS IS THE INTERPRETER'S MAIN LOOP.                                  */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * RUN
+   *
+   * This function executes a run of opcodes.  It will exit in the
+   * following cases:
+   *
+   * - Errors (in which case it returns FALSE).
+   *
+   * - Reaching the end of the main code range (returns TRUE).
+   *   Reaching the end of a code range within a function call is an
+   *   error.
+   *
+   * - After executing one single opcode, if the flag `Instruction_Trap'
+   *   is set to TRUE (returns TRUE).
+   *
+   * On exit with TRUE, test IP < CodeSize to know whether it comes from
+   * an instruction trap or a normal termination.
+   *
+   *
+   * Note: The documented DEBUG opcode pops a value from the stack.  This
+   *       behaviour is unsupported; here a DEBUG opcode is always an
+   *       error.
+   *
+   *
+   * THIS IS THE INTERPRETER'S MAIN LOOP.
+   *
+   */
 
 
   /* documentation is in ttinterp.h */
@@ -7690,16 +7753,16 @@
 
 #ifdef TT_SUPPORT_SUBPIXEL_HINTING_MINIMAL
     /*
-     *  Toggle backward compatibility according to what font wants, except
-     *  when
+     * Toggle backward compatibility according to what font wants, except
+     * when
      *
-     *  1) we have a `tricky' font that heavily relies on the interpreter to
-     *     render glyphs correctly, for example DFKai-SB, or
-     *  2) FT_RENDER_MODE_MONO (i.e, monochome rendering) is requested.
+     * 1) we have a `tricky' font that heavily relies on the interpreter to
+     *    render glyphs correctly, for example DFKai-SB, or
+     * 2) FT_RENDER_MODE_MONO (i.e, monochome rendering) is requested.
      *
-     *  In those cases, backward compatibility needs to be turned off to get
-     *  correct rendering.  The rendering is then completely up to the
-     *  font's programming.
+     * In those cases, backward compatibility needs to be turned off to get
+     * correct rendering.  The rendering is then completely up to the
+     * font's programming.
      *
      */
     if ( SUBPIXEL_HINTING_MINIMAL          &&
diff --git a/src/truetype/ttinterp.h b/src/truetype/ttinterp.h
index 2966439..172cdd0 100644
--- a/src/truetype/ttinterp.h
+++ b/src/truetype/ttinterp.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttinterp.h                                                             */
-/*                                                                         */
-/*    TrueType bytecode interpreter (specification).                       */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ttinterp.h
+ *
+ *   TrueType bytecode interpreter (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef TTINTERP_H_
@@ -26,10 +26,10 @@
 FT_BEGIN_HEADER
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Rounding mode constants.                                              */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * Rounding mode constants.
+   */
 #define TT_Round_Off             5
 #define TT_Round_To_Half_Grid    0
 #define TT_Round_To_Grid         1
@@ -40,13 +40,13 @@ FT_BEGIN_HEADER
 #define TT_Round_Super_45        7
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Function types used by the interpreter, depending on various modes    */
-  /* (e.g. the rounding mode, whether to render a vertical or horizontal   */
-  /* line etc).                                                            */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * Function types used by the interpreter, depending on various modes
+   * (e.g. the rounding mode, whether to render a vertical or horizontal
+   * line etc).
+   *
+   */
 
   /* Rounding function */
   typedef FT_F26Dot6
@@ -84,10 +84,10 @@ FT_BEGIN_HEADER
                       FT_F26Dot6      value );
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* This structure defines a call record, used to manage function calls.  */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * This structure defines a call record, used to manage function calls.
+   */
   typedef struct  TT_CallRec_
   {
     FT_Int   Caller_Range;
@@ -101,11 +101,11 @@ FT_BEGIN_HEADER
 
 #ifdef TT_SUPPORT_SUBPIXEL_HINTING_INFINALITY
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* These structures define rules used to tweak subpixel hinting for      */
-  /* various fonts.  "", 0, "", NULL value indicates to match any value.   */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * These structures define rules used to tweak subpixel hinting for
+   * various fonts.  "", 0, "", NULL value indicates to match any value.
+   */
 
 #define SPH_MAX_NAME_SIZE      32
 #define SPH_MAX_CLASS_MEMBERS  100
@@ -141,11 +141,11 @@ FT_BEGIN_HEADER
 #endif /* TT_SUPPORT_SUBPIXEL_HINTING_INFINALITY */
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The main structure for the interpreter which collects all necessary   */
-  /* variables and states.                                                 */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The main structure for the interpreter which collects all necessary
+   * variables and states.
+   */
   typedef struct  TT_ExecContextRec_
   {
     TT_Face            face;
@@ -464,26 +464,27 @@ FT_BEGIN_HEADER
 #endif /* TT_USE_BYTECODE_INTERPRETER */
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    TT_New_Context                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Queries the face context for a given font.  Note that there is     */
-  /*    now a _single_ execution context in the TrueType driver which is   */
-  /*    shared among faces.                                                */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face :: A handle to the source face object.                        */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    A handle to the execution context.  Initialized for `face'.        */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    Only the glyph loader and debugger should call this function.      */
-  /*    (And right now only the glyph loader uses it.)                     */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   TT_New_Context
+   *
+   * @Description:
+   *   Queries the face context for a given font.  Note that there is
+   *   now a _single_ execution context in the TrueType driver which is
+   *   shared among faces.
+   *
+   * @Input:
+   *   face ::
+   *     A handle to the source face object.
+   *
+   * @Return:
+   *   A handle to the execution context.  Initialized for `face'.
+   *
+   * @Note:
+   *   Only the glyph loader and debugger should call this function.
+   *   (And right now only the glyph loader uses it.)
+   */
   FT_EXPORT( TT_ExecContext )
   TT_New_Context( TT_Driver  driver );
 
@@ -506,27 +507,28 @@ FT_BEGIN_HEADER
 #endif /* TT_USE_BYTECODE_INTERPRETER */
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    TT_RunIns                                                          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Executes one or more instruction in the execution context.  This   */
-  /*    is the main function of the TrueType opcode interpreter.           */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    exec :: A handle to the target execution context.                  */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    Only the object manager and debugger should call this function.    */
-  /*                                                                       */
-  /*    This function is publicly exported because it is directly          */
-  /*    invoked by the TrueType debugger.                                  */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   TT_RunIns
+   *
+   * @Description:
+   *   Executes one or more instruction in the execution context.  This
+   *   is the main function of the TrueType opcode interpreter.
+   *
+   * @Input:
+   *   exec ::
+   *     A handle to the target execution context.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   *
+   * @Note:
+   *   Only the object manager and debugger should call this function.
+   *
+   *   This function is publicly exported because it is directly
+   *   invoked by the TrueType debugger.
+   */
   FT_EXPORT( FT_Error )
   TT_RunIns( TT_ExecContext  exec );
 
diff --git a/src/truetype/ttobjs.c b/src/truetype/ttobjs.c
index 6685dc8..df6c72a 100644
--- a/src/truetype/ttobjs.c
+++ b/src/truetype/ttobjs.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttobjs.c                                                               */
-/*                                                                         */
-/*    Objects manager (body).                                              */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ttobjs.c
+ *
+ *   Objects manager (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -36,36 +36,37 @@
 #include "ttgxvar.h"
 #endif
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_ttobjs
 
 
 #ifdef TT_USE_BYTECODE_INTERPRETER
 
-  /*************************************************************************/
-  /*                                                                       */
-  /*                       GLYPH ZONE FUNCTIONS                            */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_glyphzone_done                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Deallocate a glyph zone.                                           */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    zone :: A pointer to the target glyph zone.                        */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   *                      GLYPH ZONE FUNCTIONS
+   *
+   */
+
+
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_glyphzone_done
+   *
+   * @Description:
+   *   Deallocate a glyph zone.
+   *
+   * @Input:
+   *   zone ::
+   *     A pointer to the target glyph zone.
+   */
   FT_LOCAL_DEF( void )
   tt_glyphzone_done( TT_GlyphZone  zone )
   {
@@ -87,27 +88,31 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_glyphzone_new                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Allocate a new glyph zone.                                         */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    memory      :: A handle to the current memory object.              */
-  /*                                                                       */
-  /*    maxPoints   :: The capacity of glyph zone in points.               */
-  /*                                                                       */
-  /*    maxContours :: The capacity of glyph zone in contours.             */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    zone        :: A pointer to the target glyph zone record.          */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_glyphzone_new
+   *
+   * @Description:
+   *   Allocate a new glyph zone.
+   *
+   * @Input:
+   *   memory ::
+   *     A handle to the current memory object.
+   *
+   *   maxPoints ::
+   *     The capacity of glyph zone in points.
+   *
+   *   maxContours ::
+   *     The capacity of glyph zone in contours.
+   *
+   * @Output:
+   *   zone ::
+   *     A pointer to the target glyph zone record.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   tt_glyphzone_new( FT_Memory     memory,
                     FT_UShort     maxPoints,
@@ -566,32 +571,37 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_face_init                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Initialize a given TrueType face object.                           */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    stream     :: The source font stream.                              */
-  /*                                                                       */
-  /*    face_index :: The index of the TrueType font, if we are opening a  */
-  /*                  collection, in bits 0-15.  The numbered instance     */
-  /*                  index~+~1 of a GX (sub)font, if applicable, in bits  */
-  /*                  16-30.                                               */
-  /*                                                                       */
-  /*    num_params :: Number of additional generic parameters.  Ignored.   */
-  /*                                                                       */
-  /*    params     :: Additional generic parameters.  Ignored.             */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    face       :: The newly built face object.                         */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_face_init
+   *
+   * @Description:
+   *   Initialize a given TrueType face object.
+   *
+   * @Input:
+   *   stream ::
+   *     The source font stream.
+   *
+   *   face_index ::
+   *     The index of the TrueType font, if we are opening a
+   *     collection, in bits 0-15.  The numbered instance
+   *     index~+~1 of a GX (sub)font, if applicable, in bits
+   *     16-30.
+   *
+   *   num_params ::
+   *     Number of additional generic parameters.  Ignored.
+   *
+   *   params ::
+   *     Additional generic parameters.  Ignored.
+   *
+   * @InOut:
+   *   face ::
+   *     The newly built face object.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   tt_face_init( FT_Stream      stream,
                 FT_Face        ttface,      /* TT_Face */
@@ -743,17 +753,18 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_face_done                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Finalize a given face object.                                      */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face :: A pointer to the face object to destroy.                   */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_face_done
+   *
+   * @Description:
+   *   Finalize a given face object.
+   *
+   * @Input:
+   *   face ::
+   *     A pointer to the face object to destroy.
+   */
   FT_LOCAL_DEF( void )
   tt_face_done( FT_Face  ttface )           /* TT_Face */
   {
@@ -799,30 +810,32 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /*                           SIZE  FUNCTIONS                             */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   *                          SIZE  FUNCTIONS
+   *
+   */
 
 #ifdef TT_USE_BYTECODE_INTERPRETER
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_size_run_fpgm                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Run the font program.                                              */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    size     :: A handle to the size object.                           */
-  /*                                                                       */
-  /*    pedantic :: Set if bytecode execution should be pedantic.          */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_size_run_fpgm
+   *
+   * @Description:
+   *   Run the font program.
+   *
+   * @Input:
+   *   size ::
+   *     A handle to the size object.
+   *
+   *   pedantic ::
+   *     Set if bytecode execution should be pedantic.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   tt_size_run_fpgm( TT_Size  size,
                     FT_Bool  pedantic )
@@ -899,22 +912,24 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_size_run_prep                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Run the control value program.                                     */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    size     :: A handle to the size object.                           */
-  /*                                                                       */
-  /*    pedantic :: Set if bytecode execution should be pedantic.          */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_size_run_prep
+   *
+   * @Description:
+   *   Run the control value program.
+   *
+   * @Input:
+   *   size ::
+   *     A handle to the size object.
+   *
+   *   pedantic ::
+   *     Set if bytecode execution should be pedantic.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   tt_size_run_prep( TT_Size  size,
                     FT_Bool  pedantic )
@@ -1191,20 +1206,21 @@
 #endif /* TT_USE_BYTECODE_INTERPRETER */
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_size_init                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Initialize a new TrueType size object.                             */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    size :: A handle to the size object.                               */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_size_init
+   *
+   * @Description:
+   *   Initialize a new TrueType size object.
+   *
+   * @InOut:
+   *   size ::
+   *     A handle to the size object.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   tt_size_init( FT_Size  ttsize )           /* TT_Size */
   {
@@ -1224,17 +1240,18 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_size_done                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    The TrueType size object finalizer.                                */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    size :: A handle to the target size object.                        */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_size_done
+   *
+   * @Description:
+   *   The TrueType size object finalizer.
+   *
+   * @Input:
+   *   size ::
+   *     A handle to the target size object.
+   */
   FT_LOCAL_DEF( void )
   tt_size_done( FT_Size  ttsize )           /* TT_Size */
   {
@@ -1249,22 +1266,24 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_size_reset                                                      */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Reset a TrueType size when resolutions and character dimensions    */
-  /*    have been changed.                                                 */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    size        :: A handle to the target size object.                 */
-  /*                                                                       */
-  /*    only_height :: Only recompute ascender, descender, and height;     */
-  /*                   this flag is used for variation fonts where         */
-  /*                   `tt_size_reset' is used as an iterator function.    */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_size_reset
+   *
+   * @Description:
+   *   Reset a TrueType size when resolutions and character dimensions
+   *   have been changed.
+   *
+   * @Input:
+   *   size ::
+   *     A handle to the target size object.
+   *
+   *   only_height ::
+   *     Only recompute ascender, descender, and height;
+   *     this flag is used for variation fonts where
+   *     `tt_size_reset' is used as an iterator function.
+   */
   FT_LOCAL_DEF( FT_Error )
   tt_size_reset( TT_Size  size,
                  FT_Bool  only_height )
@@ -1358,20 +1377,21 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_driver_init                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Initialize a given TrueType driver object.                         */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    driver :: A handle to the target driver object.                    */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_driver_init
+   *
+   * @Description:
+   *   Initialize a given TrueType driver object.
+   *
+   * @Input:
+   *   driver ::
+   *     A handle to the target driver object.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   tt_driver_init( FT_Module  ttdriver )     /* TT_Driver */
   {
@@ -1398,17 +1418,18 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_driver_done                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Finalize a given TrueType driver.                                  */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    driver :: A handle to the target TrueType driver.                  */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_driver_done
+   *
+   * @Description:
+   *   Finalize a given TrueType driver.
+   *
+   * @Input:
+   *   driver ::
+   *     A handle to the target TrueType driver.
+   */
   FT_LOCAL_DEF( void )
   tt_driver_done( FT_Module  ttdriver )     /* TT_Driver */
   {
@@ -1416,20 +1437,21 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_slot_init                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Initialize a new slot object.                                      */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    slot :: A handle to the slot object.                               */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_slot_init
+   *
+   * @Description:
+   *   Initialize a new slot object.
+   *
+   * @InOut:
+   *   slot ::
+   *     A handle to the slot object.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   tt_slot_init( FT_GlyphSlot  slot )
   {
diff --git a/src/truetype/ttobjs.h b/src/truetype/ttobjs.h
index 38fa30e..dcff3f7 100644
--- a/src/truetype/ttobjs.h
+++ b/src/truetype/ttobjs.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttobjs.h                                                               */
-/*                                                                         */
-/*    Objects manager (specification).                                     */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ttobjs.h
+ *
+ *   Objects manager (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef TTOBJS_H_
@@ -28,40 +28,40 @@
 FT_BEGIN_HEADER
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    TT_Driver                                                          */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A handle to a TrueType driver object.                              */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Type:
+   *   TT_Driver
+   *
+   * @Description:
+   *   A handle to a TrueType driver object.
+   */
   typedef struct TT_DriverRec_*  TT_Driver;
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    TT_GlyphSlot                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A handle to a TrueType glyph slot object.                          */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    This is a direct typedef of FT_GlyphSlot, as there is nothing      */
-  /*    specific about the TrueType glyph slot.                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Type:
+   *   TT_GlyphSlot
+   *
+   * @Description:
+   *   A handle to a TrueType glyph slot object.
+   *
+   * @Note:
+   *   This is a direct typedef of FT_GlyphSlot, as there is nothing
+   *   specific about the TrueType glyph slot.
+   */
   typedef FT_GlyphSlot  TT_GlyphSlot;
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    TT_GraphicsState                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    The TrueType graphics state used during bytecode interpretation.   */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Struct:
+   *   TT_GraphicsState
+   *
+   * @Description:
+   *   The TrueType graphics state used during bytecode interpretation.
+   */
   typedef struct  TT_GraphicsState_
   {
     FT_UShort      rp0;
@@ -113,25 +113,25 @@ FT_BEGIN_HEADER
 
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /*  EXECUTION SUBTABLES                                                  */
-  /*                                                                       */
-  /*  These sub-tables relate to instruction execution.                    */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * EXECUTION SUBTABLES
+   *
+   * These sub-tables relate to instruction execution.
+   *
+   */
 
 
 #define TT_MAX_CODE_RANGES  3
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* There can only be 3 active code ranges at once:                       */
-  /*   - the Font Program                                                  */
-  /*   - the CVT Program                                                   */
-  /*   - a glyph's instructions set                                        */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * There can only be 3 active code ranges at once:
+   *   - the Font Program
+   *   - the CVT Program
+   *   - a glyph's instructions set
+   */
   typedef enum  TT_CodeRange_Tag_
   {
     tt_coderange_none = 0,
@@ -152,10 +152,10 @@ FT_BEGIN_HEADER
   typedef TT_CodeRange  TT_CodeRangeTable[TT_MAX_CODE_RANGES];
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Defines a function/instruction definition record.                     */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * Defines a function/instruction definition record.
+   */
   typedef struct  TT_DefRecord_
   {
     FT_Int    range;          /* in which code range is it located?     */
@@ -169,10 +169,10 @@ FT_BEGIN_HEADER
   } TT_DefRecord, *TT_DefArray;
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Subglyph transformation record.                                       */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * Subglyph transformation record.
+   */
   typedef struct  TT_Transform_
   {
     FT_Fixed    xx, xy;     /* transformation matrix coefficients */
@@ -182,72 +182,72 @@ FT_BEGIN_HEADER
   } TT_Transform;
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* A note regarding non-squared pixels:                                  */
-  /*                                                                       */
-  /* (This text will probably go into some docs at some time; for now, it  */
-  /* is kept here to explain some definitions in the TT_Size_Metrics       */
-  /* record).                                                              */
-  /*                                                                       */
-  /* The CVT is a one-dimensional array containing values that control     */
-  /* certain important characteristics in a font, like the height of all   */
-  /* capitals, all lowercase letter, default spacing or stem width/height. */
-  /*                                                                       */
-  /* These values are found in FUnits in the font file, and must be scaled */
-  /* to pixel coordinates before being used by the CVT and glyph programs. */
-  /* Unfortunately, when using distinct x and y resolutions (or distinct x */
-  /* and y pointsizes), there are two possible scalings.                   */
-  /*                                                                       */
-  /* A first try was to implement a `lazy' scheme where all values were    */
-  /* scaled when first used.  However, while some values are always used   */
-  /* in the same direction, some others are used under many different      */
-  /* circumstances and orientations.                                       */
-  /*                                                                       */
-  /* I have found a simpler way to do the same, and it even seems to work  */
-  /* in most of the cases:                                                 */
-  /*                                                                       */
-  /* - All CVT values are scaled to the maximum ppem size.                 */
-  /*                                                                       */
-  /* - When performing a read or write in the CVT, a ratio factor is used  */
-  /*   to perform adequate scaling.  Example:                              */
-  /*                                                                       */
-  /*     x_ppem = 14                                                       */
-  /*     y_ppem = 10                                                       */
-  /*                                                                       */
-  /*   We choose ppem = x_ppem = 14 as the CVT scaling size.  All cvt      */
-  /*   entries are scaled to it.                                           */
-  /*                                                                       */
-  /*     x_ratio = 1.0                                                     */
-  /*     y_ratio = y_ppem/ppem (< 1.0)                                     */
-  /*                                                                       */
-  /*   We compute the current ratio like:                                  */
-  /*                                                                       */
-  /*   - If projVector is horizontal,                                      */
-  /*       ratio = x_ratio = 1.0                                           */
-  /*                                                                       */
-  /*   - if projVector is vertical,                                        */
-  /*       ratio = y_ratio                                                 */
-  /*                                                                       */
-  /*   - else,                                                             */
-  /*       ratio = sqrt( (proj.x * x_ratio) ^ 2 + (proj.y * y_ratio) ^ 2 ) */
-  /*                                                                       */
-  /*   Reading a cvt value returns                                         */
-  /*     ratio * cvt[index]                                                */
-  /*                                                                       */
-  /*   Writing a cvt value in pixels:                                      */
-  /*     cvt[index] / ratio                                                */
-  /*                                                                       */
-  /*   The current ppem is simply                                          */
-  /*     ratio * ppem                                                      */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* Metrics used by the TrueType size and context objects.                */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * A note regarding non-squared pixels:
+   *
+   * (This text will probably go into some docs at some time; for now, it
+   * is kept here to explain some definitions in the TT_Size_Metrics
+   * record).
+   *
+   * The CVT is a one-dimensional array containing values that control
+   * certain important characteristics in a font, like the height of all
+   * capitals, all lowercase letter, default spacing or stem width/height.
+   *
+   * These values are found in FUnits in the font file, and must be scaled
+   * to pixel coordinates before being used by the CVT and glyph programs.
+   * Unfortunately, when using distinct x and y resolutions (or distinct x
+   * and y pointsizes), there are two possible scalings.
+   *
+   * A first try was to implement a `lazy' scheme where all values were
+   * scaled when first used.  However, while some values are always used
+   * in the same direction, some others are used under many different
+   * circumstances and orientations.
+   *
+   * I have found a simpler way to do the same, and it even seems to work
+   * in most of the cases:
+   *
+   * - All CVT values are scaled to the maximum ppem size.
+   *
+   * - When performing a read or write in the CVT, a ratio factor is used
+   *   to perform adequate scaling.  Example:
+   *
+   *     x_ppem = 14
+   *     y_ppem = 10
+   *
+   *   We choose ppem = x_ppem = 14 as the CVT scaling size.  All cvt
+   *   entries are scaled to it.
+   *
+   *     x_ratio = 1.0
+   *     y_ratio = y_ppem/ppem (< 1.0)
+   *
+   *   We compute the current ratio like:
+   *
+   *   - If projVector is horizontal,
+   *       ratio = x_ratio = 1.0
+   *
+   *   - if projVector is vertical,
+   *       ratio = y_ratio
+   *
+   *   - else,
+   *       ratio = sqrt( (proj.x * x_ratio) ^ 2 + (proj.y * y_ratio) ^ 2 )
+   *
+   *   Reading a cvt value returns
+   *     ratio * cvt[index]
+   *
+   *   Writing a cvt value in pixels:
+   *     cvt[index] / ratio
+   *
+   *   The current ppem is simply
+   *     ratio * ppem
+   *
+   */
+
+
+  /**************************************************************************
+   *
+   * Metrics used by the TrueType size and context objects.
+   */
   typedef struct  TT_Size_Metrics_
   {
     /* for non-square pixels */
@@ -268,10 +268,10 @@ FT_BEGIN_HEADER
   } TT_Size_Metrics;
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* TrueType size class.                                                  */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * TrueType size class.
+   */
   typedef struct  TT_SizeRec_
   {
     FT_SizeRec         root;
@@ -324,10 +324,10 @@ FT_BEGIN_HEADER
   } TT_SizeRec;
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* TrueType driver class.                                                */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * TrueType driver class.
+   */
   typedef struct  TT_DriverRec_
   {
     FT_DriverRec  root;
@@ -348,10 +348,10 @@ FT_BEGIN_HEADER
   /* will always use the TT driver to create them.                         */
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Face functions                                                        */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * Face functions
+   */
   FT_LOCAL( FT_Error )
   tt_face_init( FT_Stream      stream,
                 FT_Face        ttface,      /* TT_Face */
@@ -363,10 +363,10 @@ FT_BEGIN_HEADER
   tt_face_done( FT_Face  ttface );          /* TT_Face */
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Size functions                                                        */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * Size functions
+   */
   FT_LOCAL( FT_Error )
   tt_size_init( FT_Size  ttsize );          /* TT_Size */
 
@@ -394,10 +394,10 @@ FT_BEGIN_HEADER
                  FT_Bool  only_height );
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Driver functions                                                      */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * Driver functions
+   */
   FT_LOCAL( FT_Error )
   tt_driver_init( FT_Module  ttdriver );    /* TT_Driver */
 
@@ -405,10 +405,10 @@ FT_BEGIN_HEADER
   tt_driver_done( FT_Module  ttdriver );    /* TT_Driver */
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Slot functions                                                        */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * Slot functions
+   */
   FT_LOCAL( FT_Error )
   tt_slot_init( FT_GlyphSlot  slot );
 
diff --git a/src/truetype/ttpload.c b/src/truetype/ttpload.c
index d9526ad..f7935cf 100644
--- a/src/truetype/ttpload.c
+++ b/src/truetype/ttpload.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttpload.c                                                              */
-/*                                                                         */
-/*    TrueType-specific tables loader (body).                              */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ttpload.c
+ *
+ *   TrueType-specific tables loader (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -31,33 +31,35 @@
 #include "tterrors.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_ttpload
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_face_load_loca                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Load the locations table.                                          */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    face   :: A handle to the target face object.                      */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    stream :: The input stream.                                        */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_face_load_loca
+   *
+   * @Description:
+   *   Load the locations table.
+   *
+   * @InOut:
+   *   face ::
+   *     A handle to the target face object.
+   *
+   * @Input:
+   *   stream ::
+   *     The input stream.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   tt_face_load_loca( TT_Face    face,
                      FT_Stream  stream )
@@ -297,23 +299,25 @@
 
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_face_load_cvt                                                   */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Load the control value table into a face object.                   */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    face   :: A handle to the target face object.                      */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    stream :: A handle to the input stream.                            */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_face_load_cvt
+   *
+   * @Description:
+   *   Load the control value table into a face object.
+   *
+   * @InOut:
+   *   face ::
+   *     A handle to the target face object.
+   *
+   * @Input:
+   *   stream ::
+   *     A handle to the input stream.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   tt_face_load_cvt( TT_Face    face,
                     FT_Stream  stream )
@@ -378,23 +382,25 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_face_load_fpgm                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Load the font program.                                             */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    face   :: A handle to the target face object.                      */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    stream :: A handle to the input stream.                            */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_face_load_fpgm
+   *
+   * @Description:
+   *   Load the font program.
+   *
+   * @InOut:
+   *   face ::
+   *     A handle to the target face object.
+   *
+   * @Input:
+   *   stream ::
+   *     A handle to the input stream.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   tt_face_load_fpgm( TT_Face    face,
                      FT_Stream  stream )
@@ -440,23 +446,25 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_face_load_prep                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Load the cvt program.                                              */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    face   :: A handle to the target face object.                      */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    stream :: A handle to the input stream.                            */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_face_load_prep
+   *
+   * @Description:
+   *   Load the cvt program.
+   *
+   * @InOut:
+   *   face ::
+   *     A handle to the target face object.
+   *
+   * @Input:
+   *   stream ::
+   *     A handle to the input stream.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   tt_face_load_prep( TT_Face    face,
                      FT_Stream  stream )
@@ -501,22 +509,24 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    tt_face_load_hdmx                                                  */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Load the `hdmx' table into the face object.                        */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face   :: A handle to the target face object.                      */
-  /*                                                                       */
-  /*    stream :: A handle to the input stream.                            */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   tt_face_load_hdmx
+   *
+   * @Description:
+   *   Load the `hdmx' table into the face object.
+   *
+   * @Input:
+   *   face ::
+   *     A handle to the target face object.
+   *
+   *   stream ::
+   *     A handle to the input stream.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
 
   FT_LOCAL_DEF( FT_Error )
   tt_face_load_hdmx( TT_Face    face,
@@ -610,11 +620,11 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Return the advance width table for a given pixel size if it is found  */
-  /* in the font's `hdmx' table (if any).                                  */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * Return the advance width table for a given pixel size if it is found
+   * in the font's `hdmx' table (if any).
+   */
   FT_LOCAL_DEF( FT_Byte* )
   tt_face_get_device_metrics( TT_Face  face,
                               FT_UInt  ppem,
diff --git a/src/truetype/ttpload.h b/src/truetype/ttpload.h
index fa12527..eef2695 100644
--- a/src/truetype/ttpload.h
+++ b/src/truetype/ttpload.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttpload.h                                                              */
-/*                                                                         */
-/*    TrueType-specific tables loader (specification).                     */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ttpload.h
+ *
+ *   TrueType-specific tables loader (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef TTPLOAD_H_
diff --git a/src/truetype/ttsubpix.c b/src/truetype/ttsubpix.c
index d94bcc8..70e94e2 100644
--- a/src/truetype/ttsubpix.c
+++ b/src/truetype/ttsubpix.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttsubpix.c                                                             */
-/*                                                                         */
-/*    TrueType Subpixel Hinting.                                           */
-/*                                                                         */
-/*  Copyright 2010-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ttsubpix.c
+ *
+ *   TrueType Subpixel Hinting.
+ *
+ * Copyright 2010-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 #include <ft2build.h>
 #include FT_INTERNAL_DEBUG_H
@@ -30,35 +30,35 @@
 #if defined( TT_USE_BYTECODE_INTERPRETER )            && \
     defined( TT_SUPPORT_SUBPIXEL_HINTING_INFINALITY )
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* These rules affect how the TT Interpreter does hinting, with the      */
-  /* goal of doing subpixel hinting by (in general) ignoring x moves.      */
-  /* Some of these rules are fixes that go above and beyond the            */
-  /* stated techniques in the MS whitepaper on Cleartype, due to           */
-  /* artifacts in many glyphs.  So, these rules make some glyphs render    */
-  /* better than they do in the MS rasterizer.                             */
-  /*                                                                       */
-  /* "" string or 0 int/char indicates to apply to all glyphs.             */
-  /* "-" used as dummy placeholders, but any non-matching string works.    */
-  /*                                                                       */
-  /* Some of this could arguably be implemented in fontconfig, however:    */
-  /*                                                                       */
-  /*  - Fontconfig can't set things on a glyph-by-glyph basis.             */
-  /*  - The tweaks that happen here are very low-level, from an average    */
-  /*    user's point of view and are best implemented in the hinter.       */
-  /*                                                                       */
-  /* The goal is to make the subpixel hinting techniques as generalized    */
-  /* as possible across all fonts to prevent the need for extra rules such */
-  /* as these.                                                             */
-  /*                                                                       */
-  /* The rule structure is designed so that entirely new rules can easily  */
-  /* be added when a new compatibility feature is discovered.              */
-  /*                                                                       */
-  /* The rule structures could also use some enhancement to handle ranges. */
-  /*                                                                       */
-  /*     ****************** WORK IN PROGRESS *******************           */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * These rules affect how the TT Interpreter does hinting, with the
+   * goal of doing subpixel hinting by (in general) ignoring x moves.
+   * Some of these rules are fixes that go above and beyond the
+   * stated techniques in the MS whitepaper on Cleartype, due to
+   * artifacts in many glyphs.  So, these rules make some glyphs render
+   * better than they do in the MS rasterizer.
+   *
+   * "" string or 0 int/char indicates to apply to all glyphs.
+   * "-" used as dummy placeholders, but any non-matching string works.
+   *
+   * Some of this could arguably be implemented in fontconfig, however:
+   *
+   * - Fontconfig can't set things on a glyph-by-glyph basis.
+   * - The tweaks that happen here are very low-level, from an average
+   *   user's point of view and are best implemented in the hinter.
+   *
+   * The goal is to make the subpixel hinting techniques as generalized
+   * as possible across all fonts to prevent the need for extra rules such
+   * as these.
+   *
+   * The rule structure is designed so that entirely new rules can easily
+   * be added when a new compatibility feature is discovered.
+   *
+   * The rule structures could also use some enhancement to handle ranges.
+   *
+   *     ****************** WORK IN PROGRESS *******************
+   */
 
   /* These are `classes' of fonts that can be grouped together and used in */
   /* rules below.  A blank entry "" is required at the end of these!       */
diff --git a/src/truetype/ttsubpix.h b/src/truetype/ttsubpix.h
index 1070bb0..2e10ea3 100644
--- a/src/truetype/ttsubpix.h
+++ b/src/truetype/ttsubpix.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  ttsubpix.h                                                             */
-/*                                                                         */
-/*    TrueType Subpixel Hinting.                                           */
-/*                                                                         */
-/*  Copyright 2010-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * ttsubpix.h
+ *
+ *   TrueType Subpixel Hinting.
+ *
+ * Copyright 2010-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef TTSUBPIX_H_
@@ -29,11 +29,11 @@ FT_BEGIN_HEADER
 
 #ifdef TT_SUPPORT_SUBPIXEL_HINTING_INFINALITY
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* ID flags to identify special functions at FDEF and runtime.           */
-  /*                                                                       */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * ID flags to identify special functions at FDEF and runtime.
+   *
+   */
 #define SPH_FDEF_INLINE_DELTA_1       0x0000001
 #define SPH_FDEF_INLINE_DELTA_2       0x0000002
 #define SPH_FDEF_DIAGONAL_STROKE      0x0000004
@@ -45,11 +45,11 @@ FT_BEGIN_HEADER
 #define SPH_FDEF_TYPEMAN_DIAGENDCTRL  0x0000100
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Tweak flags that are set for each glyph by the below rules.           */
-  /*                                                                       */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * Tweak flags that are set for each glyph by the below rules.
+   *
+   */
 #define SPH_TWEAK_ALLOW_X_DMOVE                   0x0000001UL
 #define SPH_TWEAK_ALWAYS_DO_DELTAP                0x0000002UL
 #define SPH_TWEAK_ALWAYS_SKIP_DELTAP              0x0000004UL
diff --git a/src/type1/t1afm.c b/src/type1/t1afm.c
index 61053d9..0cbef3b 100644
--- a/src/type1/t1afm.c
+++ b/src/type1/t1afm.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  t1afm.c                                                                */
-/*                                                                         */
-/*    AFM support for Type 1 fonts (body).                                 */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * t1afm.c
+ *
+ *   AFM support for Type 1 fonts (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -26,12 +26,12 @@
 
 #ifndef T1_CONFIG_OPTION_NO_AFM
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_t1afm
 
diff --git a/src/type1/t1afm.h b/src/type1/t1afm.h
index cb8d302..d92b78f 100644
--- a/src/type1/t1afm.h
+++ b/src/type1/t1afm.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  t1afm.h                                                                */
-/*                                                                         */
-/*    AFM support for Type 1 fonts (specification).                        */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * t1afm.h
+ *
+ *   AFM support for Type 1 fonts (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef T1AFM_H_
diff --git a/src/type1/t1driver.c b/src/type1/t1driver.c
index 029b410..e5f6aca 100644
--- a/src/type1/t1driver.c
+++ b/src/type1/t1driver.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  t1driver.c                                                             */
-/*                                                                         */
-/*    Type 1 driver interface (body).                                      */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * t1driver.c
+ *
+ *   Type 1 driver interface (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -43,19 +43,19 @@
 #include FT_SERVICE_KERNING_H
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_t1driver
 
- /*
-  *  GLYPH DICT SERVICE
-  *
-  */
+  /*
+   * GLYPH DICT SERVICE
+   *
+   */
 
   static FT_Error
   t1_get_glyph_name( T1_Face     face,
@@ -97,7 +97,7 @@
 
 
   /*
-   *  POSTSCRIPT NAME SERVICE
+   * POSTSCRIPT NAME SERVICE
    *
    */
 
@@ -115,7 +115,7 @@
 
 
   /*
-   *  MULTIPLE MASTERS SERVICE
+   * MULTIPLE MASTERS SERVICE
    *
    */
 
@@ -138,7 +138,7 @@
 
 
   /*
-   *  POSTSCRIPT INFO SERVICE
+   * POSTSCRIPT INFO SERVICE
    *
    */
 
@@ -618,7 +618,7 @@
 
 
   /*
-   *  PROPERTY SERVICE
+   * PROPERTY SERVICE
    *
    */
 
@@ -630,7 +630,7 @@
 
 
   /*
-   *  SERVICE LIST
+   * SERVICE LIST
    *
    */
 
@@ -665,38 +665,42 @@
 
 #ifndef T1_CONFIG_OPTION_NO_AFM
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    Get_Kerning                                                        */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A driver method used to return the kerning vector between two      */
-  /*    glyphs of the same face.                                           */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face        :: A handle to the source face object.                 */
-  /*                                                                       */
-  /*    left_glyph  :: The index of the left glyph in the kern pair.       */
-  /*                                                                       */
-  /*    right_glyph :: The index of the right glyph in the kern pair.      */
-  /*                                                                       */
-  /* <Output>                                                              */
-  /*    kerning     :: The kerning vector.  This is in font units for      */
-  /*                   scalable formats, and in pixels for fixed-sizes     */
-  /*                   formats.                                            */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    Only horizontal layouts (left-to-right & right-to-left) are        */
-  /*    supported by this function.  Other layouts, or more sophisticated  */
-  /*    kernings are out of scope of this method (the basic driver         */
-  /*    interface is meant to be simple).                                  */
-  /*                                                                       */
-  /*    They can be implemented by format-specific interfaces.             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   Get_Kerning
+   *
+   * @Description:
+   *   A driver method used to return the kerning vector between two
+   *   glyphs of the same face.
+   *
+   * @Input:
+   *   face ::
+   *     A handle to the source face object.
+   *
+   *   left_glyph ::
+   *     The index of the left glyph in the kern pair.
+   *
+   *   right_glyph ::
+   *     The index of the right glyph in the kern pair.
+   *
+   * @Output:
+   *   kerning ::
+   *     The kerning vector.  This is in font units for
+   *     scalable formats, and in pixels for fixed-sizes
+   *     formats.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   *
+   * @Note:
+   *   Only horizontal layouts (left-to-right & right-to-left) are
+   *   supported by this function.  Other layouts, or more sophisticated
+   *   kernings are out of scope of this method (the basic driver
+   *   interface is meant to be simple).
+   *
+   *   They can be implemented by format-specific interfaces.
+   */
   static FT_Error
   Get_Kerning( FT_Face     t1face,        /* T1_Face */
                FT_UInt     left_glyph,
diff --git a/src/type1/t1driver.h b/src/type1/t1driver.h
index 18f4e4c..2dae4bd 100644
--- a/src/type1/t1driver.h
+++ b/src/type1/t1driver.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  t1driver.h                                                             */
-/*                                                                         */
-/*    High-level Type 1 driver interface (specification).                  */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * t1driver.h
+ *
+ *   High-level Type 1 driver interface (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef T1DRIVER_H_
diff --git a/src/type1/t1errors.h b/src/type1/t1errors.h
index 9e0151b..312f456 100644
--- a/src/type1/t1errors.h
+++ b/src/type1/t1errors.h
@@ -1,26 +1,26 @@
-/***************************************************************************/
-/*                                                                         */
-/*  t1errors.h                                                             */
-/*                                                                         */
-/*    Type 1 error codes (specification only).                             */
-/*                                                                         */
-/*  Copyright 2001-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This file is used to define the Type 1 error enumeration constants.   */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * t1errors.h
+ *
+ *   Type 1 error codes (specification only).
+ *
+ * Copyright 2001-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+
+  /**************************************************************************
+   *
+   * This file is used to define the Type 1 error enumeration constants.
+   *
+   */
 
 #ifndef T1ERRORS_H_
 #define T1ERRORS_H_
diff --git a/src/type1/t1gload.c b/src/type1/t1gload.c
index 87d40e7..de97e29 100644
--- a/src/type1/t1gload.c
+++ b/src/type1/t1gload.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  t1gload.c                                                              */
-/*                                                                         */
-/*    Type 1 Glyph Loader (body).                                          */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * t1gload.c
+ *
+ *   Type 1 Glyph Loader (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -29,12 +29,12 @@
 #include "t1errors.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_t1gload
 
diff --git a/src/type1/t1gload.h b/src/type1/t1gload.h
index 72ef76f..12ba234 100644
--- a/src/type1/t1gload.h
+++ b/src/type1/t1gload.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  t1gload.h                                                              */
-/*                                                                         */
-/*    Type 1 Glyph Loader (specification).                                 */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * t1gload.h
+ *
+ *   Type 1 Glyph Loader (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef T1GLOAD_H_
diff --git a/src/type1/t1load.c b/src/type1/t1load.c
index 9dfa637..baf4d42 100644
--- a/src/type1/t1load.c
+++ b/src/type1/t1load.c
@@ -1,63 +1,63 @@
-/***************************************************************************/
-/*                                                                         */
-/*  t1load.c                                                               */
-/*                                                                         */
-/*    Type 1 font loader (body).                                           */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This is the new and improved Type 1 data loader for FreeType 2.  The  */
-  /* old loader has several problems: it is slow, complex, difficult to    */
-  /* maintain, and contains incredible hacks to make it accept some        */
-  /* ill-formed Type 1 fonts without hiccup-ing.  Moreover, about 5% of    */
-  /* the Type 1 fonts on my machine still aren't loaded correctly by it.   */
-  /*                                                                       */
-  /* This version is much simpler, much faster and also easier to read and */
-  /* maintain by a great order of magnitude.  The idea behind it is to     */
-  /* _not_ try to read the Type 1 token stream with a state machine (i.e.  */
-  /* a Postscript-like interpreter) but rather to perform simple pattern   */
-  /* matching.                                                             */
-  /*                                                                       */
-  /* Indeed, nearly all data definitions follow a simple pattern like      */
-  /*                                                                       */
-  /*  ... /Field <data> ...                                                */
-  /*                                                                       */
-  /* where <data> can be a number, a boolean, a string, or an array of     */
-  /* numbers.  There are a few exceptions, namely the encoding, font name, */
-  /* charstrings, and subrs; they are handled with a special pattern       */
-  /* matching routine.                                                     */
-  /*                                                                       */
-  /* All other common cases are handled very simply.  The matching rules   */
-  /* are defined in the file `t1tokens.h' through the use of several       */
-  /* macros calls PARSE_XXX.  This file is included twice here; the first  */
-  /* time to generate parsing callback functions, the second time to       */
-  /* generate a table of keywords (with pointers to the associated         */
-  /* callback functions).                                                  */
-  /*                                                                       */
-  /* The function `parse_dict' simply scans *linearly* a given dictionary  */
-  /* (either the top-level or private one) and calls the appropriate       */
-  /* callback when it encounters an immediate keyword.                     */
-  /*                                                                       */
-  /* This is by far the fastest way one can find to parse and read all     */
-  /* data.                                                                 */
-  /*                                                                       */
-  /* This led to tremendous code size reduction.  Note that later, the     */
-  /* glyph loader will also be _greatly_ simplified, and the automatic     */
-  /* hinter will replace the clumsy `t1hinter'.                            */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * t1load.c
+ *
+ *   Type 1 font loader (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+
+  /**************************************************************************
+   *
+   * This is the new and improved Type 1 data loader for FreeType 2.  The
+   * old loader has several problems: it is slow, complex, difficult to
+   * maintain, and contains incredible hacks to make it accept some
+   * ill-formed Type 1 fonts without hiccup-ing.  Moreover, about 5% of
+   * the Type 1 fonts on my machine still aren't loaded correctly by it.
+   *
+   * This version is much simpler, much faster and also easier to read and
+   * maintain by a great order of magnitude.  The idea behind it is to
+   * _not_ try to read the Type 1 token stream with a state machine (i.e.
+   * a Postscript-like interpreter) but rather to perform simple pattern
+   * matching.
+   *
+   * Indeed, nearly all data definitions follow a simple pattern like
+   *
+   * ... /Field <data> ...
+   *
+   * where <data> can be a number, a boolean, a string, or an array of
+   * numbers.  There are a few exceptions, namely the encoding, font name,
+   * charstrings, and subrs; they are handled with a special pattern
+   * matching routine.
+   *
+   * All other common cases are handled very simply.  The matching rules
+   * are defined in the file `t1tokens.h' through the use of several
+   * macros calls PARSE_XXX.  This file is included twice here; the first
+   * time to generate parsing callback functions, the second time to
+   * generate a table of keywords (with pointers to the associated
+   * callback functions).
+   *
+   * The function `parse_dict' simply scans *linearly* a given dictionary
+   * (either the top-level or private one) and calls the appropriate
+   * callback when it encounters an immediate keyword.
+   *
+   * This is by far the fastest way one can find to parse and read all
+   * data.
+   *
+   * This led to tremendous code size reduction.  Note that later, the
+   * glyph loader will also be _greatly_ simplified, and the automatic
+   * hinter will replace the clumsy `t1hinter'.
+   *
+   */
 
 
 #include <ft2build.h>
@@ -79,12 +79,12 @@
 #endif
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_t1load
 
@@ -222,11 +222,11 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Given a normalized (blend) coordinate, figure out the design          */
-  /* coordinate appropriate for that value.                                */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * Given a normalized (blend) coordinate, figure out the design
+   * coordinate appropriate for that value.
+   */
   static FT_Fixed
   mm_axis_unmap( PS_DesignMap  axismap,
                  FT_Fixed      ncv )
@@ -251,11 +251,11 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Given a vector of weights, one for each design, figure out the        */
-  /* normalized axis coordinates which gave rise to those weights.         */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * Given a vector of weights, one for each design, figure out the
+   * normalized axis coordinates which gave rise to those weights.
+   */
   static void
   mm_weights_unmap( FT_Fixed*  weights,
                     FT_Fixed*  axiscoords,
@@ -293,11 +293,11 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Just a wrapper around T1_Get_Multi_Master to support the different    */
-  /*  arguments needed by the GX var distortable fonts.                    */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * Just a wrapper around T1_Get_Multi_Master to support the different
+   * arguments needed by the GX var distortable fonts.
+   */
   FT_LOCAL_DEF( FT_Error )
   T1_Get_MM_Var( T1_Face      face,
                  FT_MM_Var*  *master )
@@ -573,11 +573,11 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Just a wrapper around T1_Set_MM_Design to support the different       */
-  /* arguments needed by the GX var distortable fonts.                     */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * Just a wrapper around T1_Set_MM_Design to support the different
+   * arguments needed by the GX var distortable fonts.
+   */
   FT_LOCAL_DEF( FT_Error )
   T1_Set_Var_Design( T1_Face    face,
                      FT_UInt    num_coords,
@@ -2024,12 +2024,12 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* Define the token field static variables.  This is a set of            */
-  /* T1_FieldRec variables.                                                */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   * Define the token field static variables.  This is a set of
+   * T1_FieldRec variables.
+   *
+   */
 
 
   static
diff --git a/src/type1/t1load.h b/src/type1/t1load.h
index 03be3f7..43d5db5 100644
--- a/src/type1/t1load.h
+++ b/src/type1/t1load.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  t1load.h                                                               */
-/*                                                                         */
-/*    Type 1 font loader (specification).                                  */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * t1load.h
+ *
+ *   Type 1 font loader (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef T1LOAD_H_
diff --git a/src/type1/t1objs.c b/src/type1/t1objs.c
index 7333c4c..568440d 100644
--- a/src/type1/t1objs.c
+++ b/src/type1/t1objs.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  t1objs.c                                                               */
-/*                                                                         */
-/*    Type 1 objects manager (body).                                       */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * t1objs.c
+ *
+ *   Type 1 objects manager (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -36,21 +36,21 @@
 #include FT_INTERNAL_POSTSCRIPT_AUX_H
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_t1objs
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /*                            SIZE FUNCTIONS                             */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   *                           SIZE FUNCTIONS
+   *
+   */
 
 
   static PSH_Globals_Funcs
@@ -133,11 +133,11 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /*                            SLOT  FUNCTIONS                            */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   *                           SLOT  FUNCTIONS
+   *
+   */
 
   FT_LOCAL_DEF( void )
   T1_GlyphSlot_Done( FT_GlyphSlot  slot )
@@ -177,24 +177,25 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /*                            FACE  FUNCTIONS                            */
-  /*                                                                       */
-  /*************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    T1_Face_Done                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    The face object destructor.                                        */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    face :: A typeless pointer to the face object to destroy.          */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   *                           FACE  FUNCTIONS
+   *
+   */
+
+
+  /**************************************************************************
+   *
+   * @Function:
+   *   T1_Face_Done
+   *
+   * @Description:
+   *   The face object destructor.
+   *
+   * @Input:
+   *   face ::
+   *     A typeless pointer to the face object to destroy.
+   */
   FT_LOCAL_DEF( void )
   T1_Face_Done( FT_Face  t1face )         /* T1_Face */
   {
@@ -274,29 +275,34 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    T1_Face_Init                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    The face object constructor.                                       */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    stream     ::  input stream where to load font data.               */
-  /*                                                                       */
-  /*    face_index :: The index of the font face in the resource.          */
-  /*                                                                       */
-  /*    num_params :: Number of additional generic parameters.  Ignored.   */
-  /*                                                                       */
-  /*    params     :: Additional generic parameters.  Ignored.             */
-  /*                                                                       */
-  /* <InOut>                                                               */
-  /*    face       :: The face record to build.                            */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   T1_Face_Init
+   *
+   * @Description:
+   *   The face object constructor.
+   *
+   * @Input:
+   *   stream ::
+   *     input stream where to load font data.
+   *
+   *   face_index ::
+   *     The index of the font face in the resource.
+   *
+   *   num_params ::
+   *     Number of additional generic parameters.  Ignored.
+   *
+   *   params ::
+   *     Additional generic parameters.  Ignored.
+   *
+   * @InOut:
+   *   face ::
+   *     The face record to build.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   T1_Face_Init( FT_Stream      stream,
                 FT_Face        t1face,          /* T1_Face */
@@ -564,20 +570,21 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    T1_Driver_Init                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Initializes a given Type 1 driver object.                          */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    driver :: A handle to the target driver object.                    */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   T1_Driver_Init
+   *
+   * @Description:
+   *   Initializes a given Type 1 driver object.
+   *
+   * @Input:
+   *   driver ::
+   *     A handle to the target driver object.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   T1_Driver_Init( FT_Module  module )
   {
@@ -620,17 +627,18 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    T1_Driver_Done                                                     */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Finalizes a given Type 1 driver.                                   */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    driver :: A handle to the target Type 1 driver.                    */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   T1_Driver_Done
+   *
+   * @Description:
+   *   Finalizes a given Type 1 driver.
+   *
+   * @Input:
+   *   driver ::
+   *     A handle to the target Type 1 driver.
+   */
   FT_LOCAL_DEF( void )
   T1_Driver_Done( FT_Module  driver )
   {
diff --git a/src/type1/t1objs.h b/src/type1/t1objs.h
index 8298e03..86fecd9 100644
--- a/src/type1/t1objs.h
+++ b/src/type1/t1objs.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  t1objs.h                                                               */
-/*                                                                         */
-/*    Type 1 objects manager (specification).                              */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * t1objs.h
+ *
+ *   Type 1 objects manager (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef T1OBJS_H_
@@ -34,59 +34,59 @@ FT_BEGIN_HEADER
   typedef struct T1_Glyph_Hints_  T1_Glyph_Hints;
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    T1_Size                                                            */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A handle to a Type 1 size object.                                  */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Type:
+   *   T1_Size
+   *
+   * @Description:
+   *   A handle to a Type 1 size object.
+   */
   typedef struct T1_SizeRec_*  T1_Size;
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    T1_GlyphSlot                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A handle to a Type 1 glyph slot object.                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Type:
+   *   T1_GlyphSlot
+   *
+   * @Description:
+   *   A handle to a Type 1 glyph slot object.
+   */
   typedef struct T1_GlyphSlotRec_*  T1_GlyphSlot;
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    T1_CharMap                                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A handle to a Type 1 character mapping object.                     */
-  /*                                                                       */
-  /* <Note>                                                                */
-  /*    The Type 1 format doesn't use a charmap but an encoding table.     */
-  /*    The driver is responsible for making up charmap objects            */
-  /*    corresponding to these tables.                                     */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Type:
+   *   T1_CharMap
+   *
+   * @Description:
+   *   A handle to a Type 1 character mapping object.
+   *
+   * @Note:
+   *   The Type 1 format doesn't use a charmap but an encoding table.
+   *   The driver is responsible for making up charmap objects
+   *   corresponding to these tables.
+   */
   typedef struct T1_CharMapRec_*   T1_CharMap;
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /*                  HERE BEGINS THE TYPE1 SPECIFIC STUFF                 */
-  /*                                                                       */
-  /*************************************************************************/
+  /**************************************************************************
+   *
+   *                 HERE BEGINS THE TYPE1 SPECIFIC STUFF
+   *
+   */
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    T1_SizeRec                                                         */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Type 1 size record.                                                */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Type:
+   *   T1_SizeRec
+   *
+   * @Description:
+   *   Type 1 size record.
+   */
   typedef struct  T1_SizeRec_
   {
     FT_SizeRec  root;
@@ -105,14 +105,14 @@ FT_BEGIN_HEADER
   T1_Size_Init( FT_Size  size );
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Type>                                                                */
-  /*    T1_GlyphSlotRec                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Type 1 glyph slot record.                                          */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Type:
+   *   T1_GlyphSlotRec
+   *
+   * @Description:
+   *   Type 1 glyph slot record.
+   */
   typedef struct  T1_GlyphSlotRec_
   {
     FT_GlyphSlotRec  root;
diff --git a/src/type1/t1parse.c b/src/type1/t1parse.c
index 8e201e5..9214831 100644
--- a/src/type1/t1parse.c
+++ b/src/type1/t1parse.c
@@ -1,36 +1,36 @@
-/***************************************************************************/
-/*                                                                         */
-/*  t1parse.c                                                              */
-/*                                                                         */
-/*    Type 1 parser (body).                                                */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* The Type 1 parser is in charge of the following:                      */
-  /*                                                                       */
-  /*  - provide an implementation of a growing sequence of objects called  */
-  /*    a `T1_Table' (used to build various tables needed by the loader).  */
-  /*                                                                       */
-  /*  - opening .pfb and .pfa files to extract their top-level and private */
-  /*    dictionaries.                                                      */
-  /*                                                                       */
-  /*  - read numbers, arrays & strings from any dictionary.                */
-  /*                                                                       */
-  /* See `t1load.c' to see how data is loaded from the font file.          */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * t1parse.c
+ *
+ *   Type 1 parser (body).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+
+  /**************************************************************************
+   *
+   * The Type 1 parser is in charge of the following:
+   *
+   * - provide an implementation of a growing sequence of objects called
+   *   a `T1_Table' (used to build various tables needed by the loader).
+   *
+   * - opening .pfb and .pfa files to extract their top-level and private
+   *   dictionaries.
+   *
+   * - read numbers, arrays & strings from any dictionary.
+   *
+   * See `t1load.c' to see how data is loaded from the font file.
+   *
+   */
 
 
 #include <ft2build.h>
@@ -43,12 +43,12 @@
 #include "t1errors.h"
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_t1parse
 
@@ -169,21 +169,21 @@
       }
     }
 
-    /******************************************************************/
-    /*                                                                */
-    /* Here a short summary of what is going on:                      */
-    /*                                                                */
-    /*   When creating a new Type 1 parser, we try to locate and load */
-    /*   the base dictionary if this is possible (i.e., for PFB       */
-    /*   files).  Otherwise, we load the whole font into memory.      */
-    /*                                                                */
-    /*   When `loading' the base dictionary, we only setup pointers   */
-    /*   in the case of a memory-based stream.  Otherwise, we         */
-    /*   allocate and load the base dictionary in it.                 */
-    /*                                                                */
-    /*   parser->in_pfb is set if we are in a binary (`.pfb') font.   */
-    /*   parser->in_memory is set if we have a memory stream.         */
-    /*                                                                */
+    /*******************************************************************
+     *
+     * Here a short summary of what is going on:
+     *
+     *   When creating a new Type 1 parser, we try to locate and load
+     *   the base dictionary if this is possible (i.e., for PFB
+     *   files).  Otherwise, we load the whole font into memory.
+     *
+     *   When `loading' the base dictionary, we only setup pointers
+     *   in the case of a memory-based stream.  Otherwise, we
+     *   allocate and load the base dictionary in it.
+     *
+     *   parser->in_pfb is set if we are in a binary (`.pfb') font.
+     *   parser->in_memory is set if we have a memory stream.
+     */
 
     /* try to compute the size of the base dictionary;     */
     /* look for a Postscript binary file tag, i.e., 0x8001 */
diff --git a/src/type1/t1parse.h b/src/type1/t1parse.h
index 4ac82ae..5659f4a 100644
--- a/src/type1/t1parse.h
+++ b/src/type1/t1parse.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  t1parse.h                                                              */
-/*                                                                         */
-/*    Type 1 parser (specification).                                       */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * t1parse.h
+ *
+ *   Type 1 parser (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef T1PARSE_H_
@@ -28,36 +28,45 @@
 FT_BEGIN_HEADER
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Struct>                                                              */
-  /*    T1_ParserRec                                                       */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    A PS_ParserRec is an object used to parse a Type 1 fonts very      */
-  /*    quickly.                                                           */
-  /*                                                                       */
-  /* <Fields>                                                              */
-  /*    root         :: The root parser.                                   */
-  /*                                                                       */
-  /*    stream       :: The current input stream.                          */
-  /*                                                                       */
-  /*    base_dict    :: A pointer to the top-level dictionary.             */
-  /*                                                                       */
-  /*    base_len     :: The length in bytes of the top dictionary.         */
-  /*                                                                       */
-  /*    private_dict :: A pointer to the private dictionary.               */
-  /*                                                                       */
-  /*    private_len  :: The length in bytes of the private dictionary.     */
-  /*                                                                       */
-  /*    in_pfb       :: A boolean.  Indicates that we are handling a PFB   */
-  /*                    file.                                              */
-  /*                                                                       */
-  /*    in_memory    :: A boolean.  Indicates a memory-based stream.       */
-  /*                                                                       */
-  /*    single_block :: A boolean.  Indicates that the private dictionary  */
-  /*                    is stored in lieu of the base dictionary.          */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Struct:
+   *   T1_ParserRec
+   *
+   * @Description:
+   *   A PS_ParserRec is an object used to parse a Type 1 fonts very
+   *   quickly.
+   *
+   * @Fields:
+   *   root ::
+   *     The root parser.
+   *
+   *   stream ::
+   *     The current input stream.
+   *
+   *   base_dict ::
+   *     A pointer to the top-level dictionary.
+   *
+   *   base_len ::
+   *     The length in bytes of the top dictionary.
+   *
+   *   private_dict ::
+   *     A pointer to the private dictionary.
+   *
+   *   private_len ::
+   *     The length in bytes of the private dictionary.
+   *
+   *   in_pfb ::
+   *     A boolean.  Indicates that we are handling a PFB
+   *     file.
+   *
+   *   in_memory ::
+   *     A boolean.  Indicates a memory-based stream.
+   *
+   *   single_block ::
+   *     A boolean.  Indicates that the private dictionary
+   *     is stored in lieu of the base dictionary.
+   */
   typedef struct  T1_ParserRec_
   {
     PS_ParserRec  root;
diff --git a/src/type1/t1tokens.h b/src/type1/t1tokens.h
index 43a65d8..45fc50d 100644
--- a/src/type1/t1tokens.h
+++ b/src/type1/t1tokens.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  t1tokens.h                                                             */
-/*                                                                         */
-/*    Type 1 tokenizer (specification).                                    */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * t1tokens.h
+ *
+ *   Type 1 tokenizer (specification).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #undef  FT_STRUCTURE
diff --git a/src/type1/type1.c b/src/type1/type1.c
index 72eff59..c2d7922 100644
--- a/src/type1/type1.c
+++ b/src/type1/type1.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  type1.c                                                                */
-/*                                                                         */
-/*    FreeType Type 1 driver component (body only).                        */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * type1.c
+ *
+ *   FreeType Type 1 driver component (body only).
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #define FT_MAKE_OPTION_SINGLE_OBJECT
diff --git a/src/type42/t42drivr.c b/src/type42/t42drivr.c
index f579b27..1036503 100644
--- a/src/type42/t42drivr.c
+++ b/src/type42/t42drivr.c
@@ -1,39 +1,39 @@
-/***************************************************************************/
-/*                                                                         */
-/*  t42drivr.c                                                             */
-/*                                                                         */
-/*    High-level Type 42 driver interface (body).                          */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  Roberto Alameda.                                                       */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This driver implements Type42 fonts as described in the               */
-  /* Technical Note #5012 from Adobe, with these limitations:              */
-  /*                                                                       */
-  /* 1) CID Fonts are not currently supported.                             */
-  /* 2) Incremental fonts making use of the GlyphDirectory keyword         */
-  /*    will be loaded, but the rendering will be using the TrueType       */
-  /*    tables.                                                            */
-  /* 3) As for Type1 fonts, CDevProc is not supported.                     */
-  /* 4) The Metrics dictionary is not supported.                           */
-  /* 5) AFM metrics are not supported.                                     */
-  /*                                                                       */
-  /* In other words, this driver supports Type42 fonts derived from        */
-  /* TrueType fonts in a non-CID manner, as done by usual conversion       */
-  /* programs.                                                             */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * t42drivr.c
+ *
+ *   High-level Type 42 driver interface (body).
+ *
+ * Copyright 2002-2018 by
+ * Roberto Alameda.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+
+  /**************************************************************************
+   *
+   * This driver implements Type42 fonts as described in the
+   * Technical Note #5012 from Adobe, with these limitations:
+   *
+   * 1) CID Fonts are not currently supported.
+   * 2) Incremental fonts making use of the GlyphDirectory keyword
+   *    will be loaded, but the rendering will be using the TrueType
+   *    tables.
+   * 3) As for Type1 fonts, CDevProc is not supported.
+   * 4) The Metrics dictionary is not supported.
+   * 5) AFM metrics are not supported.
+   *
+   * In other words, this driver supports Type42 fonts derived from
+   * TrueType fonts in a non-CID manner, as done by usual conversion
+   * programs.
+   *
+   */
 
 
 #include "t42drivr.h"
@@ -52,7 +52,7 @@
 
   /*
    *
-   *  GLYPH DICT SERVICE
+   * GLYPH DICT SERVICE
    *
    */
 
@@ -98,7 +98,7 @@
 
   /*
    *
-   *  POSTSCRIPT NAME SERVICE
+   * POSTSCRIPT NAME SERVICE
    *
    */
 
@@ -117,7 +117,7 @@
 
   /*
    *
-   *  POSTSCRIPT INFO SERVICE
+   * POSTSCRIPT INFO SERVICE
    *
    */
 
@@ -173,7 +173,7 @@
 
   /*
    *
-   *  SERVICE LIST
+   * SERVICE LIST
    *
    */
 
diff --git a/src/type42/t42drivr.h b/src/type42/t42drivr.h
index fb4e0ac..ef50ad9 100644
--- a/src/type42/t42drivr.h
+++ b/src/type42/t42drivr.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  t42drivr.h                                                             */
-/*                                                                         */
-/*    High-level Type 42 driver interface (specification).                 */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  Roberto Alameda.                                                       */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * t42drivr.h
+ *
+ *   High-level Type 42 driver interface (specification).
+ *
+ * Copyright 2002-2018 by
+ * Roberto Alameda.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef T42DRIVR_H_
diff --git a/src/type42/t42error.h b/src/type42/t42error.h
index e3978a7..95f9e69 100644
--- a/src/type42/t42error.h
+++ b/src/type42/t42error.h
@@ -1,26 +1,26 @@
-/***************************************************************************/
-/*                                                                         */
-/*  t42error.h                                                             */
-/*                                                                         */
-/*    Type 42 error codes (specification only).                            */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This file is used to define the Type 42 error enumeration constants.  */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * t42error.h
+ *
+ *   Type 42 error codes (specification only).
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+
+  /**************************************************************************
+   *
+   * This file is used to define the Type 42 error enumeration constants.
+   *
+   */
 
 #ifndef T42ERROR_H_
 #define T42ERROR_H_
diff --git a/src/type42/t42objs.c b/src/type42/t42objs.c
index 66e5c40..0325cad 100644
--- a/src/type42/t42objs.c
+++ b/src/type42/t42objs.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  t42objs.c                                                              */
-/*                                                                         */
-/*    Type 42 objects manager (body).                                      */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  Roberto Alameda.                                                       */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * t42objs.c
+ *
+ *   Type 42 objects manager (body).
+ *
+ * Copyright 2002-2018 by
+ * Roberto Alameda.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include "t42objs.h"
@@ -457,20 +457,21 @@
   }
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* <Function>                                                            */
-  /*    T42_Driver_Init                                                    */
-  /*                                                                       */
-  /* <Description>                                                         */
-  /*    Initializes a given Type 42 driver object.                         */
-  /*                                                                       */
-  /* <Input>                                                               */
-  /*    driver :: A handle to the target driver object.                    */
-  /*                                                                       */
-  /* <Return>                                                              */
-  /*    FreeType error code.  0 means success.                             */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * @Function:
+   *   T42_Driver_Init
+   *
+   * @Description:
+   *   Initializes a given Type 42 driver object.
+   *
+   * @Input:
+   *   driver ::
+   *     A handle to the target driver object.
+   *
+   * @Return:
+   *   FreeType error code.  0 means success.
+   */
   FT_LOCAL_DEF( FT_Error )
   T42_Driver_Init( FT_Module  module )        /* T42_Driver */
   {
diff --git a/src/type42/t42objs.h b/src/type42/t42objs.h
index 3bad513..332a43c 100644
--- a/src/type42/t42objs.h
+++ b/src/type42/t42objs.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  t42objs.h                                                              */
-/*                                                                         */
-/*    Type 42 objects manager (specification).                             */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  Roberto Alameda.                                                       */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * t42objs.h
+ *
+ *   Type 42 objects manager (specification).
+ *
+ * Copyright 2002-2018 by
+ * Roberto Alameda.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef T42OBJS_H_
diff --git a/src/type42/t42parse.c b/src/type42/t42parse.c
index 4813d1f..009121f 100644
--- a/src/type42/t42parse.c
+++ b/src/type42/t42parse.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  t42parse.c                                                             */
-/*                                                                         */
-/*    Type 42 font parser (body).                                          */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  Roberto Alameda.                                                       */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * t42parse.c
+ *
+ *   Type 42 font parser (body).
+ *
+ * Copyright 2002-2018 by
+ * Roberto Alameda.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include "t42parse.h"
@@ -23,12 +23,12 @@
 #include FT_INTERNAL_POSTSCRIPT_AUX_H
 
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_t42
 
@@ -149,19 +149,19 @@
     parser->base_dict = NULL;
     parser->in_memory = 0;
 
-    /*******************************************************************/
-    /*                                                                 */
-    /* Here a short summary of what is going on:                       */
-    /*                                                                 */
-    /*   When creating a new Type 42 parser, we try to locate and load */
-    /*   the base dictionary, loading the whole font into memory.      */
-    /*                                                                 */
-    /*   When `loading' the base dictionary, we only set up pointers   */
-    /*   in the case of a memory-based stream.  Otherwise, we allocate */
-    /*   and load the base dictionary in it.                           */
-    /*                                                                 */
-    /*   parser->in_memory is set if we have a memory stream.          */
-    /*                                                                 */
+    /********************************************************************
+     *
+     * Here a short summary of what is going on:
+     *
+     *   When creating a new Type 42 parser, we try to locate and load
+     *   the base dictionary, loading the whole font into memory.
+     *
+     *   When `loading' the base dictionary, we only set up pointers
+     *   in the case of a memory-based stream.  Otherwise, we allocate
+     *   and load the base dictionary in it.
+     *
+     *   parser->in_memory is set if we have a memory stream.
+     */
 
     if ( FT_STREAM_SEEK( 0L ) ||
          FT_FRAME_ENTER( 17 ) )
diff --git a/src/type42/t42parse.h b/src/type42/t42parse.h
index f35d23d..d9b9a69 100644
--- a/src/type42/t42parse.h
+++ b/src/type42/t42parse.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  t42parse.h                                                             */
-/*                                                                         */
-/*    Type 42 font parser (specification).                                 */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  Roberto Alameda.                                                       */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * t42parse.h
+ *
+ *   Type 42 font parser (specification).
+ *
+ * Copyright 2002-2018 by
+ * Roberto Alameda.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef T42PARSE_H_
diff --git a/src/type42/t42types.h b/src/type42/t42types.h
index d0aa2de..7d0230e 100644
--- a/src/type42/t42types.h
+++ b/src/type42/t42types.h
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  t42types.h                                                             */
-/*                                                                         */
-/*    Type 42 font data types (specification only).                        */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  Roberto Alameda.                                                       */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * t42types.h
+ *
+ *   Type 42 font data types (specification only).
+ *
+ * Copyright 2002-2018 by
+ * Roberto Alameda.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef T42TYPES_H_
diff --git a/src/type42/type42.c b/src/type42/type42.c
index 6a89cfb..187c5ed 100644
--- a/src/type42/type42.c
+++ b/src/type42/type42.c
@@ -1,19 +1,19 @@
-/***************************************************************************/
-/*                                                                         */
-/*  type42.c                                                               */
-/*                                                                         */
-/*    FreeType Type 42 driver component.                                   */
-/*                                                                         */
-/*  Copyright 2002-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * type42.c
+ *
+ *   FreeType Type 42 driver component.
+ *
+ * Copyright 2002-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #define FT_MAKE_OPTION_SINGLE_OBJECT
diff --git a/src/winfonts/fnterrs.h b/src/winfonts/fnterrs.h
index 3a86af5..08fceb0 100644
--- a/src/winfonts/fnterrs.h
+++ b/src/winfonts/fnterrs.h
@@ -1,27 +1,27 @@
-/***************************************************************************/
-/*                                                                         */
-/*  fnterrs.h                                                              */
-/*                                                                         */
-/*    Win FNT/FON error codes (specification only).                        */
-/*                                                                         */
-/*  Copyright 2001-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
-
-
-  /*************************************************************************/
-  /*                                                                       */
-  /* This file is used to define the Windows FNT/FON error enumeration     */
-  /* constants.                                                            */
-  /*                                                                       */
-  /*************************************************************************/
+/****************************************************************************
+ *
+ * fnterrs.h
+ *
+ *   Win FNT/FON error codes (specification only).
+ *
+ * Copyright 2001-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
+
+
+  /**************************************************************************
+   *
+   * This file is used to define the Windows FNT/FON error enumeration
+   * constants.
+   *
+   */
 
 #ifndef FNTERRS_H_
 #define FNTERRS_H_
diff --git a/src/winfonts/winfnt.c b/src/winfonts/winfnt.c
index 36bd314..70fc827 100644
--- a/src/winfonts/winfnt.c
+++ b/src/winfonts/winfnt.c
@@ -1,21 +1,21 @@
-/***************************************************************************/
-/*                                                                         */
-/*  winfnt.c                                                               */
-/*                                                                         */
-/*    FreeType font driver for Windows FNT/FON files                       */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*  Copyright 2003 Huw D M Davies for Codeweavers                          */
-/*  Copyright 2007 Dmitry Timoshkov for Codeweavers                        */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * winfnt.c
+ *
+ *   FreeType font driver for Windows FNT/FON files
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ * Copyright 2003 Huw D M Davies for Codeweavers
+ * Copyright 2007 Dmitry Timoshkov for Codeweavers
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #include <ft2build.h>
@@ -30,12 +30,12 @@
 #include FT_SERVICE_WINFNT_H
 #include FT_SERVICE_FONT_FORMAT_H
 
-  /*************************************************************************/
-  /*                                                                       */
-  /* The macro FT_COMPONENT is used in trace mode.  It is an implicit      */
-  /* parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log  */
-  /* messages during execution.                                            */
-  /*                                                                       */
+  /**************************************************************************
+   *
+   * The macro FT_COMPONENT is used in trace mode.  It is an implicit
+   * parameter of the FT_TRACE() and FT_ERROR() macros, used to print/log
+   * messages during execution.
+   */
 #undef  FT_COMPONENT
 #define FT_COMPONENT  trace_winfnt
 
@@ -1131,10 +1131,10 @@
     winfnt_get_header       /* get_header */
   };
 
- /*
-  *  SERVICE LIST
-  *
-  */
+  /*
+   * SERVICE LIST
+   *
+   */
 
   static const FT_ServiceDescRec  winfnt_services[] =
   {
diff --git a/src/winfonts/winfnt.h b/src/winfonts/winfnt.h
index f3e6d73..0161939 100644
--- a/src/winfonts/winfnt.h
+++ b/src/winfonts/winfnt.h
@@ -1,20 +1,20 @@
-/***************************************************************************/
-/*                                                                         */
-/*  winfnt.h                                                               */
-/*                                                                         */
-/*    FreeType font driver for Windows FNT/FON files                       */
-/*                                                                         */
-/*  Copyright 1996-2018 by                                                 */
-/*  David Turner, Robert Wilhelm, and Werner Lemberg.                      */
-/*  Copyright 2007 Dmitry Timoshkov for Codeweavers                        */
-/*                                                                         */
-/*  This file is part of the FreeType project, and may only be used,       */
-/*  modified, and distributed under the terms of the FreeType project      */
-/*  license, LICENSE.TXT.  By continuing to use, modify, or distribute     */
-/*  this file you indicate that you have read the license and              */
-/*  understand and accept it fully.                                        */
-/*                                                                         */
-/***************************************************************************/
+/****************************************************************************
+ *
+ * winfnt.h
+ *
+ *   FreeType font driver for Windows FNT/FON files
+ *
+ * Copyright 1996-2018 by
+ * David Turner, Robert Wilhelm, and Werner Lemberg.
+ * Copyright 2007 Dmitry Timoshkov for Codeweavers
+ *
+ * This file is part of the FreeType project, and may only be used,
+ * modified, and distributed under the terms of the FreeType project
+ * license, LICENSE.TXT.  By continuing to use, modify, or distribute
+ * this file you indicate that you have read the license and
+ * understand and accept it fully.
+ *
+ */
 
 
 #ifndef WINFNT_H_



reply via email to

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