puts "==================================================="
puts " 0031685: Data Exchange, STEPCAFControl_Reader - NULL dereference on translating PLACED_DATUM_TARGET_FEATURE "
puts "==================================================="
puts ""

pload OCAF

# Read file
ReadStep D [locate_data_file bug31685_2.stp] 
XGetOneShape res D

# Checking
checkshape res f
set dump [XDumpNbDGTs D f]
set info "

 NbOfDimensions          : 52
  NbOfDimensionalSize    : 17
  NbOfDimensionalLocation: 4
  NbOfAngular            : 0
  NbOfWithPath           : 0
  NbOfCommonLabels       : 1
 NbOfTolerances          : 26
  NbOfGTWithModifiers    : 3
  NbOfGTWithMaxTolerance : 0
  NbOfGTWithDatums       : 23
 NbOfDatumFeature        : 16
 NbOfAttachedDatum       : 72
 NbOfDatumTarget         : 1
"
set isOK 1;
set nb_ref [llength $dump]
for { set i 0 } { $i < $nb_ref } { incr i } {
  set refstr [lindex $info $i]
  set curstr [lindex $dump $i]
  if {[string equal $refstr $curstr] == 0} {
    set isOK 0
  }
}
if {$isOK == 0} {
  puts "Error: wrong translate DGT"
}

Close D