Refactor pragma handling (pass everything to LLVM)

Change-Id: Id09d4934af06f0880cd867456218602ce9a9e2de
diff --git a/slang.cpp b/slang.cpp
index 7e39d29..b8916b8 100644
--- a/slang.cpp
+++ b/slang.cpp
@@ -215,9 +215,9 @@
                                     *HS,
                                     NULL,
                                     /* OwnsHeaderSearch = */true));
-  // Initialize the prepocessor
+  // Initialize the preprocessor
   mPragmas.clear();
-  mPP->AddPragmaHandler(new PragmaRecorder(mPragmas));
+  mPP->AddPragmaHandler(new PragmaRecorder(&mPragmas));
 
   std::vector<clang::DirectoryLookup> SearchList;
   for (unsigned i = 0, e = mIncludePaths.size(); i != e; i++) {
@@ -255,7 +255,7 @@
   return new Backend(mDiagnostics.getPtr(),
                      CodeGenOpts,
                      mTargetOpts,
-                     mPragmas,
+                     &mPragmas,
                      OS,
                      OT);
 }