diff --git a/llvm-general.cabal b/llvm-general.cabal
--- a/llvm-general.cabal
+++ b/llvm-general.cabal
@@ -1,5 +1,5 @@
 name: llvm-general
-version: 3.2.8.1
+version: 3.2.8.2
 license: BSD3
 license-file: LICENSE
 author: Benjamin S.Scarlet <fgthb0@greynode.net>
@@ -16,7 +16,7 @@
 	handles almost all of the stateful complexities of using the LLVM API to build IR; and it supports moving IR not
 	only from Haskell into LLVM C++ objects, but the other direction - from LLVM C++ into Haskell.
   .
-  For haddock, see <http://bscarlet.github.io/llvm-general/3.2.8.1/doc/html/llvm-general/index.html>.
+  For haddock, see <http://bscarlet.github.io/llvm-general/3.2.8.2/doc/html/llvm-general/index.html>.
 extra-source-files:
   src/LLVM/General/Internal/FFI/Analysis.h
   src/LLVM/General/Internal/FFI/Function.h
@@ -37,7 +37,7 @@
   type: git
   location: git://github.com/bscarlet/llvm-general.git
   branch: llvm-3.2
-  tag: v3.2.8.1
+  tag: v3.2.8.2
 
 flag shared-llvm
   description: link against llvm shared rather than static library
@@ -61,7 +61,7 @@
     parsec >= 3.1.3,
     array >= 0.4.0.0,
     setenv >= 0.1.0,
-    llvm-general-pure == 3.2.8.1
+    llvm-general-pure == 3.2.8.2
   extra-libraries: stdc++
   hs-source-dirs: src
   extensions:
@@ -184,8 +184,8 @@
     HUnit >= 1.2.4.2,
     test-framework-quickcheck2 >= 0.3.0.1,
     QuickCheck >= 2.5.1.1,
-    llvm-general == 3.2.8.1,
-    llvm-general-pure == 3.2.8.1,
+    llvm-general == 3.2.8.2,
+    llvm-general-pure == 3.2.8.2,
     containers >= 0.4.2.1,
     mtl >= 2.0.1.0
   hs-source-dirs: test
diff --git a/src/LLVM/General/Internal/FFI/InstructionC.cpp b/src/LLVM/General/Internal/FFI/InstructionC.cpp
--- a/src/LLVM/General/Internal/FFI/InstructionC.cpp
+++ b/src/LLVM/General/Internal/FFI/InstructionC.cpp
@@ -111,7 +111,7 @@
 
 void LLVM_General_SetInstrAlignment(LLVMValueRef l, unsigned a) {
 	switch(unwrap<Instruction>(l)->getOpcode()) {
-#define ENUM_CASE(n) case Instruction::n: unwrap<n ## Inst>(l)->setAlignment(a);
+#define ENUM_CASE(n) case Instruction::n: unwrap<n ## Inst>(l)->setAlignment(a); break;
 		LLVM_GENERAL_FOR_EACH_ALIGNMENT_INST(ENUM_CASE)
 #undef ENUM_CASE
 	}
diff --git a/test/LLVM/General/Test/Instructions.hs b/test/LLVM/General/Test/Instructions.hs
--- a/test/LLVM/General/Test/Instructions.hs
+++ b/test/LLVM/General/Test/Instructions.hs
@@ -230,7 +230,6 @@
              metadata = [] 
            },
            "xor i32 %0, %0"),
-
           ("alloca",
            Alloca {
              allocatedType = IntegerType 32,
@@ -239,6 +238,14 @@
              metadata = [] 
            },
            "alloca i32"),
+          ("alloca tricky",
+           Alloca {
+             allocatedType = IntegerType 7,
+             numElements = Just (ConstantOperand (C.Int 32 2)),
+             alignment = 128,
+             metadata = [] 
+           },
+           "alloca i7, i32 2, align 128"),
           ("load",
            Load {
              volatile = False,
