diff --git a/library/HTMLPurifier.includes.php b/library/HTMLPurifier.includes.php
index b8bf41f5..992c2dd7 100644
--- a/library/HTMLPurifier.includes.php
+++ b/library/HTMLPurifier.includes.php
@@ -201,3 +201,4 @@ require 'HTMLPurifier/URIScheme/mailto.php';
require 'HTMLPurifier/URIScheme/news.php';
require 'HTMLPurifier/URIScheme/nntp.php';
require 'HTMLPurifier/VarParser/Flexible.php';
+require 'HTMLPurifier/VarParser/Native.php';
diff --git a/library/HTMLPurifier/VarParser/Native.php b/library/HTMLPurifier/VarParser/Native.php
new file mode 100644
index 00000000..3bfa90ae
--- /dev/null
+++ b/library/HTMLPurifier/VarParser/Native.php
@@ -0,0 +1,25 @@
+evalExpression($var);
+ }
+
+ protected function evalExpression($expr) {
+ $var = null;
+ $result = eval("\$var = $expr;");
+ if ($result === false) {
+ throw new HTMLPurifier_VarParserException("Fatal error in evaluated code");
+ }
+ return $var;
+ }
+
+}
+
diff --git a/tests/HTMLPurifier/VarParser/NativeTest.php b/tests/HTMLPurifier/VarParser/NativeTest.php
new file mode 100644
index 00000000..7d75b503
--- /dev/null
+++ b/tests/HTMLPurifier/VarParser/NativeTest.php
@@ -0,0 +1,10 @@
+assertValid('"foo\\\\"', 'string', 'foo\\');
+ }
+
+}