aboutsummaryrefslogtreecommitdiff
path: root/lib/Transforms/NaCl/StripAttributes.cpp
diff options
context:
space:
mode:
authorEli Bendersky <eliben@chromium.org>2013-07-18 16:30:38 -0700
committerEli Bendersky <eliben@chromium.org>2013-07-18 16:30:38 -0700
commit2f90dcad71d5a9ebc3ea2b7287eeb7731f9044b7 (patch)
tree915f4d756b5e358b5130f7212781cc41ceb2c268 /lib/Transforms/NaCl/StripAttributes.cpp
parent2f53fcde24359c48fe8b0138b91adee84f6b0853 (diff)
More safeguarding of Attr->getKindAsEnum by checking for isEnumAttribute
first
Diffstat (limited to 'lib/Transforms/NaCl/StripAttributes.cpp')
-rw-r--r--lib/Transforms/NaCl/StripAttributes.cpp3
1 files changed, 3 insertions, 0 deletions
diff --git a/lib/Transforms/NaCl/StripAttributes.cpp b/lib/Transforms/NaCl/StripAttributes.cpp
index fb3a080e84..184e06aba1 100644
--- a/lib/Transforms/NaCl/StripAttributes.cpp
+++ b/lib/Transforms/NaCl/StripAttributes.cpp
@@ -61,6 +61,9 @@ static void CheckAttributes(AttributeSet Attrs) {
for (unsigned Slot = 0; Slot < Attrs.getNumSlots(); ++Slot) {
for (AttributeSet::iterator Attr = Attrs.begin(Slot), E = Attrs.end(Slot);
Attr != E; ++Attr) {
+ if (!Attr->isEnumAttribute()) {
+ continue;
+ }
switch (Attr->getKindAsEnum()) {
// The following attributes can affect calling conventions.
// Rather than complaining, we just strip these out.