chriseth
|
9b6caa3fc4
|
Remove visits to abstract AST class TypeName.
|
2017-08-22 15:12:38 +02:00 |
|
Alex Beregszaszi
|
f2d6226718
|
Some smaller issues found by Covertiy Scan
|
2017-08-22 13:55:28 +01:00 |
|
Alex Beregszaszi
|
97169e58ae
|
Merge pull request #2734 from ethereum/reject-create-interface
Reject the creation of interface with the new statement
|
2017-08-22 12:11:37 +01:00 |
|
chriseth
|
628b54ce35
|
Reduce max recursion depth.
|
2017-08-22 12:44:23 +02:00 |
|
chriseth
|
692e4c57e8
|
Check recursion depth in assembly parser.
|
2017-08-22 12:44:22 +02:00 |
|
chriseth
|
7b0046a9aa
|
Check inheritance specifier arguments for interfaces.
|
2017-08-22 11:39:50 +01:00 |
|
Alex Beregszaszi
|
9897c56b2c
|
Mark a lot of functions static (where possible)
|
2017-08-22 10:51:46 +01:00 |
|
Alex Beregszaszi
|
2a5772cff7
|
Mark appropriate constructors explicit
|
2017-08-22 10:51:46 +01:00 |
|
Alex Beregszaszi
|
e2cfc9ee92
|
Mark a lot of functions const (where possible)
|
2017-08-22 10:51:46 +01:00 |
|
Alex Beregszaszi
|
b25f0c52ac
|
Reject the creation of interface with the new statement
|
2017-08-21 23:02:18 +01:00 |
|
Alex Beregszaszi
|
c94b1f8173
|
Set variable to nullptr in ASTPrinter
|
2017-08-21 22:05:35 +01:00 |
|
Alex Beregszaszi
|
2c2ae74217
|
Merge pull request #2773 from ethereum/usingForWithoutLibrary
Fix crash related to ``using for`` without a library.
|
2017-08-21 19:47:57 +01:00 |
|
Alex Beregszaszi
|
4b56829ac3
|
Create children node in ASTJsonConverter when neccesary
|
2017-08-21 16:28:30 +01:00 |
|
chriseth
|
e3f90565d8
|
Avoid some Json copy operations.
|
2017-08-21 16:28:30 +01:00 |
|
Alex Beregszaszi
|
4219acaba9
|
Merge pull request #2771 from ethereum/unused-includes
Remove some unused includes
|
2017-08-21 16:26:44 +01:00 |
|
chriseth
|
ec82706396
|
Fix crash related to `using for ` without a library.
|
2017-08-21 16:57:37 +02:00 |
|
chriseth
|
d270879c8f
|
Merge pull request #2748 from ethereum/natspec
Remove DocumentationType from natspec
|
2017-08-21 16:46:00 +02:00 |
|
chriseth
|
01b4bba0ed
|
Merge branch 'develop' into library-constructor
|
2017-08-21 16:34:59 +02:00 |
|
Alex Beregszaszi
|
b3986f1d07
|
Remove some unused includes
|
2017-08-21 14:08:58 +01:00 |
|
chriseth
|
2c5985de06
|
Be more strict about number literals in assembly.
|
2017-08-21 13:31:28 +02:00 |
|
Paweł Bylica
|
fa53494626
|
CMake: Remove libsolidity <- boost::regex dependency
|
2017-08-21 12:37:55 +02:00 |
|
Paweł Bylica
|
99d198ffb0
|
CMake: Make libs dependencies explicit
|
2017-08-21 12:27:06 +02:00 |
|
Alex Beregszaszi
|
fe25bcf350
|
Library cannot have constructors
|
2017-08-21 11:03:55 +01:00 |
|
Paweł Bylica
|
8404e2b6d7
|
CMake: Simplify libsolidity config
|
2017-08-18 13:32:35 +02:00 |
|
Paweł Bylica
|
d1f4d110fb
|
CMake: Build static libs by default
|
2017-08-18 13:32:35 +02:00 |
|
Alex Beregszaszi
|
7700f4033e
|
Remove isDeclaredConst() from functions
|
2017-08-16 17:23:09 +01:00 |
|
Alex Beregszaszi
|
33ea314a24
|
Add statemutability to AST JSON
|
2017-08-16 17:23:09 +01:00 |
|
Alex Beregszaszi
|
a61c88e9fe
|
Use state mutability in override error messages
|
2017-08-16 17:23:09 +01:00 |
|
Alex Beregszaszi
|
a2aaa47ee2
|
Use state mutability in fallback/constructor check
|
2017-08-16 17:23:09 +01:00 |
|
Alex Beregszaszi
|
93be0dd923
|
FunctionType comparison/identifer to support all statemutability levels
|
2017-08-16 17:23:08 +01:00 |
|
chriseth
|
3d595d4b14
|
Warn about shift of literals.
|
2017-08-16 13:54:28 +02:00 |
|
Alex Beregszaszi
|
7222fac456
|
Remove DocumentationType from natspec
|
2017-08-15 19:56:38 +01:00 |
|
Alex Beregszaszi
|
12f3257e7d
|
Add statemutability field to the ABI
|
2017-08-15 11:35:50 +01:00 |
|
chriseth
|
32e43477c3
|
Prevent too deep recursion in parser.
|
2017-08-14 22:19:15 +02:00 |
|
chriseth
|
2411f5d839
|
Merge pull request #2704 from ethereum/newEncoder
New ABI encoder
|
2017-08-14 17:04:00 +02:00 |
|
Alex Beregszaszi
|
a26a5f20ce
|
Remove constant/payable in all function types
|
2017-08-14 14:21:47 +01:00 |
|
Alex Beregszaszi
|
b225bf5d53
|
Remove useless payable & constant typecheck
|
2017-08-14 14:21:47 +01:00 |
|
Alex Beregszaszi
|
2a9ba937ba
|
Replace constant/payable with StateMutability in AST
|
2017-08-14 14:21:47 +01:00 |
|
chriseth
|
d1ad62fccc
|
Experimental feature switch for ABI encoder.
|
2017-08-14 13:11:41 +01:00 |
|
chriseth
|
ee6f56d641
|
Remove unused magic global feature.
|
2017-08-14 13:11:41 +01:00 |
|
chriseth
|
4630b3315a
|
Interface for new ABI encoder.
|
2017-08-14 12:44:25 +02:00 |
|
chriseth
|
42fe8a2cb1
|
New ABI encoder.
|
2017-08-14 12:44:25 +02:00 |
|
chriseth
|
77b26552b1
|
Allow multi-dimensional arrays in interfaces.
|
2017-08-14 12:44:25 +02:00 |
|
chriseth
|
4d9790b6d5
|
Merge pull request #2703 from ethereum/warnAboutLargeStorageArrays
Warn about large storage structures.
|
2017-08-14 11:37:01 +02:00 |
|
Federico Bond
|
3571db6e3f
|
Avoid duplicate errors due to function overrides
|
2017-08-11 22:45:26 +01:00 |
|
Federico Bond
|
d4997dd9a3
|
Use a secondary location for function override errors
|
2017-08-11 22:45:25 +01:00 |
|
Federico Bond
|
a6949851f3
|
Refactor function override check to remove duplicate logic
|
2017-08-11 22:45:25 +01:00 |
|
Federico Bond
|
ff5bb54e3c
|
Use fully qualified name of super in message
|
2017-08-11 22:45:25 +01:00 |
|
Federico Bond
|
a5ceaac8df
|
Improve override changes signature error message
|
2017-08-11 22:45:25 +01:00 |
|
chriseth
|
da3ac86403
|
Warn about large storage structures.
|
2017-08-11 20:57:57 +02:00 |
|
Federico Bond
|
a8c047f48d
|
Enforce commas in tuple syntax
|
2017-08-11 17:28:48 +01:00 |
|
Alex Beregszaszi
|
2d1bab0de8
|
Output experimental flag in metadata only for risky features
|
2017-08-11 16:38:43 +01:00 |
|
Alex Beregszaszi
|
4d82d4f57a
|
Store experimental flag in metadata CBOR
|
2017-08-11 16:38:43 +01:00 |
|
Alex Beregszaszi
|
53a497b4d8
|
Add analysis-only experimental features
|
2017-08-11 16:38:37 +01:00 |
|
Alex Beregszaszi
|
644c91fc2d
|
Add __test experimental mode for testing
|
2017-08-11 16:38:02 +01:00 |
|
chriseth
|
a7a9ed4718
|
Merge pull request #2727 from ethereum/simplify-types
Simplify if/else statements in Types
|
2017-08-11 11:46:16 +02:00 |
|
Alex Beregszaszi
|
3dcf089c3f
|
Simplify if/else statements in Types
|
2017-08-10 19:14:33 +01:00 |
|
gubatron
|
ad7a63f890
|
FunctionType operator== boolean refactor
|
2017-08-10 17:04:40 +01:00 |
|
Alex Beregszaszi
|
1b32cdcf21
|
Check for payable when comparing function types
|
2017-08-10 17:03:45 +01:00 |
|
chriseth
|
41e3cbe084
|
Merge pull request #2690 from ethereum/experimental-pragma
Support experimental feature pragma
|
2017-08-10 15:23:34 +02:00 |
|
Alex Beregszaszi
|
57c2451130
|
Introduce ExperimentalFeatures header
|
2017-08-10 00:15:25 +01:00 |
|
Alex Beregszaszi
|
690ed37fd4
|
Reject wildcard and multiple experimental pragmas
|
2017-08-09 23:41:46 +01:00 |
|
Alex Beregszaszi
|
de9e758ef7
|
Reject unsupported experimental feature names
|
2017-08-09 23:41:46 +01:00 |
|
Alex Beregszaszi
|
e44da40835
|
Warn if using experimental pragma
|
2017-08-09 23:41:46 +01:00 |
|
Alex Beregszaszi
|
fbcc5f4ee5
|
Support experimental feature pragma
|
2017-08-09 23:41:46 +01:00 |
|
chriseth
|
b38f31617e
|
Add isDynamicallyEncoded member function to types.
|
2017-08-09 23:18:42 +01:00 |
|
Alex Beregszaszi
|
b210db8058
|
Make toString(visibility) a helper
|
2017-08-09 14:58:59 +01:00 |
|
Alex Beregszaszi
|
efd45f64a5
|
Show previous visibility specifier in parser error
|
2017-08-09 14:30:17 +01:00 |
|
Alex Beregszaszi
|
a8ca623a0f
|
Add test for multiple visibilites on functions
|
2017-08-09 14:30:02 +01:00 |
|
Alex Beregszaszi
|
3b41cd3c23
|
Rename Token::Const to Token::Constant
|
2017-08-09 12:50:53 +01:00 |
|
Alex Beregszaszi
|
8df89c5d5b
|
Disable unimplemented library functions instead
|
2017-08-08 12:42:10 +01:00 |
|
Alex Beregszaszi
|
1ada48f61e
|
Raise error when using unimplemented internal library functions.
|
2017-08-08 11:58:00 +01:00 |
|
Alex Beregszaszi
|
bb0eb57c2f
|
Constructors must be implemented if declared.
|
2017-08-04 20:38:45 +01:00 |
|
Alex Beregszaszi
|
a372941a44
|
Merge pull request #2687 from ethereum/show-unimplemented-funcs
Show unimplemented function if trying to instantiate an abstract class
|
2017-08-04 19:46:09 +01:00 |
|
chriseth
|
060d229a22
|
Search for shadowee starting from parent scope.
|
2017-08-04 19:06:24 +02:00 |
|
Alex Beregszaszi
|
32acadf43d
|
Do not mark overloaded functions as shadowing
|
2017-08-04 19:06:23 +02:00 |
|
Alex Beregszaszi
|
2186401479
|
Remove duplicated check for unimplemented functions
|
2017-08-04 14:03:38 +01:00 |
|
Alex Beregszaszi
|
494dea262e
|
Show unimplemented function if trying to instantiate an abstract class
|
2017-08-04 14:03:37 +01:00 |
|
Alex Beregszaszi
|
c835bcec62
|
Replace isFullyImplemented with unimplementedFunctions in ASTAnnotations
|
2017-08-04 14:03:37 +01:00 |
|
chriseth
|
38e9505a83
|
Merge pull request #2673 from ethereum/builtin-gas
Disallow gas modifier on sha256/ripemd160/ecrecover
|
2017-08-04 14:43:15 +02:00 |
|
chriseth
|
bd9e91085b
|
Merge pull request #2679 from ethereum/delegatecall
.delegatecall() should always return a boolean of execution status
|
2017-08-02 15:46:02 +02:00 |
|
Alex Beregszaszi
|
934a5dbf53
|
Consistent format for secondary location in sourceformatter
|
2017-08-02 11:31:55 +01:00 |
|
Alex Beregszaszi
|
7553beb6a6
|
Consistent new line in sourceformatter
|
2017-08-02 11:31:17 +01:00 |
|
Alex Beregszaszi
|
b7642dc8a7
|
Disallow gas modifier on sha255/ripemd160/ecrecover
|
2017-08-01 20:55:01 +01:00 |
|
Alex Beregszaszi
|
b3061225bc
|
.delegatecall() should always return a boolean of execution status
|
2017-08-01 20:50:03 +01:00 |
|
Alex Beregszaszi
|
39dba0efe8
|
Provide new account gas for low-level callcode/delegatecall
|
2017-08-01 14:00:17 +01:00 |
|
Alex Beregszaszi
|
6d37f30d76
|
Rename Bare to Barecall
|
2017-08-01 10:47:10 +01:00 |
|
chriseth
|
b74118ec57
|
Fix for invalid clearing of memory in ecrecover.
|
2017-07-28 15:32:42 +02:00 |
|
Alex Beregszaszi
|
7d37eba4ba
|
Remove the need of jumping out of the fallback
|
2017-07-27 21:52:58 +01:00 |
|
Alex Beregszaszi
|
d4e44ecb46
|
Disallow externalSignature for fallback functions
|
2017-07-27 21:52:58 +01:00 |
|
Alex Beregszaszi
|
9fc6eccc26
|
Add isFallback() helper
|
2017-07-27 21:52:57 +01:00 |
|
Alex Beregszaszi
|
53f747b7de
|
Merge pull request #2635 from ethereum/fixCrashOnAssignmentToNonLValue
Fix crash on assignment to non-LValue
|
2017-07-27 13:59:22 +01:00 |
|
chriseth
|
517a366404
|
Merge pull request #2652 from ethereum/fixMultiModifier
Re-allow multiple modifiers per function.
|
2017-07-27 14:20:18 +02:00 |
|
chriseth
|
7c7c2baa82
|
Re-allow multiple modifiers per function.
|
2017-07-27 13:45:39 +02:00 |
|
Alex Beregszaszi
|
89fadd6935
|
Merge pull request #2645 from ethereum/asserts
Use solAssert where possible
|
2017-07-27 11:12:30 +01:00 |
|
Yoichi Hirai
|
85b338a019
|
Merge pull request #2643 from ethereum/compilerstack
Reorder CompilerStack to be in logical order
|
2017-07-27 11:28:08 +02:00 |
|
Yoichi Hirai
|
b68591c468
|
Merge pull request #2644 from ethereum/toodeep
Report location on stack too deep if possible
|
2017-07-27 11:21:07 +02:00 |
|
Yoichi Hirai
|
772de8c4d9
|
Merge pull request #2646 from ethereum/standardcompiler
Clean up error catching in StandardCompiler
|
2017-07-27 11:20:17 +02:00 |
|
chriseth
|
1298a8df14
|
Merge pull request #2566 from ethereum/metadata-only-relevant
Metadata: only include relevant files in the source list
|
2017-07-27 11:07:15 +02:00 |
|
Alex Beregszaszi
|
f4b6bdad38
|
DocstringParsingError is not thrown anymore in StandardCompiler
|
2017-07-26 23:25:49 +01:00 |
|
Alex Beregszaszi
|
fb7eec8dd5
|
Catch FatalError in StandardCompiler
|
2017-07-26 23:25:43 +01:00 |
|
Alex Beregszaszi
|
af57879187
|
Report location on stack too deep if possible
|
2017-07-26 22:56:55 +01:00 |
|
Alex Beregszaszi
|
8098030986
|
Use solAssert instead of boost throw where possible
|
2017-07-26 22:23:21 +01:00 |
|
Alex Beregszaszi
|
9982e73dce
|
Reorder CompilerStack to be in logical order
|
2017-07-26 22:16:02 +01:00 |
|
chriseth
|
925569bfa3
|
Merge pull request #1637 from ethereum/warn-shadowing-globals
Warn if shadowing built-ins
|
2017-07-26 17:30:27 +02:00 |
|
Alex Beregszaszi
|
30012db396
|
Add CompilerStack::setOptimiserSettings
|
2017-07-26 15:17:07 +01:00 |
|
Alex Beregszaszi
|
6848199b66
|
Add CompilerStack::setLibraries
|
2017-07-26 15:05:16 +01:00 |
|
Alex Beregszaszi
|
fa5a7efb45
|
Remove unused interfaces from CompilerStack
|
2017-07-26 15:05:16 +01:00 |
|
chriseth
|
cb75e6218b
|
Fix crash on assignment to non-lvalue.
|
2017-07-26 14:32:25 +02:00 |
|
Alex Beregszaszi
|
e0dc74b895
|
Warn about shadowing variables.
|
2017-07-25 16:32:37 +02:00 |
|
chriseth
|
72917c4f35
|
Cleanup fixed point type changes
|
2017-07-19 22:13:42 +01:00 |
|
VoR0220
|
78769f3b39
|
Change fixed point types to have digit count
Signed-off-by: VoR0220 <rj@erisindustries.com>
|
2017-07-19 21:49:01 +01:00 |
|
Rhett Aultman
|
a2a759f792
|
Migrate over to ErrorReporter
|
2017-07-19 07:19:21 -07:00 |
|
Alex Beregszaszi
|
f3e591eedd
|
Add template for merging sets
|
2017-07-19 14:56:40 +01:00 |
|
Alex Beregszaszi
|
89a1e97e7d
|
Avoid cyclic imports in referencedSourceUnits
|
2017-07-19 14:56:40 +01:00 |
|
Alex Beregszaszi
|
c617336587
|
Only include files usde in metadata
|
2017-07-19 14:56:40 +01:00 |
|
Alex Beregszaszi
|
ed592d6ccb
|
Add option to recurse referencedSourceUnits
|
2017-07-19 14:56:40 +01:00 |
|
Alex Beregszaszi
|
a9bddf71aa
|
Add referencedSourceUnits() helper
|
2017-07-19 14:56:40 +01:00 |
|
Alex Beregszaszi
|
1b0ef0b785
|
Add sourceUnit() helper to Declaration
|
2017-07-19 14:56:40 +01:00 |
|
Alex Beregszaszi
|
b3db1c361c
|
Warn if this is used in constructor
|
2017-07-19 06:47:36 -07:00 |
|
Yoichi Hirai
|
2a46e1b0e2
|
Merge pull request #2589 from ethereum/rename-onchainmetadata
Rename onChainMetadata to metadata
|
2017-07-19 11:43:19 +02:00 |
|
Yoichi Hirai
|
becb7af4a2
|
Merge pull request #2597 from ethereum/modifier-internal
Mark modifiers as internal
|
2017-07-19 11:41:07 +02:00 |
|
Yoichi Hirai
|
d63e7df897
|
Merge pull request #2593 from ethereum/parser-error-text
Update parser error for pragma/import/contract
|
2017-07-19 11:40:09 +02:00 |
|
Alex Beregszaszi
|
644de755dc
|
Mark modifiers as internal
|
2017-07-18 23:00:17 +01:00 |
|
Alex Beregszaszi
|
c99d049ac0
|
Update parser error for pragma/import/contract
|
2017-07-18 21:23:49 +01:00 |
|
Alex Beregszaszi
|
5bb4bfb08b
|
Remove unneccesary interface from Natspec
|
2017-07-18 21:05:34 +01:00 |
|
Alex Beregszaszi
|
6d8929a71a
|
Rename onChainMetadata to metadata
|
2017-07-18 20:54:28 +01:00 |
|
Alex Beregszaszi
|
c40cbed9fb
|
Mark const variables
|
2017-07-18 14:44:53 +01:00 |
|
Alex Beregszaszi
|
33ac1f29b5
|
Reorder code for readability
|
2017-07-18 14:44:19 +01:00 |
|
Alex Beregszaszi
|
033fc0cb1a
|
Include types in explicit conversion error message
|
2017-07-13 23:09:01 +02:00 |
|
Alex Beregszaszi
|
4229caaadc
|
Disable large arrays for memory location too
|
2017-07-13 22:47:35 +02:00 |
|
Alex Beregszaszi
|
cb4875a28b
|
Issue error properly for oversized arrays for calldata
|
2017-07-13 22:33:46 +02:00 |
|
Alex Beregszaszi
|
b5da5f6e42
|
Merge pull request #2504 from ethereum/inlineasm-decl-empty
Support variable declarations without an assignment in assembly
|
2017-07-13 16:58:24 +02:00 |
|
chriseth
|
d1c3ecc94a
|
Merge pull request #2567 from ethereum/refactorExceptions
Refactor exceptions and provide comment function.
|
2017-07-13 16:56:03 +02:00 |
|
Alex Beregszaszi
|
8d90e6fc4e
|
Rename expectedItems to numVariables
|
2017-07-13 15:18:40 +02:00 |
|
Alex Beregszaszi
|
cee93d946d
|
Support parsing let statements without a value
|
2017-07-13 15:18:18 +02:00 |
|
chriseth
|
09e821619e
|
Refactor exceptions and provide comment function.
|
2017-07-13 11:34:03 +02:00 |
|
Federico Bond
|
f20b150f38
|
Add type error when attempting value transfer to a non-payable contract
|
2017-07-12 23:57:53 -03:00 |
|
chriseth
|
b7a59652f1
|
Merge pull request #2501 from ethereum/undef-macros
Move UndefMacros from libdevcore to libsolidity/parsing
|
2017-07-12 15:07:20 +02:00 |
|
Alex Beregszaszi
|
db7ad508f8
|
Issue proper warning trying to access calldata variables in inline assembly
|
2017-07-12 10:48:44 +02:00 |
|
chriseth
|
01a1296e90
|
Helper functions.
|
2017-07-11 11:24:41 +02:00 |
|
chriseth
|
883666d2c0
|
Fix invalid "explicit storage keyword" warning for reference members of structs.
|
2017-07-10 18:30:41 +02:00 |
|
chriseth
|
0400e61e28
|
Deprecate throw.
|
2017-07-05 21:15:00 +02:00 |
|
chriseth
|
4bde6fa961
|
Merge pull request #2528 from ethereum/warnNoStorage
Warn if local storage reference variable does not use "storage" explicitly.
|
2017-07-05 21:14:06 +02:00 |
|
chriseth
|
2dd9070a4f
|
Merge pull request #2527 from ethereum/onlyASTIfAnalysisSuccessful
Only output AST if the analysis was successful.
|
2017-07-05 20:40:25 +02:00 |
|
chriseth
|
dd34277ca6
|
Warn if local storage reference variable does not use "storage" explicitly.
|
2017-07-05 19:38:00 +02:00 |
|
chriseth
|
75f7f7e1e6
|
Do not omit error type.
|
2017-07-05 18:28:14 +02:00 |
|
chriseth
|
da48bcc51e
|
Only output AST if the analysis was successful.
|
2017-07-05 18:27:32 +02:00 |
|
chriseth
|
d58e439094
|
Fix internal "variable already present" error.
|
2017-07-04 19:33:55 +02:00 |
|
chriseth
|
2b233e7388
|
Merge pull request #2507 from ethereum/jsonio-safe
Handle parsing errors in StandardCompiler
|
2017-07-03 13:23:28 +02:00 |
|