chriseth
505fa7763f
Fix checks for "using for ... global" for libraries.
2022-05-02 12:40:56 +02:00
Alexey Shekhirin
cb24e5d545
fix(parser): error for unexpected token
2022-04-29 16:13:04 +04:00
Leo Alt
f9fa76c9d3
smt encode call
2022-04-11 12:19:41 +02:00
Joshua Quinones
e1a59397c6
Renamed AssemblyStack to YulStack
...
All files, references, variables, comments, etc. were renamed to YulStack.
2022-04-08 20:28:55 +02:00
Ryan
3a17274691
Improve error message for static array with size too large
2022-04-05 17:36:37 +02:00
Christian Parpart
2d07ea3d42
Implements $/setTrace and uses trace logging.
...
For helping the caller to know in advance how many files are expected
with a response for publishDiagnostics.
2022-04-05 13:51:42 +02:00
Aisultan Kali
96376264e8
Set handlers use unified jsonPrint with prettifier if needed
2022-04-04 20:17:11 +02:00
chriseth
755e043a6d
Use error message for unary operators.
2022-04-04 16:53:36 +05:30
nishant-sachdeva
4c6066bfad
typeCheckAbiEncodeCallFunction should type check the arguments on functionPointerType->asExternallyCallableFunction instead of teh plain function type
2022-03-24 18:53:46 +05:30
chriseth
28593839d9
Add helper to see if a switch has a default case.
2022-03-15 14:29:54 +01:00
Daniel Kirchner
8cb01a9953
Fix and updated test.
2022-03-15 10:23:09 +01:00
chriseth
9188519f11
Using for with global binding.
2022-03-14 17:39:14 +01:00
chriseth
7f360e61fc
Merge pull request #12781 from ethereum/fixImportDirectiveVisits
...
Fix import directive visits in type checker and view pure checker.
2022-03-14 15:35:37 +01:00
Daniel Kirchner
0f1a63c3fa
Fix import directive visits in type checker and view pure checker.
2022-03-14 14:53:06 +01:00
Daniel Kirchner
0172f61340
No longer mark Yul as experimental.
2022-03-14 14:48:01 +01:00
Daniel Kirchner
e58c0b561d
Mark viaIR code generation as non-experimental.
2022-03-14 14:48:00 +01:00
chriseth
3f6beaa0ad
Merge pull request #12121 from ethereum/extend-using-statement
...
Extend using statement
2022-03-14 14:10:16 +01:00
hrkrshnn
672951ccc7
Extend using-for.
2022-03-14 12:33:44 +01:00
Christian Parpart
2b2f8acc12
LSP: Implements goto-definition.
2022-03-14 11:59:41 +01:00
Christian Parpart
1035eacb53
LSP: Introduce HandlerBase for future LSP-feature implementations.
2022-03-14 10:52:39 +01:00
Daniel Kirchner
09f667948b
Merge pull request #12746 from tfire/fix/remove-namespace-ast-annotations
...
Remove use of `using namespace` in header file
2022-03-11 12:49:13 +01:00
nishant-sachdeva
624d2d3968
Error messages from abi encodecall are giving more details about the types of the involved variables
2022-03-11 16:14:55 +05:30
Tyler
1c58b91075
Merge branch 'develop' of github.com:tfire/solidity into fix/remove-namespace-ast-annotations
2022-03-10 17:39:29 -05:00
Tyler
1653b6c5b7
more qualifying
2022-03-10 17:36:46 -05:00
chriseth
4f02be110c
Unused store eliminator.
2022-03-10 18:25:28 +01:00
Daniel Kirchner
2b201f21a1
Merge pull request #12758 from ethereum/accessToTypeDefinition
...
Provide generic access to type definition for user-defined types.
2022-03-10 13:16:39 +01:00
Tyler
047034544e
Merge branch 'develop' of github.com:tfire/solidity into fix/remove-namespace-ast-annotations
2022-03-09 18:55:22 -05:00
Daniel Kirchner
e0c837b33b
Remove isCreation flag from OptimiserSettings.
2022-03-09 17:53:28 +01:00
Daniel Kirchner
ce0a3e93f2
Store whether an evmasm Assembly is creation code.
2022-03-09 17:42:29 +01:00
chriseth
7bd6cba79c
Provide generic access to type definition for user-defined types.
2022-03-09 10:41:57 +01:00
Tyler
519e1c9402
Specify namespaces
...
Fix references into solidity::util
2022-03-08 00:09:17 -05:00
chriseth
77c40cd2af
Merge pull request #12740 from ethereum/remove-locale-dependent-operations
...
Replace all locale-dependent operations with locale-agnostic counterparts
2022-03-07 17:56:58 +01:00
wechman
52dfccca98
Replace all locale-dependent operations with locale-agnostic counterparts
2022-03-07 17:23:08 +01:00
chriseth
57e012da98
Merge pull request #12663 from ethereum/assemblyAnnotationDialectString
...
Assembly annotation as memory-safe using assembly flags.
2022-03-07 13:03:08 +01:00
chriseth
4f19d68ee9
Merge pull request #12620 from ethereum/assemblyAnnotation
...
Memory-safety annotation for inline assembly.
2022-03-07 12:48:41 +01:00
Tyler
a890c82f9d
Remove use of using namespace
in header file
2022-03-06 23:16:10 -05:00
nishant-sachdeva
beabc51c20
returnSize assigned according to truth value of returnInfo.dynamicReturnSize
2022-03-03 18:55:10 +05:30
Daniel Kirchner
290b1c3a90
Allow memory-safe inline assembly dialect flag.
2022-03-02 17:07:11 +01:00
Daniel Kirchner
9bcfcc61a7
Inline assembly without memory effects is implicitly memory safe.
2022-03-02 16:42:28 +01:00
Daniel Kirchner
e6848caac1
Allow annotating inline assembly as memory-safe.
2022-03-02 16:42:28 +01:00
chriseth
b0dcd7b915
Split out disassemble to remove numeric from instruction includes.
2022-03-02 15:30:41 +01:00
chriseth
ebd584fcfb
Merge pull request #12206 from ethereum/extractExternalFunctionPart
...
Extract external function part
2022-02-28 13:04:14 +01:00
Kamil Śliwak
8962d53e3c
Merge pull request #12701 from a3d4/fix-running-tests-from-any-drive
...
Fix running path-related tests from any Windows drive
2022-02-28 12:58:45 +01:00
chriseth
ca4c983973
Merge pull request #12695 from ethereum/less-confusing-err
...
Make error message less confusing
2022-02-28 12:36:47 +01:00
a3d4
50ae21d1bf
Fix running tests from any drive
2022-02-22 18:11:42 +01:00
nishant-sachdeva
195f72e844
Added errorSelector field for custom errors
2022-02-21 19:14:33 +05:30
chriseth
106921c278
Extract external function part into its own function.
2022-02-21 14:32:52 +01:00
Marenz
175580fe90
Make error message less confusing
2022-02-17 16:52:36 +01:00
Daniel Kirchner
c47da51eab
Consider all grandparents in override analysis.
2022-02-14 15:31:31 +01:00
nishant-sachdeva
276851ff91
Added support for FunctionType::Kind::StringConcat and functions string.concat
2022-02-10 22:08:47 +05:30
Marenz
46075d04d9
Include used events in `--hashes
` output
2022-02-09 13:50:42 +01:00
Marenz
3e7c68d9b0
Merge identifier query methods into one
2022-02-08 17:44:21 +01:00
joshieDo
9e62f21b25
Add event and error identifiers to cli hashes cmd
2022-02-08 17:44:21 +01:00
chriseth
5c3bcb6c2d
Merge pull request #12434 from ethereum/outputLocations
...
Output searched locations on import failure.
2022-02-08 17:16:46 +01:00
joshuatarkwski
6225dad332
Output searched locations on import failure.
2022-02-08 16:20:27 +01:00
Kamil Śliwak
28bc5db576
Merge pull request #12598 from a3d4/case-insensitive-root-in-normalizeclipathforvfs
...
Treat root path in normalizeCLIPathForVFS as case insensitive on Windows
2022-02-08 13:17:05 +01:00
Mathias L. Baumann
c139d39b9b
Merge pull request #12589 from ethereum/emit-immutable-references
...
Emit immutable references for pure yul code
2022-02-07 13:21:44 +01:00
Marenz
b9fe628b70
Emit immutable references for pure yul code
2022-02-07 12:32:54 +01:00
a3d4
0a17495cf9
Treat root path in normalizeCLIPathForVFS as case insensitive on Windows
2022-02-05 11:51:11 +01:00
nishant-sachdeva
e85bceb417
Types.h:872 had a comment /// String is interpreted as a subtype of
...
Bytes. - this was now incorrect after #12593 . That has been removed
now.
2022-02-04 15:49:08 +05:30
nishant-sachdeva
cc6344c03c
Changed instaces of isByteArrayOrString() to isByteArray() where it's only supposed to return a True for Bytes Type
2022-02-02 17:05:26 +05:30
nishant-sachdeva
9043621747
Changed occurences of isByteArray() to isByteArrayOrString(). The idea
...
is to, in a future commit, replace such occurences of
isByteArrayOrString() which are required to return True only for Bytes
type with a new isByteArray() function.
2022-02-02 14:19:58 +05:30
nishant-sachdeva
e2711b7fab
Corresponding code in the .cpp file has been commented instead of begin removed pending preliminary reviews
...
Code generators needed fixing of the cleanup process during typecasting of bytes and integers
2022-02-01 16:07:55 +05:30
hrkrshnn
0fe5811459
Fixed a ICE on calldata to struct member copy
2022-01-31 17:26:11 +01:00
nishant-sachdeva
dec511aad8
Corresponding code in the .cpp file has been commented instead of begin removed pending preliminary reviews
...
Code generators needed fixing of the cleanup process during typecasting of bytes and integers
2022-01-28 19:56:15 +05:30
Mathias L. Baumann
b6dbfdf79b
Merge pull request #12494 from ethereum/AST-ImportDirective-traversal-fix
...
Adds missing accepts to ImportDirective's SymbolAlias::symbol.
2022-01-24 13:27:00 +01:00
Marenz
6f4709d383
Remove empty assert messages
2022-01-20 15:11:26 +01:00
Marenz
a550048cf0
Fix too strict assert for calldata string -> bytes conversions
2022-01-20 15:11:26 +01:00
nishant-sachdeva
27d0480e96
Adding Stack Height Checker and modifying the number of POP instructions to appropriately provide the pointer address
2022-01-20 01:15:08 +05:30
Daniel Kirchner
92c262d116
Merge pull request #12553 from ethereum/ir-ice-12546
...
Fix .push() not considering external functions
2022-01-19 13:41:20 +01:00
nishant-sachdeva
a0d6c11860
Equality operator allowed for external function types
2022-01-19 15:20:31 +05:30
Marenz
89d6bff72a
Fix .push() not considering external functions
2022-01-18 16:30:31 +01:00
Marenz
7c0a121e45
Natspec: Fix ICE when overriding a struct getter with a Natspec-documented return value and the name in the struct is different.
2022-01-17 17:10:07 +01:00
Marenz
0004ad8764
Fix ICE when a constant variable declaration forward references a struct
2022-01-17 13:24:14 +01:00
Marenz
2c4c8264e4
Fix wrong error with immutables when base contract c'tor uses return
2022-01-13 13:09:36 +01:00
Christian Parpart
f5ff358add
Adds missing accepts to ImportDirective's SymbolAlias::symbol
2022-01-10 19:32:28 +01:00
Mathias L. Baumann
63b6bbe15c
Merge pull request #12471 from ethereum/modifiers-control-flow-11483
...
Properly generated control flows for inherited modifiers
2022-01-06 13:39:50 +01:00
Marenz
e969aed780
Properly resolve virtual modifiers
2022-01-06 12:52:06 +01:00
Christian Parpart
1bd0f9570f
LSP: Introduces lspAssert(condition, ErrorCode, message)
2022-01-05 11:30:04 +01:00
chriseth
c16867cb83
Merge pull request #12272 from ethereum/equalStoreEliminator
...
Equal store eliminator.
2022-01-05 11:24:59 +01:00
Christian Parpart
4105b0a587
LSP: Introduce HandlerError(id, code, message) exception for easier handling.
2022-01-05 11:04:40 +01:00
chriseth
e3bb5ab7b2
Merge pull request #12431 from ethereum/fixFun2
...
Safer constructors for FunctionType
2022-01-04 18:18:21 +01:00
chriseth
772e100813
Equal store eliminator.
2022-01-03 15:52:05 +01:00
chriseth
692614df72
Merge pull request #12437 from ethereum/encodeCallForDeclarations
...
abi.encodeCall for declarations.
2021-12-29 18:40:18 +01:00
Leo
048a8f4d28
Merge pull request #12455 from ethereum/smt_analyze_contracts
...
[SMTChecker] Do not analyze unecessary contracts
2021-12-29 15:14:35 +01:00
Marenz
b95db2db5e
Remove unnecessary checks in modifier resolve function
2021-12-29 13:27:10 +01:00
chriseth
4c838d9cf5
abi.encodeCall for declarations.
2021-12-29 12:26:04 +01:00
Leo Alt
fb8c138b8b
Do not analyze unecessary contracts
2021-12-24 19:36:32 +01:00
chriseth
7620bfaad8
Add option member for function type.
2021-12-23 12:05:18 +01:00
chriseth
f94279a437
Use options struct for function type factory function.
2021-12-23 12:05:14 +01:00
chriseth
4fa8eee683
Use function names instead of members.
2021-12-23 11:55:33 +01:00
chriseth
ef6dd2ec50
Merge pull request #12433 from ethereum/removeConstexpr
...
Remove constexpr.
2021-12-21 16:03:58 +01:00
mejsiej
ddd9a84141
Improve failure message when generating getter.
2021-12-20 18:16:27 +01:00
chriseth
c374d27eec
Remove constexpr.
2021-12-20 17:30:20 +01:00
chriseth
3193dfbb5d
Merge pull request #11350 from ethereum/lsp
...
Language Server
2021-12-16 18:54:26 +01:00
Christian Parpart
927b24df1f
Initial implementation of Language Server
2021-12-16 17:52:49 +01:00
Marenz
7a96953e78
Implement typechecked abi.encodeCall()
2021-12-16 17:35:58 +01:00
nishant-sachdeva
9b55d4788e
Added sameType check for fromType and toType in YulUtilFunctions.cpp and relevant tests in semanticTests
2021-12-15 23:50:25 +05:30
Leo Alt
316be7206f
Fix soundness of storage/memory pointers that were not erasing enough knowledge
2021-12-14 12:02:18 +01:00
chriseth
c0b41cfcdd
Add const and file name.
2021-12-13 17:33:48 +01:00