Commit Graph

219 Commits

Author SHA1 Message Date
chriseth
67c855c583 Merge pull request #356 from guanqun/break-not-in-loop
check whether break/continue is in the loop
2016-01-20 19:23:23 +01:00
Lu Guanqun
df728581ce add another test case for continue not in loop 2016-01-19 03:24:58 +00:00
chriseth
02340e8464 Merge pull request #358 from chriseth/fix_storage
Test for incorrect storage access.
2016-01-18 14:16:44 +01:00
chriseth
0099513cd4 Merge pull request #347 from chriseth/libraryNameClashes
Detect library name clashes
2016-01-18 09:24:11 +01:00
Liana Husikyan
7e511f93af Update SolidityNameAndTypeResolution.cpp 2016-01-15 18:03:51 +01:00
Liana Husikyan
738b254001 Update SolidityNameAndTypeResolution.cpp 2016-01-15 17:41:56 +01:00
LianaHus
b2daa5a9d8 fixed assert on EI creation for structs containing only mapping or arrays 2016-01-15 17:36:06 +01:00
chriseth
a88835bbce Test for incorrect storage access. 2016-01-15 17:02:37 +01:00
Lu Guanqun
e130bc7e7c check whether break/continue is in the loop 2016-01-15 15:12:23 +08:00
chriseth
1cf6acca90 Tests for library name clashes. 2016-01-14 11:36:11 +01:00
chriseth
d2f18c73f7 Merge pull request #346 from chriseth/importAliases
Allow aliases during import.
2016-01-13 17:29:34 +01:00
RJ Catalano
c45593a444 clarification on dynamic arrays, switcheroo on typepointer, and a documentation test added 2016-01-11 23:41:20 -06:00
RJ Catalano
9c29cf79cf added documentation and one last test for struct creation inline 2016-01-11 15:36:30 -06:00
RJ Catalano
ac664e7f86 final changes to typechecker, the expression compiler, and a couple more tests for good measure 2016-01-11 14:25:59 -06:00
chriseth
f20a604c5a Allow aliases during import. 2016-01-11 13:56:02 +01:00
RJ Catalano
c7df6d0310 one last test for long strings 2016-01-11 00:48:02 -06:00
RJ
c348791fa1 Update SolidityNameAndTypeResolution.cpp 2016-01-10 21:55:30 -06:00
RJ
5a3b40f802 Update SolidityEndToEndTest.cpp 2016-01-10 21:36:47 -06:00
RJ
d751b9085c Update SolidityEndToEndTest.cpp 2016-01-10 01:12:52 -06:00
RJ
10a1c352b9 Update with type resolution tests for arrays 2016-01-10 01:07:02 -06:00
chriseth
b158e48c1a Merge pull request #338 from guanqun/add_paren
support syntax "(x) = 3"
2016-01-05 13:15:29 +01:00
chriseth
e27bfa023d Merge pull request #317 from chriseth/pathsEverywhere
Use paths instead of simple identifiers wherever possible.
2016-01-04 11:47:11 +01:00
Lu Guanqun
208429644d add a test case for decayed tuple expression as left value 2016-01-04 16:11:43 +08:00
chriseth
0e2fa39fad Use paths instead of simple identifiers wherever possible. 2015-12-21 18:44:21 +01:00
chriseth
2466fb68a0 Merge pull request #308 from chriseth/fixoverloadbug
Fix bug preventing overloads of different array types.
2015-12-21 15:37:51 +01:00
chriseth
54e3637d23 Add structs and enums to contract types. 2015-12-18 16:50:14 +01:00
chriseth
79c5d032fe Fix bug preventing overloads of different array types. 2015-12-18 13:56:37 +01:00
chriseth
603dc58040 Simple aliasing during import. 2015-12-18 12:46:56 +01:00
chriseth
d3c459b5a9 Parse complex import directives. 2015-12-18 12:46:54 +01:00
RJ Catalano
905d55e34f updated tests and much simpler algorithm for parsing errors 2015-12-16 16:47:37 -06:00
RJ Catalano
fe04d7f7f7 added one more test and realized that there was one last change before the parser is perfect 2015-12-16 14:50:40 -06:00
RJ Catalano
f7a1860abd forgot about this one...again making this purely about parsing...typechecking will come another day 2015-12-16 13:35:28 -06:00
RJ Catalano
df41812442 making this purely about parsing...type checking will go in a different PR 2015-12-16 13:23:05 -06:00
RJ Catalano
0ba24a5289 changed a couple of small nuances, made an attempt at fixing the parsing in the inline arrays case (fails), and added test for inline arrays per Chriseth request 2015-12-16 12:55:52 -06:00
RJ Catalano
9ab066de8c new tests 2015-12-15 14:47:09 -06:00
RJ Catalano
42c4339404 updated attempt, a couple of more things to sort through and change 2015-12-15 10:57:57 -06:00
chriseth
f8228e8ab1 Relative paths in import directives. 2015-12-09 19:21:02 +01:00
chriseth
7cb7818cea Source units are independent scopes. 2015-12-09 19:09:24 +01:00
Bob Summerwill
942666bce9 Fix a "Solidity::solidity" dependency edge in the CMake file for soltest, which got missed in the previous PR.
This change resolves an inconsistency which was discovered in the automated dependency graph generation.
softest was being declared as dependent on the Solidity module, not on just libsolidity, as it should be.
2015-12-05 19:15:53 -08:00
chriseth
8342424815 Increment version to 0.2.0 (includes breaking changes). 2015-12-01 16:06:14 +01:00
chriseth
7f415da886 Code generation for calling bound methods. 2015-12-01 12:35:34 +01:00
chriseth
e9c7837c15 Merge pull request #251 from chriseth/bind2
Bind library functions to types.
2015-11-30 16:06:44 +01:00
chriseth
a8736b7b27 Merge pull request #256 from chriseth/selfdestruct
Introduce selfdestruct alias for suicide.
2015-11-30 16:06:18 +01:00
chriseth
6796afc2f8 Bugfix for constructor unpacking with fixed-size arrays. 2015-11-29 01:03:39 +01:00
chriseth
f9e52c9db1 Also check the object type for bound functions. 2015-11-29 00:16:07 +01:00
chriseth
93b3237c6a Add bound functions to types. 2015-11-29 00:16:07 +01:00
chriseth
b97bb086de Introduce selfdestruct alias for suicide. 2015-11-29 00:10:07 +01:00
chriseth
d71cd3aa2b Added the using x for y directive. 2015-11-26 17:49:39 +01:00
chriseth
2e4f4e3363 Fix smart pointer lifetime issue in tests. 2015-11-26 15:37:55 +01:00
chriseth
b47d593252 Do not store elements of a contract by AST node type. 2015-11-26 15:37:55 +01:00
chriseth
879844dd0a Code generation for creating arrays. 2015-11-26 13:10:12 +01:00
chriseth
bf55aa6ae2 Type checking for creating new arrays. 2015-11-26 13:10:12 +01:00
chriseth
30b325fdc1 Allow "new expressions" also for general type names.
Breaking change: If you want to send value with a contract creation, you
have to use parentheses now:

`(new ContractName).value(2 ether)(arg1, arg2)`
2015-11-26 13:10:12 +01:00
chriseth
588e4232eb Test for allocation bug. 2015-11-24 14:54:18 +01:00
Gav Wood
2554d6104a Merge pull request #236 from ethereum/hot_gav
Fix up for new API from EIP-1.1.
2015-11-23 12:42:28 +01:00
Gav Wood
bff172cf65 Fix up for new API from EIP-1.1. 2015-11-21 14:34:21 +01:00
Gav Wood
58110b27c1 Merge remote-tracking branch 'origin/hot_gav' into develop 2015-11-20 00:06:58 +01:00
Gav Wood
9997aac163 Fix solidity tests. 2015-11-20 00:06:02 +01:00
chriseth
8dfc964e7d Merge pull request #227 from chriseth/addmod
Addmod and mulmod.
2015-11-19 13:16:13 +01:00
Gav Wood
3be0ae6e2c Merge pull request #204 from ethereum/hot_gav
The Big Refactor
2015-11-19 12:20:46 +01:00
chriseth
0cf8d022ae Addmod and mulmod. 2015-11-18 17:12:39 +01:00
chriseth
f4de369bad Merge pull request #218 from chriseth/fix_overwriteMemory
Fix memory overwrite problem for arrays.
2015-11-17 14:46:19 +01:00
chriseth
28c3f1839b Merge pull request #216 from chriseth/dynamic_indexed_event_args
Fix dynamic indexed event arguments - applies sha3.
2015-11-17 14:46:00 +01:00
chriseth
6411bf0026 Merge pull request #214 from chriseth/fix_optimizerTest
Test fix: Do not increment iterator past end.
2015-11-17 10:57:18 +01:00
Gav Wood
ad249e5787 Fix tests for new API. 2015-11-16 21:00:05 +01:00
chriseth
0c900f9b8a Fix memory overwrite problem for arrays. 2015-11-16 18:32:21 +01:00
chriseth
a35f91816b Fix dynamic indexed event arguments - applies sha3. 2015-11-16 17:09:09 +01:00
chriseth
8bd34ee2e9 Test fix: Do not increment iterator past end. 2015-11-16 16:39:47 +01:00
chriseth
9ef67bc756 Fix segfault during test. 2015-11-16 16:32:09 +01:00
chriseth
1bdc7eed31 Work around bug in MSVC/Boost for u256->unsigned conversion. 2015-11-16 11:47:19 +01:00
LianaHus
da47f9df7b style fixes 2015-11-06 20:56:14 +01:00
LianaHus
63060fc1f0 fixed test framework 2015-11-06 18:45:06 +01:00
Gav Wood
2f85153dcc Fixups for new API. 2015-11-06 14:23:18 +01:00
Gav Wood
a89fa99994 New vocab. 2015-11-06 13:26:20 +01:00
chriseth
a5c227778d Bugfix: Returning literal strings in tuples. 2015-10-31 23:13:45 +01:00
chriseth
b4f561680a Store docstrings in AST annotations. 2015-10-26 15:24:36 +01:00
Lefteris Karapetsas
a5a41e1f22 Allow building with new boost version 1.59 2015-10-24 23:11:01 +02:00
chriseth
e3dffb611f File reorganisation. 2015-10-21 00:46:01 +02:00
chriseth
87079bd3fd Correctly parse ambiguities like A.B[10] x and x.y[10] = 3. 2015-10-16 16:12:25 +02:00
chriseth
ead0478f26 Fix errors when struct array type is used on its own. 2015-10-16 14:36:30 +02:00
chriseth
1d4219d43d Some fixes taking other pull requests into account. 2015-10-15 18:14:14 +02:00
chriseth
029b819489 Wildcards. 2015-10-15 17:38:42 +02:00
chriseth
039b2a764f Destructuring assignments. 2015-10-15 17:38:42 +02:00
chriseth
7ebd536e79 Tuple expressions. 2015-10-15 17:38:42 +02:00
chriseth
7ba42f4707 Merge pull request #130 from LefterisJP/dynamic_array_push
Dynamic array push
2015-10-15 17:37:15 +02:00
LianaHus
292fb473bf renaming in test framework 2015-10-15 16:46:02 +02:00
LianaHus
162d021c3f some more style fixes 2015-10-15 16:27:26 +02:00
Lefteris Karapetsas
a823de2d58 push() for byte arrays also properly implemented 2015-10-15 14:37:11 +02:00
LianaHus
771f20b595 mainly style fixes/renaming 2015-10-15 14:36:23 +02:00
Lefteris Karapetsas
9224c1f712 Working implementation of arraypush
ByteArrayPush() gets a test but is ignored for now, since there are
still some issues with its implementation
2015-10-15 13:54:59 +02:00
LianaHus
0d0fd31fbf fix 2015-10-15 12:16:10 +02:00
LianaHus
675aed1edf fixed new tests 2015-10-15 11:50:25 +02:00
Lefteris Karapetsas
a521843f6b Implement Dynamic array push and fix test
Still a work in progress. There is a disturbance in the stack at the
moment and that's why there are some cout statements left for debugging.
2015-10-15 10:52:30 +02:00
Lefteris Karapetsas
763b544822 Add a dynamic array push() test 2015-10-15 10:52:30 +02:00
LianaHus
c3491e4469 errors instead of exceptions
Conflicts:
	libsolidity/CompilerStack.cpp
	libsolidity/NameAndTypeResolver.cpp
	libsolidity/NameAndTypeResolver.h
	libsolidity/TypeChecker.cpp
	test/libsolidity/SolidityNameAndTypeResolution.cpp
2015-10-14 20:37:41 +02:00
LianaHus
742e5b259a added Error class for all kind of errors
Conflicts:
	libsolidity/Exceptions.h
2015-10-14 20:27:41 +02:00
chriseth
72f7792f8e Some further test fixes. 2015-10-13 14:31:24 +02:00
chriseth
13d7bc4ee8 Some more tests and typos fixed. 2015-10-13 12:22:57 +02:00
chriseth
deebc7e860 Multi-variable declarations. 2015-10-13 12:16:23 +02:00
chriseth
a5d12b8761 Introduced tuple type and added multi variable declarations to type
checker.
2015-10-09 19:35:41 +02:00