What is "Syntax Error, unexpected tCONSTANT" error in Ruby?

The Realmccoy picture The Realmccoy · Sep 6, 2011 · Viewed 31.3k times · Source

I am currently on Lesson 9 in "Learn Ruby the hard way".

I have typed the the line number 6 exactly as the way its being instructed but still I am getting error while executing.

It says:

Syntax error, unexpected tCONSTANT, expecting $end
puts " Here ^ are the days : ", days 

Answer

Paul Annesley picture Paul Annesley · Sep 6, 2011

You have forgotten to close a string on a previous line. Here's the problem reproduced:

paul@paulbookpro ~ ⸩ ruby     
days = "abc
puts "Here are the days"
-:2: syntax error, unexpected tCONSTANT, expecting $end
puts "Here are the days"
          ^

It's treating the double-quote before the word "Here" as the closing quote of the string on the previous line, and then wondering why you're using a constant called Here (token beginning with upper case letter).