X-Git-Url: http://demsky.eecs.uci.edu/git/?a=blobdiff_plain;f=lib%2FAsmParser%2FParser.cpp;h=0111ea35df1d3e2c775fafa7268fddaae0717f43;hb=6bc2dc7b2c8de6f871479be14f8f6f372ff6d60a;hp=7af313348d29b1bb9412ef06980636f791772aa1;hpb=7e70829632f82de15db187845666aaca6e04b792;p=oota-llvm.git diff --git a/lib/AsmParser/Parser.cpp b/lib/AsmParser/Parser.cpp index 7af313348d2..0111ea35df1 100644 --- a/lib/AsmParser/Parser.cpp +++ b/lib/AsmParser/Parser.cpp @@ -1,18 +1,24 @@ //===- Parser.cpp - Main dispatch module for the Parser library -------------=== // +// The LLVM Compiler Infrastructure +// +// This file was developed by the LLVM research group and is distributed under +// the University of Illinois Open Source License. See LICENSE.TXT for details. +// +//===----------------------------------------------------------------------===// +// // This library implements the functionality defined in llvm/assembly/parser.h // //===------------------------------------------------------------------------=== -#include "llvm/Analysis/Verifier.h" -#include "llvm/Module.h" #include "ParserInternals.h" -using std::string; +#include "llvm/Module.h" +using namespace llvm; -// The useful interface defined by this file... Parse an ascii file, and return +// The useful interface defined by this file... Parse an ASCII file, and return // the internal representation in a nice slice'n'dice'able representation. // -Module *ParseAssemblyFile(const string &Filename) { // throw (ParseException) +Module *llvm::ParseAssemblyFile(const std::string &Filename) { FILE *F = stdin; if (Filename != "-") { @@ -33,12 +39,6 @@ Module *ParseAssemblyFile(const string &Filename) { // throw (ParseException) if (F != stdin) fclose(F); - if (Result) { // Check to see that it is valid... - if (verifyModule(*Result)) { - delete Result; - throw ParseException(Filename, "Source file is not well formed LLVM!"); - } - } return Result; } @@ -48,35 +48,37 @@ Module *ParseAssemblyFile(const string &Filename) { // throw (ParseException) //===------------------------------------------------------------------------=== -ParseException::ParseException(const string &filename, const string &message, - int lineNo, int colNo) +ParseException::ParseException(const std::string &filename, + const std::string &message, + int lineNo, int colNo) : Filename(filename), Message(message) { LineNo = lineNo; ColumnNo = colNo; } -ParseException::ParseException(const ParseException &E) +ParseException::ParseException(const ParseException &E) : Filename(E.Filename), Message(E.Message) { LineNo = E.LineNo; ColumnNo = E.ColumnNo; } -const string ParseException::getMessage() const { // Includes info from options - string Result; +// Includes info from options +const std::string ParseException::getMessage() const { + std::string Result; char Buffer[10]; - if (Filename == "-") + if (Filename == "-") Result += ""; else Result += Filename; if (LineNo != -1) { sprintf(Buffer, "%d", LineNo); - Result += string(":") + Buffer; + Result += std::string(":") + Buffer; if (ColumnNo != -1) { sprintf(Buffer, "%d", ColumnNo); - Result += string(",") + Buffer; + Result += std::string(",") + Buffer; } } - + return Result + ": " + Message; }