Combining String Error

Can someone help me with this error?

//Combine Strings

void setup() {
Serial.begin(9600);

String name = "Tom";
int age = 24;
int gradYear = 2008;
String college = "South Dakota State";
String degree = "biology";

String aboutMe = "Hello my name is " + name + " and I'm " + age + " years old.";

//ERROR: Invalid operands of types 'const char' and const char [14] to binary 'operator+'
** String education = "In " + gradYear + ", I attended " + college + " to pursue a degree in " + degree + ".";**

Serial.print(aboutMe);
Serial.println(education);
}

void loop() {

}

How do you propose to add a string and an int? Should the result be a long? Or maybe a float?

The + operator is addition.

See : WString.h

friend StringSumHelper & operator + (const StringSumHelper &lhs, int num);

The problem is probably a bug

This works :

String education = "In ";
education+=gradYear;
education+=", I attended " + college + " to pursue a degree in " + degree + ".";

and prints : "In 2008, I attended South Dakota State to pursue a degree in biology."

the first concatenation (aboutme) works fine and prints "Hello my name is Tom and I'm 24 years old."

The problem is probably a bug

Yeah, in OP's code. Not in the String class. None of the operands are Strings, so your assumption that plus means concatenate is wrong.