chriseth
e6b6e27bd7
Some more tests.
2016-05-03 22:48:53 +02:00
chriseth
7ea3d950d7
Allow calling internal functions of libraries.
...
Internal functions of libraries can be called as if the library were a
base contract of the calling contract. As the calling convention for
internal functions is to not create a new call context, the code of
these functions will be pulled into the context of the caller,
duplicating their code. This might pull in code of further internal or
even private functions.
The use case for such functions is to allow libraries which can operate
on memory types such that these types can also be modified in place.
2016-05-03 22:41:18 +02:00
Bob Summerwill
7ba6c98e5f
Merge pull request #507 from chriseth/sealEngine
...
Explicitly init seal engine.
2016-04-15 15:06:32 -04:00
chriseth
d77a13878a
Explicitly init seal engine.
2016-04-15 20:16:07 +02:00
chriseth
c126ec84a3
Test for bug in static array constructor argument decoder.
2016-04-15 18:42:44 +02:00
chriseth
82175fbd2b
Test for bug when deleting dynamic array of structs.
2016-04-15 16:49:26 +02:00
Bob Summerwill
3ad5e821f2
Merge pull request #491 from winsvega/sealengines
...
sealengines throught init function
2016-04-12 10:33:59 -07:00
chriseth
6f54b13d7a
Remove log.h from solidity.
2016-04-12 01:03:46 +02:00
Dimitry
24120a726c
sealengines throught init function
2016-04-11 14:24:11 +04:00
chriseth
193b1c940c
Merge pull request #475 from chriseth/byteasm
...
Allow "byte" in inline assembly.
2016-04-06 16:40:20 +02:00
chriseth
26a91109a7
Allow "byte" in inline assembly.
2016-04-06 12:31:31 +02:00
Dimitry
d2cee6f9c6
reduce unnecessary solidity:: namespace
2016-04-04 15:41:35 +04:00
Dimitry
9816510065
enable solidity test
2016-04-04 15:18:24 +04:00
Bob Summerwill
c492d9be00
Merge pull request #470 from chriseth/redundancy
...
Remove code duplication in source references formatter.
2016-03-31 20:31:15 -03:00
chriseth
285fdf3b0a
Merge pull request #457 from VoR0220/tokenNameAndStringFix
...
Fix for Token::name and token::toString
2016-04-01 01:08:59 +02:00
chriseth
ea7325d2d2
Remove code duplication in source references formatter.
2016-04-01 00:54:12 +02:00
chriseth
98b686c672
Test to check we correctly clean higher order bits for index access.
2016-03-31 01:25:45 +02:00
VoR0220
427b9557d6
added solidity invalid fixed type test
2016-03-30 11:54:00 -05:00
chriseth
f049430723
Code generation (missing external access and source locations).
2016-03-30 02:37:00 +02:00
chriseth
949b00ed59
Parsing for inline assembly.
2016-03-30 02:37:00 +02:00
Bob Summerwill
a1ce66b304
Fixed Windows warnings
2016-03-18 01:22:15 -07:00
chriseth
1bf87c6c2b
Set version to 0.3.0
2016-03-11 17:52:24 +01:00
RJ Catalano
d0054a8d29
added keyword type and some tests, changes in lexical cast
2016-03-11 17:50:09 +01:00
chriseth
e5514becb8
BREAKING: Implement delegatecall and make default for library calls.
2016-03-11 17:49:32 +01:00
chriseth
3b9969baaa
Test for optimizer bug caused by not incrementing the sequence counter.
2016-03-11 16:14:48 +01:00
RJ Catalano
9b67969fd6
further optimization, splitting function into pieces
...
generating strings on the fly, changed name, and added two tests
2016-02-18 11:23:00 -06:00
RJ Catalano
84f2eb461b
added two functions in Token to handle long identifiers, redid fromIdentifierOrKeyword, and made complementary changes in scanner and parser
2016-02-18 11:22:58 -06:00
RJ Catalano
f4da126018
tests added and changes made
...
fixed some silly problems in Token.cpp
windows error fix
2016-02-18 11:22:56 -06:00
RJ Catalano
7b918a7bc7
changes to redefine the token list, the scanner, and the parser and how they pass around variable types of different sizes
...
not ready for change to FixedPoint just yet
made this more const correct and added a switch statement for easier reading
2016-02-18 11:22:52 -06:00
chriseth
23074150f4
Test for segfault when using wrong number of constructor arguments.
2016-02-11 17:12:28 +01:00
chriseth
29faf1b298
Index access for bytesXX.
2016-02-09 17:07:04 +01:00
Lu Guanqun
51caa04238
add more test cases for cond-expr
2016-01-22 17:14:01 +00:00
Lu Guanqun
5840a3513f
cond-expr: add more unit tests
2016-01-22 17:14:01 +00:00
Lu Guanqun
d36537e737
cond-expr: use the mobile type instead of the original type
2016-01-22 17:14:01 +00:00
Lu Guanqun
c8b0533933
[cond-expr] change the end to end test
2016-01-22 17:14:01 +00:00
Lu Guanqun
ac3019298a
[cond-expr] add a test for different types
2016-01-22 17:14:01 +00:00
Lu Guanqun
1cd3288311
[cond-expr] add a test to assign memory to storage
2016-01-22 17:14:01 +00:00
Lu Guanqun
bf7daf0814
[cond-expr] don't allow conditional as left value for the first stage
2016-01-22 17:14:00 +00:00
Lu Guanqun
b003290638
[cond-expr] fixup according to code review
2016-01-22 17:14:00 +00:00
Lu Guanqun
db6ce6d8a1
comment out one un-supported test case
2016-01-22 17:14:00 +00:00
Lu Guanqun
08493589c1
fixup end to end test
2016-01-22 17:14:00 +00:00
Lu Guanqun
985744545a
[cond-expr] add another parser expression
2016-01-22 17:14:00 +00:00
Lu Guanqun
4471a2ce3b
[cond-expr] add test cases for type resolution
2016-01-22 17:14:00 +00:00
Lu Guanqun
0a45fe04f3
[cond-expr] add end to end test
2016-01-22 17:14:00 +00:00
Lu Guanqun
f1d21552fc
[cond-expr] add parser test cases
2016-01-22 17:14:00 +00:00
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
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
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
chriseth
c54a033bf0
Tests for multi variable declaration.
2015-10-09 16:26:27 +02:00
chriseth
35de03626f
Check invalid integer constants for functions accepting arbitrary arguments.
2015-10-07 18:13:20 +02:00
chriseth
24d04087d2
Resolve binary dependencies properly.
2015-10-07 17:35:07 +02:00
chriseth
68bf6e60c5
Merge pull request #122 from chriseth/anonymousEventsWithFourIndexedParams
...
Allow four indexed arguments for anynomous events.
2015-10-07 17:01:37 +02:00
chriseth
b6ddde9372
Allow four indexed arguments for anynomous events.
2015-10-07 16:40:54 +02:00
chriseth
0297a213fe
Reject ether sent to library.
2015-10-06 22:55:45 +02:00
chriseth
d35a4b849d
Merge pull request #117 from chriseth/internalTypesForLibrary
...
Internal types for library
2015-10-06 18:29:05 +02:00