diff --git a/src/OpenGL/compiler/DirectiveHandler.cpp b/src/OpenGL/compiler/DirectiveHandler.cpp
index ef61d47..7616ce5 100644
--- a/src/OpenGL/compiler/DirectiveHandler.cpp
+++ b/src/OpenGL/compiler/DirectiveHandler.cpp
@@ -21,10 +21,10 @@
 
 static TBehavior getBehavior(const std::string& str)
 {
-	static const std::string kRequire("require");
-	static const std::string kEnable("enable");
-	static const std::string kDisable("disable");
-	static const std::string kWarn("warn");
+	static const char kRequire[] = "require";
+	static const char kEnable[] = "enable";
+	static const char kDisable[] = "disable";
+	static const char kWarn[] = "warn";
 
 	if (str == kRequire) return EBhRequire;
 	else if (str == kEnable) return EBhEnable;
@@ -57,11 +57,11 @@
                                      const std::string& value,
                                      bool stdgl)
 {
-	static const std::string kSTDGL("STDGL");
-	static const std::string kOptimize("optimize");
-	static const std::string kDebug("debug");
-	static const std::string kOn("on");
-	static const std::string kOff("off");
+	static const char kSTDGL[] = "STDGL";
+	static const char kOptimize[] = "optimize";
+	static const char kDebug[] = "debug";
+	static const char kOn[] = "on";
+	static const char kOff[] = "off";
 
 	bool invalidValue = false;
 	if (stdgl || (name == kSTDGL))
@@ -98,7 +98,7 @@
                                         const std::string& name,
                                         const std::string& behavior)
 {
-	static const std::string kExtAll("all");
+	static const char kExtAll[] = "all";
 
 	TBehavior behaviorVal = getBehavior(behavior);
 	if (behaviorVal == EBhUndefined)
diff --git a/src/OpenGL/compiler/preprocessor/DirectiveParser.cpp b/src/OpenGL/compiler/preprocessor/DirectiveParser.cpp
index 9eb044e..ed2ec07 100644
--- a/src/OpenGL/compiler/preprocessor/DirectiveParser.cpp
+++ b/src/OpenGL/compiler/preprocessor/DirectiveParser.cpp
@@ -48,19 +48,19 @@
 
 static DirectiveType getDirective(const pp::Token *token)
 {
-	static const std::string kDirectiveDefine("define");
-	static const std::string kDirectiveUndef("undef");
-	static const std::string kDirectiveIf("if");
-	static const std::string kDirectiveIfdef("ifdef");
-	static const std::string kDirectiveIfndef("ifndef");
-	static const std::string kDirectiveElse("else");
-	static const std::string kDirectiveElif("elif");
-	static const std::string kDirectiveEndif("endif");
-	static const std::string kDirectiveError("error");
-	static const std::string kDirectivePragma("pragma");
-	static const std::string kDirectiveExtension("extension");
-	static const std::string kDirectiveVersion("version");
-	static const std::string kDirectiveLine("line");
+	static const char kDirectiveDefine[] = "define";
+	static const char kDirectiveUndef[] = "undef";
+	static const char kDirectiveIf[] = "if";
+	static const char kDirectiveIfdef[] = "ifdef";
+	static const char kDirectiveIfndef[] = "ifndef";
+	static const char kDirectiveElse[] = "else";
+	static const char kDirectiveElif[] = "elif";
+	static const char kDirectiveEndif[] = "endif";
+	static const char kDirectiveError[] = "error";
+	static const char kDirectivePragma[] = "pragma";
+	static const char kDirectiveExtension[] = "extension";
+	static const char kDirectiveVersion[] = "version";
+	static const char kDirectiveLine[] = "line";
 
 	if (token->type != pp::Token::IDENTIFIER)
 		return DIRECTIVE_NONE;
