diff --git a/dwarf.cabal b/dwarf.cabal
--- a/dwarf.cabal
+++ b/dwarf.cabal
@@ -1,5 +1,5 @@
 Name:          dwarf
-Version:       0.22
+Version:       0.23
 License:       BSD3
 License-file:  LICENSE
 Category:      Data
diff --git a/src/Data/Dwarf.hs b/src/Data/Dwarf.hs
--- a/src/Data/Dwarf.hs
+++ b/src/Data/Dwarf.hs
@@ -548,7 +548,7 @@
     line_base                  <- get :: Get Int8
     line_range                 <- getWord8
     opcode_base                <- getWord8
-    standard_opcode_lengths    <- replicateM (fromIntegral opcode_base - 2) getWord8
+    standard_opcode_lengths    <- replicateM (fromIntegral opcode_base - 1) getWord8
     include_directories        <- getWhile (/= "") getNullTerminatedString
     file_names                 <- getDebugLineFileNames
     endLen <- bytesRead
