Index: trunk/src/formats/assimp_loader.cc
===================================================================
--- trunk/src/formats/assimp_loader.cc	(revision 486)
+++ trunk/src/formats/assimp_loader.cc	(revision 487)
@@ -215,9 +215,9 @@
 		{
 			aiBone* bone  = mesh->mBones[m];
-			for (unsigned int w=0; w<bone->mNumWeights; w++)
+			for ( size_t w=0; w<bone->mNumWeights; w++)
 			{
 				assimp_skinned_vtx& v = vtx[ bone->mWeights[w].mVertexId ];
 				bool found = false;
-				for ( int i = 0 ; i < 4; ++i )
+				for ( size_t i = 0 ; i < 4; ++i )
 				{
 					if ( v.boneweight[i] <= 0.0f ) 
@@ -409,5 +409,5 @@
 			{
 				assimp_skinned_vtx& vertex = channel.data()[v];
-				for ( int i = 0; i < 4; ++i )
+				for ( size_t i = 0; i < 4; ++i )
 				{
 					if ( vertex.boneweight[i] > 0.0f )
@@ -429,6 +429,6 @@
 			mat4 tr = nv::math::inverse( assimp_mat4_cast( m_data->node_by_name[bone_data[i].name]->mTransformation ) );
 			int pid = bone_data[i].parent_id;
-			if ( pid != -1 )
-				bone_data[i].transform = tr * bone_data[pid].transform;
+			if ( pid >= 0 )
+				bone_data[i].transform = tr * bone_data[ size_t( pid ) ].transform;
 			else
 				bone_data[i].transform = tr;
@@ -492,8 +492,6 @@
 {
 	int this_is_incorrect;
-	return m_mesh_count == 0 || m_data->scene->mNumAnimations > 0 && m_data->skeletons.size() == 0;
-}
-
-int indent = 0;
+	return m_mesh_count == 0 || ( m_data->scene->mNumAnimations > 0 && m_data->skeletons.size() == 0 );
+}
 
 void nv::assimp_loader::scan_nodes( const void* node ) const
@@ -537,8 +535,7 @@
 	transform t = nv::transform( nv::assimp_mat4_cast( node->mTransformation ) );
 
-	nodes[ this_id ] = anode ? create_keys( anode, t ) : data_channel_set_creator::create_set( 0 );
-
-	infos[this_id].name      = make_name( name );
-	infos[this_id].parent_id = parent_id;
+	nodes[ uint32( this_id ) ] = anode ? create_keys( anode, t ) : data_channel_set_creator::create_set( 0 );
+	infos[ uint32( this_id ) ].name      = make_name( name );
+	infos[ uint32( this_id ) ].parent_id = parent_id;
 	// This value is ignored by the create_transformed_keys, but needed by create_direct_keys!
 	// TODO: find a common solution!
Index: trunk/src/formats/nmd_loader.cc
===================================================================
--- trunk/src/formats/nmd_loader.cc	(revision 486)
+++ trunk/src/formats/nmd_loader.cc	(revision 487)
@@ -66,5 +66,5 @@
 {
 	if ( count == 0 ) return;
-	source.seek( count * sizeof( nmd_attribute ), origin::CUR );
+	source.seek( long( count * sizeof( nmd_attribute ) ), origin::CUR );
 }
 
@@ -220,9 +220,5 @@
 void nv::nmd_dump_bones( stream& stream_out, const data_node_list& nodes )
 {
-	uint32 total = sizeof( nmd_animation_header );
-	for ( auto node : nodes )
-	{
-		total += sizeof( nmd_element_header );
-	}
+	uint32 total = sizeof( nmd_animation_header ) + sizeof( nmd_element_header ) * nodes.size();
 
 	nmd_element_header header;
