diff --git a/io/io/inc/TGenCollectionProxy.h b/io/io/inc/TGenCollectionProxy.h
index 679ea16343328976eaf33ef7b4248f97c9092801..19138eee758d2474f44d03968678050f9d3bc997 100644
--- a/io/io/inc/TGenCollectionProxy.h
+++ b/io/io/inc/TGenCollectionProxy.h
@@ -133,11 +133,11 @@ public:
       }
       void read_std_string_pointer(TBuffer& b) {
          TString s;
-         std::string* str = (std::string*)ptr();
-         if (!str) str = new std::string();
+         std::string* str2 = (std::string*)ptr();
+         if (!str2) str2 = new std::string();
          s.Streamer(b);
-         *str = s;
-         set(str);
+         *str2 = s;
+         set(str2);
       }
       void write_std_string_pointer(TBuffer& b)  {
          const char* c;
diff --git a/io/io/src/TKey.cxx b/io/io/src/TKey.cxx
index 921bbcfffed3dbda6b95daab7de97eb9cdc5be77..b3fb99bf0eb1cae95f2ea3dd5e1c98942eb8a277 100644
--- a/io/io/src/TKey.cxx
+++ b/io/io/src/TKey.cxx
@@ -877,7 +877,7 @@ void *TKey::ReadObjectAny(const TClass* expectedClass)
    }
 
    if (cl->InheritsFrom(TObject::Class())) {
-      Int_t baseOffset = cl->GetBaseClassOffset(TObject::Class());
+      baseOffset = cl->GetBaseClassOffset(TObject::Class());
       if (baseOffset==-1) {
          Fatal("ReadObj","Incorrect detection of the inheritance from TObject for class %s.\n",
             fClassName.Data());
diff --git a/io/io/src/TStreamerInfo.cxx b/io/io/src/TStreamerInfo.cxx
index 6ef6339b416732586a7ff7d7be892f929ed1e627..5d55957b931c7f45bb9c14a2f5356f1026f27888 100644
--- a/io/io/src/TStreamerInfo.cxx
+++ b/io/io/src/TStreamerInfo.cxx
@@ -559,7 +559,7 @@ void TStreamerInfo::BuildCheck()
          }
          if (info==0) {
             // Find an empty slot.
-            Int_t ninfos = array->GetEntriesFast() - 1;
+            ninfos = array->GetEntriesFast() - 1;
             Int_t slot = 1; // Start of Class version 1.
             while ((slot < ninfos) && (array->UncheckedAt(slot) != 0)) {
                ++slot;
@@ -1217,9 +1217,9 @@ void TStreamerInfo::BuildOld()
                   Int_t elemType = element->GetType();
                   Bool_t isPrealloc = (elemType == kObjectp) || (elemType == kAnyp) || (elemType == (kObjectp + kOffsetL)) || (elemType == (kAnyp + kOffsetL));
 
-                  TClassStreamer *streamer = newClass->GetStreamer();
-                  if (streamer) {
-                     TConvertMapToProxy *ms = new TConvertMapToProxy(streamer, element->IsaPointer(), isPrealloc);
+                  TClassStreamer *streamer2 = newClass->GetStreamer();
+                  if (streamer2) {
+                     TConvertMapToProxy *ms = new TConvertMapToProxy(streamer2, element->IsaPointer(), isPrealloc);
                      if (ms && ms->IsValid()) {
                         element->SetStreamer(ms);
                         switch( element->GetType() ) {
@@ -1745,7 +1745,7 @@ UInt_t TStreamerInfo::GetCheckSum(UInt_t code) const
 
       int dim = el->GetArrayDim();
       if (dim) {
-         for (int i=0;i<dim;i++) id = id*3+el->GetMaxIndex(i);
+         for (i=0;i<dim;i++) id = id*3+el->GetMaxIndex(i);
       }
  
       
@@ -2053,7 +2053,7 @@ Int_t TStreamerInfo::GenerateHeaderFile(const char *dirname, const TList *subCla
                if (nest==0 && GetName()[i-1]==':') {
                   // We have a scope
                   TString nsname(GetName(), i-1);
-                  TClass *cl = gROOT->GetClass(nsname);
+                  cl = gROOT->GetClass(nsname);
                   if (cl && cl->Size()!=0) {
                      // This class is actually nested.
                      return 0;
@@ -2931,7 +2931,7 @@ void TStreamerInfo::Streamer(TBuffer &R__b)
       R__b.CheckByteCount(R__s, R__c, TStreamerInfo::IsA());
    } else {
 //      R__b.WriteClassBuffer(TStreamerInfo::Class(),this);
-      UInt_t R__c = R__b.WriteVersion(TStreamerInfo::IsA(), kTRUE);
+      R__c = R__b.WriteVersion(TStreamerInfo::IsA(), kTRUE);
       R__b.ClassBegin(TStreamerInfo::Class());
       R__b.ClassMember("TNamed");
       TNamed::Streamer(R__b);