title: clGetPlatformIDs return two platforms but they are the same
body: <p>To create a opencl application the fist step is to get platforms by using</p>
  
  <pre><code>clGetPlatformIDs 
  </code></pre>
  
  <p>I have a problem with the platforms that return from function ;the function return that i have 2 platforms but when i check them i found that i have one platform but it's duplicated !! </p>
  
  <p>source code</p>
  
  <pre><code>struct PLATFORM
  {
      cl_platform_id _Platforms ;
      map &lt;cl_platform_info , char*&gt; _Platforms_info ;        
  };
  
  cl_int error ; 
  cl_uint temp_num_platforms ;
  
  error = clGetPlatformIDs (NULL , NULL , &amp;temp_num_platforms );
  
  if ( error != CL_SUCCESS )
  {
      /* create error and debug function*/
      cout &lt;&lt; " error detect platforms " &lt;&lt; endl &lt;&lt; endl ;
  }
  else
  {
      cout &lt;&lt; " we  detect " &lt;&lt; temp_num_platforms &lt;&lt; " platforms " &lt;&lt; endl &lt;&lt; endl ;
  
      _Platforms = std::unique_ptr &lt; PLATFORM [] &gt; ( new PLATFORM [temp_num_platforms] ) ;
  
      for ( unsigned int num_platforms = 1 ; num_platforms &lt;= temp_num_platforms ; num_platforms++ )
      {   
          // get platforms    
          error = clGetPlatformIDs (num_platforms ,&amp;_Platforms[num_platforms-1]._Platforms , NULL );
  
          if ( error != CL_SUCCESS || _Platforms[num_platforms-1]._Platforms == NULL )
          {
              cout &lt;&lt; " error get platform "  &lt;&lt;  num_platforms - 1 &lt;&lt; endl &lt;&lt; endl;
          }
          else
          {
              cout &lt;&lt; " OK ! we detect "&lt;&lt; num_platforms &lt;&lt; " platform " &lt;&lt; endl &lt;&lt; endl ;
          }
      }
  }
  
  if ( _Platforms[0]._Platforms == _Platforms[1]._Platforms )
  {
      cout &lt;&lt; " we have two platforms" &lt;&lt; endl &lt;&lt; endl ;
  }
  </code></pre>