summaryrefslogtreecommitdiff
path: root/Build/source/texk/web2c/xetexdir/trans.h
diff options
context:
space:
mode:
authorJonathan Kew <jfkthame@googlemail.com>2007-11-21 12:32:29 +0000
committerJonathan Kew <jfkthame@googlemail.com>2007-11-21 12:32:29 +0000
commit17aeed8e129118bdb3b7eb0ef3a18241dcda40eb (patch)
treed6faebee2c4a64d8e504650b5cb40d78c0c68b56 /Build/source/texk/web2c/xetexdir/trans.h
parent952d69f85d43b087ce9fa79d3fc6f1c076000bc7 (diff)
merged XeTeX 0.997 from SIL repository
git-svn-id: svn://tug.org/texlive/trunk@5537 c570f23f-e606-0410-a88d-b1316a301751
Diffstat (limited to 'Build/source/texk/web2c/xetexdir/trans.h')
-rw-r--r--Build/source/texk/web2c/xetexdir/trans.h36
1 files changed, 21 insertions, 15 deletions
diff --git a/Build/source/texk/web2c/xetexdir/trans.h b/Build/source/texk/web2c/xetexdir/trans.h
index a1bb8780fb7..0d20308f8bf 100644
--- a/Build/source/texk/web2c/xetexdir/trans.h
+++ b/Build/source/texk/web2c/xetexdir/trans.h
@@ -64,33 +64,39 @@ typedef struct {
float ht;
} realrect;
-#define xCoord(p) p.x
-#define yCoord(p) p.y
+#define xCoord(p) (p).x
+#define yCoord(p) (p).y
-#define wdField(r) r.wd
-#define htField(r) r.ht
+#define wdField(r) (r).wd
+#define htField(r) (r).ht
-#define aField(t) t.a
-#define bField(t) t.b
-#define cField(t) t.c
-#define dField(t) t.d
+#define aField(t) (t).a
+#define bField(t) (t).b
+#define cField(t) (t).c
+#define dField(t) (t).d
#ifdef XETEX_MAC /* transform fields have different names */
-#define txField(t) t.tx
-#define tyField(t) t.ty
+#define txField(t) (t).tx
+#define tyField(t) (t).ty
#else
-#define txField(t) t.x
-#define tyField(t) t.y
+#define txField(t) (t).x
+#define tyField(t) (t).y
#endif
-#define xField(t) t.x
-#define yField(t) t.y
+#define xField(t) (t).x
+#define yField(t) (t).y
-#define setPoint(P,X,Y) do { P.x = X; P.y = Y; } while (0)
+#define setPoint(P,X,Y) do { (P).x = X; (P).y = Y; } while (0)
+#ifdef __cplusplus
+extern "C" {
+#endif
void makeidentity(transform* t);
void makescale(transform* t, double xscale, double yscale);
void maketranslation(transform* t, double dx, double dy);
void makerotation(transform* t, double a);
void transformpoint(realpoint* p, const transform* t);
void transformconcat(transform* t1, const transform* t2);
+#ifdef __cplusplus
+};
+#endif
#endif /* _TRANS_H_ */