Include file issue

Below is a simple sketch that illustrates IDE behavior of which I was unaware:

#include < avr/io.h>

void setup() {
  // put your setup code here, to run once:


void loop() {
  // put your main code here, to run repeatedly:


This code does not compile on 1.5.8 of the IDE. Note that there is a blank space before the header file name in the #include directive. Remove that space and it compiles without error. Is this non-space in an #include specified in the Standard, or an implementation artifact?

I would think that the compiler looks for all that is between the braces.
It's like the difference between "avr/io.h" and " avr/io.h", the space is part of the string.

I appears you're right, Henry. The docs I could find say everything between the brackets is treated as a string constant.