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 |
|
LianaHus
|
5fb8953003
|
style fixes
|
2016-02-18 13:29:20 +01:00 |
|
chriseth
|
4a837169c5
|
Fix segfault when using wrong number of constructor arguments.
|
2016-02-11 17:12:30 +01:00 |
|
chriseth
|
29faf1b298
|
Index access for bytesXX.
|
2016-02-09 17:07:04 +01:00 |
|
chriseth
|
33b02a0d1b
|
Fix uint178 problem.
|
2016-01-25 21:05:13 +01: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
|
82ee9503e9
|
[cond-expr] change endVisit() to visit()
|
2016-01-22 17:14:00 +00:00 |
|
Lu Guanqun
|
c781b130ef
|
[cond-expr] make the codegen one instruction less
|
2016-01-22 17:14:00 +00:00 |
|
Lu Guanqun
|
36a758e224
|
[cond-expr] fix the crash in ExpressionStatement
|
2016-01-22 17:14:00 +00:00 |
|
Lu Guanqun
|
9cd96222da
|
[cond-expr] support conditional expression as lvalue
|
2016-01-22 17:14:00 +00:00 |
|
Lu Guanqun
|
ff4f1666ab
|
[cond-expr] generate assembly for _ ? _ : _
|
2016-01-22 17:14:00 +00:00 |
|
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 |
|