user867: The command line that my toolchain (CLion + PlatformIO) uses to program my Arduino (Uno) includes includes
avrdude ... -c arduino ...

but the documentation for this programmer simply reads

-c programmer-id
           ...
          arduino           Arduino
           ...   

What does the arduino programmer do. Does it just correspond to using the bootloader?

user6628: Yes, the -c option specifies the methods of interacting with the device's loader.
The source code of the arduino programmer is http://svn.savannah.nongnu.org/viewvc/trunk/avrdude/arduino.c?root=avrdude&view=markup 
Specifically, '-c arduino' chooses the client side code tailored to the bootloader in the Arduino Uno.  Looking at the code in the above link, it tweaks the DTR and RTS lines to get the Ardunino into an stk500 compatible mode, and then invokes the stk500 protocol. 

867: <p>The command line that my toolchain (<a href="https://www.jetbrains.com/clion/" rel="nofollow">CLion</a> + <a href="http://platformio.org/#!/" rel="nofollow">PlatformIO</a>) uses to program my Arduino (Uno) includes includes</p>

<pre><code>avrdude ... -c arduino ...
</code></pre>

<p>but <a href="http://www.nongnu.org/avrdude/user-manual/avrdude_4.html" rel="nofollow">the documentation</a> for this programmer simply reads</p>

<blockquote>
  <p>-c programmer-id<br>
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ...<br>
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;arduino&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;Arduino<br>
  &nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp;&nbsp; ...   </p>
</blockquote>

<p>What does the <code>arduino</code> programmer do. Does it just correspond to using the bootloader?</p>
 6628: <p>Yes, the -c option specifies the methods of interacting with the device's loader.</p>

<p>The source code of the arduino programmer is <a href="http://svn.savannah.nongnu.org/viewvc/trunk/avrdude/arduino.c?root=avrdude&amp;view=markup" rel="nofollow">http://svn.savannah.nongnu.org/viewvc/trunk/avrdude/arduino.c?root=avrdude&amp;view=markup</a> </p>

<p>Specifically, '-c arduino' chooses the client side code tailored to the bootloader in the Arduino Uno.  Looking at the code in the above link, it tweaks the DTR and RTS lines to get the Ardunino into an stk500 compatible mode, and then invokes the stk500 protocol. </p>
