Commit Graph

601 Commits

Author SHA1 Message Date
Christian
6dcb545cc8 Support empty strings. 2014-12-11 14:19:11 +01:00
Christian
1a76615a87 Tests for empty and too long strings. 2014-12-10 17:15:10 +01:00
Christian
bf8ea705b8 String types. 2014-12-10 16:30:20 +01:00
chriseth
93722eab8a Merge pull request #582 from chriseth/sol_varSizeVariables
Variably sized elements on the stack
2014-12-10 14:49:12 +01:00
Christian
125e39dd01 Variable-size stack elements for expression compiler. 2014-12-08 22:26:22 +01:00
Christian
7be59036e5 Register variably-sized variables on stack. 2014-12-08 16:56:41 +01:00
subtly
8aba43c5e0 Merge branch 'develop' into network 2014-12-08 14:44:07 +01:00
subtly
6475a4ffb6 cryptopp crash w/null plaintext passed to decrypt 2014-12-08 14:41:04 +01:00
Christian
a78aff544c Calling functions of other contracts. 2014-12-08 12:39:29 +01:00
Christian
3bc5e142dd Merge remote-tracking branch 'ethereum/develop' into sol_import
Conflicts:
	libsolidity/CompilerStack.cpp
	libsolidity/CompilerStack.h
	libsolidity/InterfaceHandler.cpp
	libsolidity/InterfaceHandler.h
	solc/main.cpp
	test/solidityJSONInterfaceTest.cpp
	test/solidityNatspecJSON.cpp
2014-12-08 12:07:17 +01:00
Christian
8635399597 Comments and braces. 2014-12-07 09:46:21 +01:00
CJentzsch
fe790a3221 Merge remote-tracking branch 'upstream/develop' into stateLogTests 2014-12-06 23:15:30 +01:00
Gav Wood
097642fc46 Merge pull request #568 from CJentzsch/newTests
fix vm overflow
2014-12-06 12:26:27 +01:00
CJentzsch
16cffb8094 fix stackoverflow in calldataload, codecopy, extcodecopy + some tests 2014-12-05 20:11:34 +01:00
CJentzsch
9101b7073a state log tests 2014-12-05 19:26:32 +01:00
Lefteris Karapetsas
9eee435bf4 Replacing old cstyle enums with c++11 enums in natspec 2014-12-05 15:50:39 +01:00
Christian
8e96de4f9c Merge remote-tracking branch 'ethereum/develop' into sol_import
Conflicts:
	libsolidity/CompilerStack.cpp
	libsolidity/CompilerStack.h
	solc/main.cpp
2014-12-05 15:27:07 +01:00
Lefteris Karapetsas
80ad715764 Stack compiler now correctly returns a string and not a pointer 2014-12-05 12:41:32 +01:00
Lefteris Karapetsas
0c24dc096e Newline right after doctag is now a valid natspec entry
- Plus tests for that
2014-12-05 12:27:18 +01:00
Lefteris Karapetsas
54f353da10 Using iterators in Natspec comment parsing
- Used iterators in the entirety of the InterfaceHandler natspec comment
  parsing pipeline

- Fixed issue where @param continuing in new line would not get a space
2014-12-05 02:10:54 +01:00
Lefteris Karapetsas
b6c8e9e011 Natspec @return tag parsing
- Also omitting tags from the output JSON file if they are missing
  instead of providing an empty string for their value
2014-12-04 18:12:52 +01:00
CJentzsch
b7601aee9f fix stackoverflow in calldataload, codecopy, extcodecopy + some tests 2014-12-04 17:55:04 +01:00
Lefteris Karapetsas
c7e67ee59e Merge branch 'develop' into natspec_export_json 2014-12-04 17:28:46 +01:00
Lefteris Karapetsas
e3a1ef66e2 Natspec parsing @param doctags
- Plus additional work on generally parsing doctags.
  One important missing feature is to parse a tag midline

- Adding more tests
2014-12-04 17:19:47 +01:00
Lefteris Karapetsas
75d0b8e0b6 Parsing notice and dev doxytags.
- Only initial work done. Still need to refine the logic and
  incorporate all the other types of tags.

- Added/Modified some tests

- Work in progress
2014-12-04 09:42:38 +01:00
Christian
69da6df77d Improved external interface for multi-source and multi-contract compilation. 2014-12-03 18:52:28 +01:00
Christian
445ba10d3b Multi-source and multi-contract compiler. 2014-12-03 18:51:59 +01:00
Lefteris Karapetsas
4eefbc941e Moving all Interface and Documentation functionality to own class
- Creating the Interface Handler class which will take care of the
  parsing of Natspec comments and of interfacing with and outputing to
  JSON files.

- Will also handle the ABI interface creation
2014-12-03 16:40:37 +01:00
Lefteris Karapetsas
2f7b263f9b Separate user and dev natspec documentation
- plus other small changes according to the spec
2014-12-03 13:50:04 +01:00
Gav Wood
3c8a45cec4 Merge pull request #555 from CJentzsch/newTests
test update due to CALLCODE <-> RETURN
2014-12-03 12:09:50 +01:00
Christian
5b6a211b8a Import directive. 2014-12-03 10:44:46 +01:00
Gav Wood
e7201a0324 Merge pull request #549 from chriseth/sol_saveScope
Disallow assignments to structs and mappings
2014-12-03 10:15:11 +01:00
CJentzsch
8afb0256a7 test update due to CALLCODA <-> RETURN 2014-12-03 08:36:52 +01:00
Gav Wood
2f5b9151d5 Merge branch 'develop' of github.com:ethereum/cpp-ethereum into develop
Conflicts:
	test/vm.cpp
2014-12-02 20:09:00 +01:00
Gav Wood
8d0a664740 PV46. Minor protocol alterations. 2014-12-02 17:13:17 +01:00
Lefteris Karapetsas
92724ab80a More Natspec JSON export tests and better error reporting 2014-12-02 10:41:18 +01:00
CJentzsch
fb7c3bb302 style
Conflicts:
	libevm/VM.h
2014-12-01 22:44:31 +01:00
CJentzsch
057553a0a0 updated createRandomTest to correct exception behavior 2014-12-01 22:41:16 +01:00
CJentzsch
d952833c1b added logs to state tests 2014-12-01 22:41:16 +01:00
Lefteris Karapetsas
bbf4beab45 Using jsoncpp for exporting ABI interface from solidity
- Also changing the interface JSON test to have a shorter name
  plus to provide meaningful error message in case of failure
2014-12-01 18:01:42 +01:00
Christian
5cecf5699b Disallow assignments to structs and mappings. 2014-12-01 17:33:21 +01:00
Lefteris Karapetsas
6b7bec980a Exporting Natspec documentation to a JSON interface
- Adding a getDocumentation() function to solidity compiler stack
  so that we can obtain the natspec interface for a contract

- Adding libjsoncpp as a dependency of libsolidity. This is done
  in a dirty way, using libjsonrpc-cpp s an intermediate dependency
  for the moment. Will fix soon.

- Start of a test file for Natspec exporting to JSON
2014-12-01 17:03:04 +01:00
Lefteris Karapetsas
366514a725 Adding natspec comment test being between keyword and signature 2014-11-30 23:33:04 +01:00
Lefteris Karapetsas
9e80ec9e7a Solidity natspec docstring test improvements
- Adding a test for docstring being between function signature and
  function body

- Properly checking for exceptions in parsing

- Small parser fix
2014-11-28 11:17:18 +01:00
Lefteris Karapetsas
263e1be34e Solidity FunctionDefinition used ASTString shared ptr for docstrings 2014-11-28 01:26:37 +01:00
Lefteris Karapetsas
c8fa23735f Adding solidity natspec comment inside function body 2014-11-28 00:40:00 +01:00
Lefteris Karapetsas
2b30e1ef2c Fixing multiline comment parsing in solidity 2014-11-28 00:06:38 +01:00
Lefteris Karapetsas
de5ca561f8 Solidity work for documentation strings
- Still a work in progress

- Parser now properly gets each function's doc comment

- Small changes in the scanner

- Multiline comments are considered
2014-11-27 18:57:50 +01:00
Lefteris Karapetsas
ce7bbca1e5 Solidity function AST nodes get documentation attribute 2014-11-27 15:21:22 +01:00
Christian
0cd1e76553 Global functions. 2014-11-26 15:42:54 +01:00