Commit Graph

271 Commits

Author SHA1 Message Date
Lefteris Karapetsas
184ddca5a1 Compiler EVM generation now takes into account for the new function hash
identifier

- Changed tests to comply with the new function hash identifier
- Changed the function index offset to 4, and made it a constant for
  easy adjustment in the future
2015-01-08 17:18:31 +01:00
Lefteris Karapetsas
68b9427535 work in progress in testing the new function selector in the end to end tests 2015-01-08 00:19:19 +01:00
Lefteris Karapetsas
c55608f94b Solidity getInterfaceFunctions is now a map of hash to Function
- Also introduced dependency between libsolidity and libdevcrypto

- Compler's appendFunctionSelector now has a first version of using
  function signature hash instead of index
2015-01-07 16:39:21 +01:00
Lefteris Karapetsas
df0dce584d Small issues with Canonical Function Signature
- Also added an extra test
2015-01-07 10:45:59 +01:00
Lefteris Karapetsas
24d7bdd3a9 FunctionType also gets CanonicalSignature
- also using iterators in the signature creation function
2015-01-07 02:27:05 +01:00
Lefteris Karapetsas
b2aa3baded Test for the Canonical Signature of a function 2015-01-07 02:07:34 +01:00
Lefteris Karapetsas
5e875ee072 Creating the canonical signature of a function, for later use in the ABI 2015-01-06 17:42:38 +01:00
Lefteris Karapetsas
ca733fd319 style: curlies 2015-01-05 16:55:17 +01:00
Lefteris Karapetsas
b4712773d3 Fix for sol scanner where empty multiline comment became Natspec comment 2015-01-05 16:37:43 +01:00
Gav Wood
7b3f0e549d Mac warning fix. 2015-01-05 15:33:05 +01:00
Gav Wood
546717027f BLOCKHASH 2015-01-05 11:35:56 +00:00
Gav Wood
566b980fa3 Fixed #683 2014-12-21 16:28:46 +01:00
chriseth
8e3fbbad44 Merge pull request #664 from chriseth/sol_fix_compoundAssign
Bugfix: Additional swap for compound assignment.
2014-12-19 11:38:45 +01:00
Lefteris Karapetsas
d612bf1d17 Adding const attribute to ABI output 2014-12-19 10:48:59 +01:00
chriseth
59835e9df1 Merge pull request #655 from chriseth/sol_precedence
Bit operators should bind more strongly than comparison operators.
2014-12-18 22:24:44 +01:00
Christian
8dbe13f840 Bugfix: Additional swap for compound assignment. 2014-12-18 22:23:34 +01:00
Lefteris Karapetsas
1da53d1681 Factoring forward slash scanning out to its own function 2014-12-18 17:30:10 +01:00
Christian
b0037eddfd Bit operators should bind more strongly than comparison operators. 2014-12-18 17:19:42 +01:00
Lefteris Karapetsas
0cdacde3b9 Merge branch 'develop' into sol_natspecMultiline 2014-12-18 16:49:56 +01:00
Lefteris Karapetsas
e6e5d5ea24 More multiline natspec tests and small issue fix 2014-12-18 16:48:25 +01:00
Lefteris Karapetsas
d97bdba471 Adressing some natspec issues 2014-12-18 16:27:17 +01:00
Lefteris Karapetsas
a6b0fba227 Changes in InterfaceHandler to deal with multiline natspec
- Also now Solidity scanner considers Carriage Return as whitespace
- Tests for Natspec generation with the new multiline comments
2014-12-18 15:03:45 +01:00
Lefteris Karapetsas
f73278c8b2 Scanner properly scans multiline natspec comments
- Single and multiline natspect comments get the initial whitespace
  skipped now

- Some rules introduced for the multiline comments. If first line is
  empty then no newline is added to the literal. Same thing with the
  last line. Finally in all lines initial '*' are skipped
2014-12-18 15:03:45 +01:00
Lefteris Karapetsas
d3234c51b9 Work in progress for /** ... */ natspec comments
- Work in progress on the scanner for recognizing the second
      type of doxygen comments for Natspec.
2014-12-18 15:03:45 +01:00
Christian
f744c34ccc Possibility to replace source and obtain ContractDefinition by name. 2014-12-18 14:39:16 +01:00
Christian
a98afc8eaa Return the last contract by default. 2014-12-17 18:37:06 +01:00
Christian
5a1a83ff42 Assertions that throw InternalCompilerErrors. 2014-12-17 16:24:56 +01:00
chriseth
3d98ec1323 Merge pull request #623 from chriseth/sol_constructorChecks
Checks for the constructor and ability to call functions
2014-12-17 15:18:49 +01:00
Christian
1d1e612835 Whitespace change. 2014-12-17 15:15:04 +01:00
Gav Wood
cb43022d7a Merge pull request #636 from chriseth/sol_fix_foreignFunctions
Fix: Resolve function types of all contracts before checking types inside functions.
2014-12-17 13:49:31 +01:00
Lefteris Karapetsas
aa83d5ea3c Moving comment to function body 2014-12-17 00:28:26 +01:00
Lefteris Karapetsas
5c05b8d725 Solidity ForStatement Compiler part
- Work in progress
2014-12-17 00:03:30 +01:00
Lefteris Karapetsas
adbea47596 Minor issues, grammar update, new ForStatement test 2014-12-17 00:03:30 +01:00
Lefteris Karapetsas
062b51e7bd ForStatement typecheck and initExpression is a Statement 2014-12-17 00:03:30 +01:00
Lefteris Karapetsas
90e39c04d6 Solidity ForStatements expressions are now optional 2014-12-17 00:03:30 +01:00
Lefteris Karapetsas
3f2600bb31 new ForStatement parsing test and small grammar fix 2014-12-17 00:03:30 +01:00
Lefteris Karapetsas
f7029726be Adding a ForStatement solidity AST Node.
- Adding ForStatement node
- Implemented Parsing for ForStatement
- A simple parsing test for the ForStatement
- Work in progress
2014-12-17 00:03:30 +01:00
Christian
b2e3771598 Add functions needed by constructor. 2014-12-16 23:49:45 +01:00
Christian
147e77b61f Fix: Resolve function types of all contracts before checking types inside functions. 2014-12-16 23:49:02 +01:00
Christian
5b802b685e Stylistic changes. 2014-12-16 16:15:34 +01:00
Christian
c40725c22a Check that constructor does not have "returns" directive. 2014-12-15 16:09:50 +01:00
Christian
40f7c32e57 Packing and unpacking of constructor arguments. 2014-12-15 13:05:18 +01:00
Christian
2f64c56ef3 Create contracts. 2014-12-15 13:05:18 +01:00
Christian
c858699605 Merge remote-tracking branch 'ethereum/develop' into sol_barecalls 2014-12-15 10:21:49 +01:00
Christian
739192ae65 Correctly check for string prefix plus indentation change. 2014-12-15 01:02:33 +01:00
sveneh
000e46cb24 Merge branch 'develop' of https://github.com/ethereum/cpp-ethereum into build_enhancement
Conflicts:
	windows/LibEthereum.vcxproj
	windows/LibEthereum.vcxproj.filters

Solved by removing files (not necessary anymore)
2014-12-12 23:42:28 +01:00
Christian
c0bba438b1 Calls to bare contracts. 2014-12-12 17:26:19 +01:00
Christian
6893d4d455 Merge remote-tracking branch 'ethereum/develop' into sol_swapConstants
Conflicts:
	test/solidityOptimizerTest.cpp
2014-12-12 17:22:45 +01:00
chriseth
3860814fa0 Merge pull request #584 from chriseth/sol_strings
String types.
2014-12-12 17:14:43 +01:00
Christian
e2547526ab Do not add at the end of the function selector "loop". 2014-12-11 17:48:44 +01:00