Deduplicate code for printing source locations

This commit is contained in:
Kamil Śliwak
2021-09-14 11:46:57 +02:00
parent 49cde9d47b
commit 37f681c430
3 changed files with 50 additions and 24 deletions
+10 -7
View File
@@ -22,9 +22,13 @@
#include <libsolutil/CommonIO.h>
#include <libyul/AsmPrinter.h>
using namespace std;
using namespace solidity::util;
using namespace solidity::langutil;
using namespace solidity::frontend;
using namespace solidity::util;
using namespace solidity::yul;
namespace solidity::frontend
{
@@ -131,12 +135,11 @@ string dispenseLocationComment(langutil::SourceLocation const& _location, IRGene
{
solAssert(_location.sourceName, "");
_context.markSourceUsed(*_location.sourceName);
return "/// @src "
+ to_string(_context.sourceIndices().at(*_location.sourceName))
+ ":"
+ to_string(_location.start)
+ ":"
+ to_string(_location.end);
return AsmPrinter::formatSourceLocationComment(
_location,
_context.sourceIndices(),
true /* _statement */
);
}
string dispenseLocationComment(ASTNode const& _node, IRGenerationContext& _context)