The Realmccoy
The Realmccoy

Reputation: 329

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

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 

Upvotes: 21

Views: 34302

Answers (2)

Paul Annesley
Paul Annesley

Reputation: 3397

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).

Upvotes: 27

sepp2k
sepp2k

Reputation: 370102

The error message means that the ruby parser encountered a constant (i.e. an identifier starting with a capital letter) where it did not expect one (specifically the parser expected the file to end at that point).

Since the code you've shown does not even contain a constant, the problem is likely caused by another part of your code.

Upvotes: 6

Related Questions