title: Can I prevent implicit conversion of an int typedef to int?
body: <p>I'd like the following to not compile.</p>
  
  <pre><code>typedef int relative_index_t;  // Define an int to only use for indexing.
  void function1(relative_index_t i) {
    // Do stuff.
  }
  
  relative_index_t y = 1; function1(y);  // I want this to build.
  int x = 1; function1(x);               // I want this to NOT build!
  </code></pre>
  
  <p>Is there any way to achieve this?</p>