Lu Guanqun
|
047172eb9a
|
[cond-expr] add type checker
|
2016-01-22 17:14:00 +00:00 |
|
Lu Guanqun
|
7eefa838a3
|
[cond-expr] parse _ ? _ : _ into conditional AST node
|
2016-01-22 17:14:00 +00:00 |
|
Lu Guanqun
|
4563d4bd3c
|
[cond-expr] add visitor related functions
|
2016-01-22 17:14:00 +00:00 |
|
Lu Guanqun
|
4fa0326813
|
[cond-expr] add an AST node
|
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
|
cb3e07acfc
|
remove the unused line
|
2016-01-19 15:00:19 +00:00 |
|
chriseth
|
d21c4276b3
|
Merge pull request #351 from chriseth/autoload
Automatically load imported files in solc.
|
2016-01-19 13:14:25 +01:00 |
|
Lu Guanqun
|
df728581ce
|
add another test case for continue not in loop
|
2016-01-19 03:24:58 +00:00 |
|
Lu Guanqun
|
c8886ed5cf
|
code changes according to Chris's comments
|
2016-01-19 02:16:13 +00:00 |
|
chriseth
|
0099513cd4
|
Merge pull request #347 from chriseth/libraryNameClashes
Detect library name clashes
|
2016-01-18 09:24:11 +01:00 |
|
chriseth
|
2c5d045729
|
Merge pull request #359 from LianaHus/sol_only_one_array_as_state_var
fixed ICError when creating EI for structs containing only mapping or arrays
|
2016-01-18 09:23:21 +01:00 |
|
Liana Husikyan
|
9613a94153
|
Update TypeChecker.cpp
|
2016-01-15 18:11:05 +01:00 |
|
LianaHus
|
b2daa5a9d8
|
fixed assert on EI creation for structs containing only mapping or arrays
|
2016-01-15 17:36:06 +01:00 |
|
Paweł Bylica
|
31863528a4
|
Remove unnecesary std::move
|
2016-01-15 14:04:18 +01:00 |
|
Lu Guanqun
|
e130bc7e7c
|
check whether break/continue is in the loop
|
2016-01-15 15:12:23 +08:00 |
|
chriseth
|
8f7c4e0cc2
|
Build fix for MacOS.
|
2016-01-14 14:47:32 +01:00 |
|
chriseth
|
17199edb4f
|
Set error flag to true.
|
2016-01-14 11:36:13 +01:00 |
|
chriseth
|
2364c55735
|
Detect library name clashes.
|
2016-01-14 11:36:13 +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 |
|
chriseth
|
287f0a2ddf
|
Autoload files in solc.
|
2016-01-12 01:05:05 +01:00 |
|
RJ Catalano
|
4a6815c9bd
|
Merge branch 'develop' of https://github.com/ethereum/solidity into develop
|
2016-01-11 15:39:35 -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
|
c78b9c5737
|
Update ExpressionCompiler.cpp
|
2016-01-10 21:49:36 -06:00 |
|
RJ
|
72a641fe9f
|
Update ExpressionCompiler.cpp
|
2016-01-10 21:37:47 -06:00 |
|
RJ
|
e18eaa4615
|
Update ExpressionCompiler.cpp
|
2016-01-10 01:12:17 -06:00 |
|
RJ
|
df9dfa8fef
|
find common type
|
2016-01-10 01:09:58 -06:00 |
|
chriseth
|
d3c8847726
|
Fixed a crash during type checking.
|
2016-01-08 15:20:54 +01: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
|
568da11369
|
support decayed tuple expression as left value
|
2016-01-04 16:11:36 +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
|
6f78998aaf
|
Merge pull request #309 from chriseth/fix_cross_contract_enum_access
Add structs and enums to contract types.
|
2015-12-21 15:37:24 +01:00 |
|
chriseth
|
6c6295b74e
|
Merge pull request #311 from guanqun/correct-boolean-literal-position
correct true/false literal's source
|
2015-12-18 17:14:57 +01:00 |
|
chriseth
|
54e3637d23
|
Add structs and enums to contract types.
|
2015-12-18 16:50:14 +01:00 |
|
Lu Guanqun
|
e4f713b55b
|
correct true/false literal's source
Before:
Literal, token: true value: true
Type: bool
Source: "true;"
After:
Literal, token: true value: true
Type: bool
Source: "true"
Extra token is removed.
|
2015-12-18 23:48:34 +08: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
|
ed1dd50acd
|
changed error message
|
2015-12-16 17:26:41 -06: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
|
de969945ea
|
Parsing is complete
|
2015-12-16 13:17:41 -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
|
caa6202f62
|
temporary assert added
|
2015-12-16 10:34:16 -06:00 |
|
RJ Catalano
|
c8e4e9c05c
|
still not able to get types resolved, however it is compiling
|
2015-12-15 16:44:11 -06:00 |
|
RJ Catalano
|
9ab066de8c
|
new tests
|
2015-12-15 14:47:09 -06:00 |
|
RJ Catalano
|
aebce8a1d5
|
now is compiling and passing soltest...but I think there may be a few more things to do
|
2015-12-15 12:22:52 -06:00 |
|
RJ Catalano
|
5a462afd03
|
fixed case statements
|
2015-12-15 11:37:00 -06:00 |
|
RJ Catalano
|
767103be57
|
changing Tuple Constructor
|
2015-12-15 11:16:54 -06:00 |
|
RJ Catalano
|
84241804dc
|
updated attempt...still a bit more work to do but here's what's current
|
2015-12-15 11:00:35 -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
|
591a4f1ff4
|
Merge pull request #288 from chriseth/import_contexts
Do not clutter importee when importing.
|
2015-12-15 11:43:59 +01:00 |
|
chriseth
|
53da78e609
|
Style.
|
2015-12-15 09:57:05 +01:00 |
|
RJ Catalano
|
574e48b0b5
|
Inline array declarations complete
|
2015-12-14 17:40:35 -06:00 |
|
chriseth
|
251e7aa462
|
Merge pull request #289 from chriseth/fix_base_constructor_params
Fix: Type checker crash for wrong number of base constructor arguments.
|
2015-12-10 15:48:48 +01: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
|
39f57a9c71
|
Fix: Segfaults connected to paramater types.
parameterTypes does not return by const reference anymore.
|
2015-12-09 17:57:34 +01:00 |
|
chriseth
|
f5b184323d
|
Fix: Type checker crash for wrong number of base constructor arguments.
|
2015-12-09 17:37:19 +01:00 |
|
chriseth
|
e510e7e792
|
Bugfix concerning pointers to moved data.
|
2015-12-08 12:41:24 +01:00 |
|
chriseth
|
7f415da886
|
Code generation for calling bound methods.
|
2015-12-01 12:35:34 +01:00 |
|
chriseth
|
e853eb22fa
|
Merge pull request #261 from chriseth/dataloc
Bugfix for explicit memory types in libraries.
|
2015-12-01 12:15:17 +01:00 |
|
chriseth
|
7e3bf833ae
|
Bugfix for explicit memory types in libraries.
|
2015-11-30 19:46:26 +01:00 |
|
chriseth
|
35b310cfaf
|
Simplify and optimise stack rotation.
|
2015-11-30 18:50:47 +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
|
09b2f9acb7
|
Resolve type names using regular AST visit.
|
2015-11-26 17:49:02 +01:00 |
|
chriseth
|
4aaa150674
|
Convert filter to template function.
|
2015-11-26 17:28:44 +01:00 |
|
chriseth
|
cc2df5f9f2
|
Invalidate cached members if scope changes.
|
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
|
86495dfc57
|
Make members context-sensitive.
|
2015-11-26 15:37:55 +01:00 |
|
chriseth
|
e06768e8b5
|
Fix MSVC errors and warnings.
|
2015-11-26 14:47:28 +01:00 |
|
chriseth
|
6a2a946200
|
Make some functions const.
|
2015-11-26 13:44:09 +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
|
f86451cd68
|
Fix solidity dependencies.
|
2015-11-26 12:40:15 +01:00 |
|
chriseth
|
20542d1623
|
Style.
|
2015-11-25 14:24:00 +01:00 |
|
chriseth
|
36ba7d11ca
|
Again some why3 fixes with regards to separators in blocks.
|
2015-11-25 14:24:00 +01:00 |
|
chriseth
|
ce1e73a734
|
Merge pull request #245 from chriseth/buildfixes
Build dependency fixes.
|
2015-11-25 14:03:29 +01:00 |
|
chriseth
|
aa8e9e66ed
|
Merge pull request #244 from chriseth/fix_stringAlloc
Fix for memory allocation bug.
|
2015-11-24 16:18:41 +01:00 |
|
chriseth
|
46bc70e709
|
Build dependency fixes.
|
2015-11-24 16:12:42 +01:00 |
|
chriseth
|
68f1da1e3a
|
Fixed string inside struct allocation bug.
|
2015-11-24 14:54:37 +01:00 |
|
chriseth
|
e59b9b445a
|
Merge pull request #241 from chriseth/why3VariablesInConditions
Why3 variables in conditions
|
2015-11-24 11:33:35 +01:00 |
|
chriseth
|
10fe0a2434
|
Style.
|
2015-11-23 16:30:51 +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 |
|
chriseth
|
806507d5c0
|
addmod and mulmod for why3.
|
2015-11-23 00:58:17 +01:00 |
|
chriseth
|
82a6ab486d
|
Why3: Direct references to variables using # .
|
2015-11-23 00:58:17 +01:00 |
|
Gav Wood
|
bff172cf65
|
Fix up for new API from EIP-1.1.
|
2015-11-21 14:34:21 +01:00 |
|
chriseth
|
284d8f8b13
|
Merge pull request #229 from chriseth/fv_storage_types
Formal Verification: State variables.
|
2015-11-19 13:16:23 +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 |
|
Gav Wood
|
938b6793f1
|
Minor API change - must provide SealEngine to Executive now.
|
2015-11-19 10:19:53 +01:00 |
|
chriseth
|
12f19fa46b
|
Formal Verification: State variables.
|
2015-11-19 02:04:33 +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
|
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
|
34829ae764
|
Fix problems with statement blocks.
|
2015-11-11 15:21:01 +01:00 |
|
LianaHus
|
a15d2bbb52
|
style fix
|
2015-11-06 21:07:42 +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 |
|
LianaHus
|
7eb162c0df
|
fix
|
2015-11-06 18:45:06 +01:00 |
|
LianaHus
|
79177de80b
|
fixed return valu for resolver
|
2015-11-06 18:45:06 +01:00 |
|
LianaHus
|
3f726825fb
|
added SourceLocations to error reporting for ReferenceResolver
|
2015-11-06 18:45:06 +01:00 |
|
LianaHus
|
ff421a9d65
|
passed SourceLocations instead of nodes to the error reporting function
|
2015-11-06 18:45:06 +01:00 |
|
LianaHus
|
02d060ea5c
|
fixed build
|
2015-11-06 18:45:06 +01:00 |
|
LianaHus
|
1a27bf8a39
|
added errors tu ReferencesResolver
|
2015-11-06 18:45:06 +01:00 |
|
chriseth
|
907cf28f49
|
Fix: Cope with non-existing commit hash.
|
2015-11-02 18:03:04 +01:00 |
|
chriseth
|
a5c227778d
|
Bugfix: Returning literal strings in tuples.
|
2015-10-31 23:13:45 +01:00 |
|
chriseth
|
56f5d58850
|
Rename error type.
|
2015-10-27 17:45:58 +01:00 |
|
chriseth
|
a957322fd7
|
Preliminary why3 code output.
|
2015-10-27 00:49:27 +01:00 |
|
chriseth
|
8fb49d85f9
|
Allow docstrings for statements.
|
2015-10-26 19:47:25 +01:00 |
|
chriseth
|
af4d687062
|
Fix indent.
|
2015-10-26 17:21:32 +01:00 |
|
chriseth
|
b4f561680a
|
Store docstrings in AST annotations.
|
2015-10-26 15:24:36 +01:00 |
|
chriseth
|
7a9f8d9f35
|
Merge pull request #171 from LianaHus/sol_change_expected_error_in_parser
Sol change "expected" errors in parser
|
2015-10-23 13:25:29 +02:00 |
|
LianaHus
|
d8865f9f05
|
more corrections
|
2015-10-23 12:56:50 +02:00 |
|
chriseth
|
e48ee59549
|
Fix override warning.
|
2015-10-23 12:51:49 +02:00 |
|
LianaHus
|
6e13853421
|
modified error msg
|
2015-10-23 12:44:26 +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
|
452d473293
|
Merge pull request #143 from chriseth/loneStructArray
Fix errors when struct array type is used on its own.
|
2015-10-16 15:20:44 +02:00 |
|
chriseth
|
102114176c
|
Merge pull request #142 from chriseth/fixWarnings
Fix warning.
|
2015-10-16 15:20:36 +02:00 |
|
chriseth
|
fd8eb2d074
|
Merge pull request #141 from chriseth/fixExternalTypes
Do not include function in interface list if there are errors.
|
2015-10-16 15:20:25 +02:00 |
|
chriseth
|
7b56206a98
|
Do not catch InternalCompilerErrors as part of fatal error handling.
InternalCompilerErrors always have to end the whole compilation process because a serious inconsistency was detected.
|
2015-10-16 14:52:01 +02:00 |
|
chriseth
|
ead0478f26
|
Fix errors when struct array type is used on its own.
|
2015-10-16 14:36:30 +02:00 |
|
chriseth
|
02a3c1d999
|
Fix warning.
|
2015-10-16 13:48:46 +02:00 |
|
chriseth
|
cd9132672a
|
Do not include function in interface list if there are errors.
|
2015-10-16 13:11:16 +02:00 |
|
chriseth
|
52eaa477d4
|
Merge pull request #132 from chriseth/tupleExpression
Tuple expressions and destructuring assignments
|
2015-10-16 10:01:34 +02:00 |
|
chriseth
|
2920a32ae8
|
Fixed indentation.
|
2015-10-16 10:01:22 +02:00 |
|
chriseth
|
030c868f58
|
Merge pull request #136 from LianaHus/sol_error_types_refuctoring
changed the way of reporting error during contract checking
|
2015-10-15 18:30:32 +02:00 |
|
LianaHus
|
ec5b9c2e92
|
changed the way of reporting error during contract checking
|
2015-10-15 18:15:52 +02:00 |
|
chriseth
|
1d4219d43d
|
Some fixes taking other pull requests into account.
|
2015-10-15 18:14:14 +02:00 |
|
chriseth
|
e21df35416
|
MacOS fix.
|
2015-10-15 17:38:42 +02:00 |
|
chriseth
|
ae5b12f54b
|
Fix compiler warnings.
|
2015-10-15 17:38:42 +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
|
b2e787b803
|
missing const
|
2015-10-15 16:59:38 +02:00 |
|
LianaHus
|
2348a4ef34
|
indent
|
2015-10-15 16:56:12 +02:00 |
|
LianaHus
|
656e749b1e
|
added const
|
2015-10-15 16:51:01 +02:00 |
|