diff -r -U 3 minecraft\net\minecraft\client\renderer\tileentity\TileEntityRendererDispatcher.java minecraft_patched\net\minecraft\client\renderer\tileentity\TileEntityRendererDispatcher.java
--- minecraft\net\minecraft\client\renderer\tileentity\TileEntityRendererDispatcher.java
+++ minecraft_patched\net\minecraft\client\renderer\tileentity\TileEntityRendererDispatcher.java
@@ -75,9 +75,9 @@
    }
 
    public <T extends TileEntity> TileEntitySpecialRenderer<T> func_147546_a(Class<? extends TileEntity> p_147546_1_) {
-      TileEntitySpecialRenderer<? extends TileEntity> tileentityspecialrenderer = (TileEntitySpecialRenderer)this.field_147559_m.get(p_147546_1_);
+      TileEntitySpecialRenderer<T> tileentityspecialrenderer = (TileEntitySpecialRenderer)this.field_147559_m.get(p_147546_1_);
       if (tileentityspecialrenderer == null && p_147546_1_ != TileEntity.class) {
-         tileentityspecialrenderer = this.<TileEntity>func_147546_a(p_147546_1_.getSuperclass());
+         tileentityspecialrenderer = this.func_147546_a((Class<? extends TileEntity>)p_147546_1_.getSuperclass());
          this.field_147559_m.put(p_147546_1_, tileentityspecialrenderer);
       }
 
