title: Is it possible to make Stata throw an error by default when a global macro is not defined, instead of a missing string?
body: <p>A feature of Stata that is sometimes inconvenient is that calling a non-defined macro returns the missing value <code>.</code> [<em>edit: Stata actually returns a missing string <code>""</code>, not a numerical missing value</em>], instead of throwing an error. 
  A piece of code, whose correct execution requires the definition of the macro, may just run giving incorrect results if the macro name is misspelled. </p>
  
  <p>E.g.: having defined 
  <code>global $options = , vce(robust)</code>, when 
  afterwards one writes <code>reg y x $opt</code>  instead of <code>reg y x $options</code> the program runs anyway and it may be difficult to realise that the <code>vce()</code> option was not considered.</p>
  
  <p>Is there any way to force Stata to issue an error in this case or is there some useful trick/best practice that can be used to reduce the risk of incurring  this sort of mistake?</p>