diff options
author | Eric Christopher <echristo@apple.com> | 2011-04-12 00:18:03 +0000 |
---|---|---|
committer | Eric Christopher <echristo@apple.com> | 2011-04-12 00:18:03 +0000 |
commit | 05f9e4e8bd2347826c50ec391ea4ec8caffe45ef (patch) | |
tree | 62b08339d56ff32127fe591771b42e13ce196bd9 | |
parent | e77f72d7d236cabee6ce154ade0f5c666ecaaaca (diff) |
Match case for invalid constant error messages and add a new
test for invalid hexadecimals.
git-svn-id: https://llvm.org/svn/llvm-project/llvm/trunk@129326 91177308-0d34-0410-b5e6-96231b3b80d8
-rw-r--r-- | lib/MC/MCParser/AsmLexer.cpp | 10 | ||||
-rw-r--r-- | test/MC/AsmParser/exprs-invalid.s | 5 |
2 files changed, 9 insertions, 6 deletions
diff --git a/lib/MC/MCParser/AsmLexer.cpp b/lib/MC/MCParser/AsmLexer.cpp index 0fa782b1d9..a3d3a492ec 100644 --- a/lib/MC/MCParser/AsmLexer.cpp +++ b/lib/MC/MCParser/AsmLexer.cpp @@ -213,13 +213,13 @@ AsmToken AsmLexer::LexDigit() { // Requires at least one binary digit. if (CurPtr == NumStart) - return ReturnError(TokStart, "Invalid binary number"); + return ReturnError(TokStart, "invalid binary number"); StringRef Result(TokStart, CurPtr - TokStart); long long Value; if (Result.substr(2).getAsInteger(2, Value)) - return ReturnError(TokStart, "Invalid binary number"); + return ReturnError(TokStart, "invalid binary number"); // The darwin/x86 (and x86-64) assembler accepts and ignores ULL and LL // suffixes on integer literals. @@ -236,11 +236,11 @@ AsmToken AsmLexer::LexDigit() { // Requires at least one hex digit. if (CurPtr == NumStart) - return ReturnError(CurPtr-2, "Invalid hexadecimal number"); + return ReturnError(CurPtr-2, "invalid hexadecimal number"); unsigned long long Result; if (StringRef(TokStart, CurPtr - TokStart).getAsInteger(0, Result)) - return ReturnError(TokStart, "Invalid hexadecimal number"); + return ReturnError(TokStart, "invalid hexadecimal number"); // The darwin/x86 (and x86-64) assembler accepts and ignores ULL and LL // suffixes on integer literals. @@ -257,7 +257,7 @@ AsmToken AsmLexer::LexDigit() { StringRef Result(TokStart, CurPtr - TokStart); long long Value; if (Result.getAsInteger(8, Value)) - return ReturnError(TokStart, "Invalid octal number"); + return ReturnError(TokStart, "invalid octal number"); // The darwin/x86 (and x86-64) assembler accepts and ignores ULL and LL // suffixes on integer literals. diff --git a/test/MC/AsmParser/exprs-invalid.s b/test/MC/AsmParser/exprs-invalid.s index 5baa9dd4c3..dc27d8043f 100644 --- a/test/MC/AsmParser/exprs-invalid.s +++ b/test/MC/AsmParser/exprs-invalid.s @@ -1,5 +1,8 @@ // RUN: not llvm-mc -triple x86_64-apple-darwin10 %s 2> %t.err | FileCheck %s // RUN: FileCheck --check-prefix=CHECK-ERRORS %s < %t.err // CHECK: .section __TEXT,__text,regular,pure_instructions -// CHECK-ERRORS: error: Invalid octal number +// CHECK-ERRORS: error: invalid octal number .long 80+08 + +// CHECK-ERRORS: error: invalid hexadecimal number +.long 80+0xzz |