Commit Graph
1711 Commits
Author SHA1 Message Date
chriseth 908b46e9a7 Merge pull request #3476 from ethereum/scoping
C99/C++ scoping rules
2018-02-27 17:06:10 +01:00
Alex Beregszaszi a566825589 Issue error if no visibility is specified (on 0.5.0) 2018-02-27 16:31:53 +01:00
Alex Beregszaszi afa4a48e37 Remove ROL/ROR as they are not part of EIP145 anymore 2018-02-27 13:42:41 +01:00
Alex Beregszaszi 468d0f6199 Warn on using shift instructions 2018-02-27 13:42:31 +01:00
chriseth 88a5c66f4a Only active variables at the point of their declaration. 2018-02-27 12:17:25 +01:00
chriseth 6b9dda06f3 Enable C99-scoping with the 0.5.0-experimental pragma. 2018-02-27 12:17:25 +01:00
chriseth e6d48bb72a Blocks and for loops can be scopes. 2018-02-27 12:17:25 +01:00
chriseth 5f20129e65 Scopes do not have to be declarations. 2018-02-27 12:17:25 +01:00
chriseth 53289e15a2 Make all lookups recursive by default. 2018-02-27 12:17:25 +01:00
Alex Beregszaszi 5c0d82059f Turn throw into a syntax error for 0.5.0 2018-02-27 02:10:24 +01:00
Alex Beregszaszi b62d43912b Merge pull request #3589 from ethereum/identifiers
Clean up type identifiers
2018-02-26 20:27:26 +01:00
Alex Beregszaszi b471983e3c Use new escaping helpers for type identifiers 2018-02-26 19:09:43 +01:00
Alex Beregszaszi 2e7067fbe4 Rename Types::identifier to Types::richIdentifier 2018-02-26 19:09:43 +01:00
Alex Beregszaszi 751705978e Add helpers escapeIdentifier to Types 2018-02-26 19:09:39 +01:00
chriseth 4da20bdf01 Fix: Function types for getters should not have storage pointers. 2018-02-26 11:17:40 +01:00
chriseth 917dd28eef Simplify FunctionType constructors. 2018-02-26 10:45:41 +01:00
chriseth 8c1a8ecc2e Warn about using events without emit. 2018-02-22 15:17:42 +01:00
chriseth 388718b59f Introduce emit statement. 2018-02-22 15:17:30 +01:00
chriseth c182284d28 Do not warn about analysis-only experimental features. 2018-02-22 14:50:20 +01:00
Alex Beregszaszi 42856e0f53 Add assertion for boolean literals in Julia-mode 2018-02-22 01:02:23 +01:00
Alex Beregszaszi ae02bb5aad Raise error on oversized number literals in assembly 2018-02-22 01:02:19 +01:00
chriseth 3076a434ba Merge pull request #3554 from ethereum/reuseScannerOrNot
Expect end of string at end of top-level block for assembly parser.
2018-02-21 00:41:57 +01:00
chriseth e2bf5de8a2 Expect end of string at end of top-level block for assembly parser. 2018-02-21 00:41:39 +01:00
Alexander Arlt 0f29ac4e56 Add new JSON API for better abstraction and for supporting strict JSON parsing 2018-02-20 21:58:26 +01:00
chriseth 4272d16f30 Fix shadowing for imports with aliases. 2018-02-20 13:06:28 +01:00
chriseth 930485cd24 Properly warn about the use of constants in inline assembly in connection with `_offset and _slot`. 2018-02-19 19:22:39 +01:00
chriseth abc23ac608 Merge pull request #3135 from federicobond/formatter-instance
Convert static SourceReferenceFormatter functions to member ones
2018-02-19 17:34:07 +01:00
Emilio Almansi ca6957da37 Added property _documentation_ to Function, Event, and Modifier definition classes. 2018-02-19 16:45:38 +01:00
chriseth 305d5f70c2 Fix scannerFromSourceName use-after-free. 2018-02-19 15:13:49 +01:00
Federico Bond d7532f7b9c Convert static SourceReferenceFormatter functions to member ones 2018-02-19 15:04:22 +01:00
Alexander Arlt 1d4547ab03 Minor improvement: check sources
- returns error, if "sources" is an array, an empty object or not defined
- Added new test-cases in test/libsolidity/StandardCompiler.cpp
2018-02-16 18:44:46 +01:00
chriseth 2b5a5a8669 Make addmod and mulmod revert if the last argument is zero. 2018-02-15 13:52:17 +01:00
chriseth e08a206070 Disallow uninitialized storage pointers as experimental 0.5.0 feature. 2018-02-15 11:58:50 +01:00
chriseth 23484ba6a4 Merge pull request #3498 from ethereum/allowthisfselector
Allow `this.f.selector` to be pure.
2018-02-13 17:08:35 +01:00
chriseth 1dcd7c5e0b Fix: remove reference. 2018-02-13 15:04:10 +00:00
chriseth dc0a25f1cd Minor changes. 2018-02-13 15:04:03 +00:00
Balajiganapathi S 8a491c77ba Restructure code for alternative identifier suggestions 2018-02-13 15:00:15 +00:00
Balajiganapathi S b1417b318f Move string distance function to utils and format error message 2018-02-13 14:59:33 +00:00
Balajiganapathi S 2859834e58 Suggest alternatives when identifier not found. 2018-02-13 14:54:36 +00:00
Alex Beregszaszi 8f8ad3840e Merge pull request #3349 from federicobond/number-improv
Avoid output messages size blow-up using huge bignums literals
2018-02-13 12:36:05 +00:00
chriseth 560fbd0df1 Always use shortened literal number representation. 2018-02-13 11:43:47 +01:00
chriseth 5916cf1e0a Allow this.f.selector to be pure. 2018-02-13 11:00:59 +01:00
Federico Bond a320ffeafd Avoid output messages size blow-up using huge bignums literals 2018-02-12 22:53:33 +00:00
Jimmy Vogel dc5ad899d0 Deprecate the var keyword (and mark it an error as experimental 0.5.0 feature) 2018-02-12 22:37:26 +00:00
Federico Bond 75a3a707a2 Fix segfault with undeclared array types 2018-02-11 21:40:41 -03:00
Alex Beregszaszi 32300ea3ff Merge pull request #3360 from federicobond/nonfatal-reference-errors
Replace some fatal errors when resolving references with normal ones
2018-02-04 13:07:55 +00:00
Federico Bond 600e66e605 Replace some fatal errors when resolving references with normal ones 2018-02-02 14:09:32 -03:00
Alex Beregszaszi b545987ec7 Issue warning for using public visibility for interface functions 2018-02-01 10:28:00 +00:00
chriseth 6807010dc7 Prevent libraries from being called. 2018-01-19 16:27:44 +01:00
Alex Beregszaszi 8b20a7cd53 Disallow non-functional instructions in parseExpression early 2018-01-10 14:16:46 +01:00