From 65e688db5a06f08a2f8f9f7120bfe71b0cd82d9f Mon Sep 17 00:00:00 2001
From: Dan Hirsch <thequux@upstandinghackers.com>
Date: Thu, 11 Jul 2013 23:44:28 +0200
Subject: [PATCH] Fixed clang implicit type cast warning

---
 SConstruct | 10 +++++++---
 src/glue.h |  2 +-
 2 files changed, 8 insertions(+), 4 deletions(-)

diff --git a/SConstruct b/SConstruct
index c652b808..613d8add 100644
--- a/SConstruct
+++ b/SConstruct
@@ -1,8 +1,8 @@
-
+# -*- python -*-
+import os
 env = Environment()
 
 env.MergeFlags("-std=gnu99 -Wall -Wextra -Werror -Wno-unused-parameter -Wno-attributes")
-env['MODE'] = 'shared'
 
 AddOption("--variant",
           dest="variant",
@@ -24,9 +24,13 @@ if GetOption("variant") == 'debug':
     env = dbg
 else:
     env = opt
+
+if os.getenv("CC") == "clang":
+    env.Replace(CC="clang",
+                CXX="clang++")
 Export('env')
 
 env.SConscript(["src/SConscript"], variant_dir='build/$VARIANT/src')
 env.SConscript(["examples/SConscript"], variant_dir='build/$VARIANT/examples')
 
-env.Command('test', 'build/$VARIANT/src/test_suite', 'env LD_LIBRARY_PATH=build/$VARIANT/src $SOURCE')
\ No newline at end of file
+env.Command('test', 'build/$VARIANT/src/test_suite', 'env LD_LIBRARY_PATH=build/$VARIANT/src $SOURCE')
diff --git a/src/glue.h b/src/glue.h
index 18809889..54b59850 100644
--- a/src/glue.h
+++ b/src/glue.h
@@ -182,7 +182,7 @@ HParsedToken *h_make_sint(HArena *arena, int64_t val);
 HParsedToken *h_make_uint(HArena *arena, uint64_t val);
 
 // Standard short-hands to make tokens in an action.
-#define H_MAKE(TYP, VAL)  h_make(p->arena, TT_ ## TYP, VAL)
+#define H_MAKE(TYP, VAL)  h_make(p->arena, (HTokenType)TT_ ## TYP, VAL)
 #define H_MAKE_SEQ()      h_make_seq(p->arena)
 #define H_MAKE_SEQN(N)    h_make_seqn(p->arena, N)
 #define H_MAKE_BYTES(LEN) h_make_bytes(p->arena, LEN)
-- 
GitLab