Kamil Śliwak
c95108169d
Fix member call on null pointer
when type-checking built-in unary operators
2023-03-06 19:20:18 +01:00
wechman
5b03c13f90
User-defined operators: Analysis
2023-02-22 00:39:25 +01:00
Kamil Śliwak
1a981af548
Only suggest removing parentheses from a construction call if they're empty
2023-02-15 14:27:03 +01:00
Matheus Aguiar
2b70b08d5f
Allow library external functions to be bound with using for
2023-02-02 13:39:19 -03:00
Nikola Matic
e7543d487d
Issue warning when using deprecated SELFDESTRUCT
2023-01-25 16:55:11 +01:00
Rodrigo Q. Saramago
ef6ff2f055
Adds support for the EVM version "Paris".
...
Deprecates `block.difficulty` and disallow `difficulty()` in inline assembly for EVM versions >= paris.
The change is due to the renaming introduced by EIP-4399 (see: https://eips.ethereum.org/EIPS/eip-4399 ).
Introduces `block.prevrandao` in Solidity and `prevrandao()` in inline assembly for EVM versions >= paris.
Co-authored-by: Alex Beregszaszi <alex@rtfs.hu>
Co-authored-by: Daniel <daniel@ekpyron.org>
Co-authored-by: matheusaaguiar <95899911+matheusaaguiar@users.noreply.github.com>
Co-authored-by: Nikola Matić <nikola.matic@ethereum.org>
2023-01-23 18:50:36 +00:00
Matheus Aguiar
7779b6f352
Forbid private library functions to be attached outside their declaration scope
2023-01-17 16:27:35 -03:00
wechman
64a4f32bc2
Consistent terminology for attached/bound functions
2022-12-07 19:31:41 +01:00
wechman
27df07c4ce
TypeChecker: Minor simplifications for operators and using for
2022-11-23 13:27:26 +01:00
Kamil Śliwak
a866aaebf3
Refactor several error messages in TypeChecker to use fmtlib
2022-11-07 17:13:41 +01:00
wechman
6da09e8d9a
Error message tweak: built-in unary/binary operator
2022-11-07 17:13:41 +01:00
wechman
4c9a58eb0f
Don't include location in a message about binding function to a type
2022-11-07 17:13:09 +01:00
Marenz
f7cc29bec1
Add std:: qualifier to move() calls
2022-08-30 11:12:15 +02:00
Daniel Kirchner
9a429e2300
Fix ICE on invalid tuple assignments.
2022-08-09 12:41:47 +02:00
Nikola Matic
40de2b0442
Add full stops to error messages
2022-08-05 09:52:48 +02:00
Duc Thanh Nguyen
a9e03f5e4a
Fix out-of-range compiler crash for nested tuple assignment involving
...
outer unary tuple
2022-08-04 12:45:46 -04:00
Matheus Aguiar
9acf693aa2
Fixed bad cast when abiEncodeCall receives a tuple from a function.
2022-08-03 18:48:38 -03:00
Duc Thanh Nguyen
5072472917
Fix abi.encodeCall checks
2022-07-25 12:40:54 -04:00
Duc Thanh Nguyen
0a14368315
Display human readable type name in conversion error message
2022-07-06 10:49:51 -04:00
Ryan
3b2c6de61c
Propagate purity information for member access to foreign pure variables
2022-06-16 17:11:55 +05:30
Daniel Kirchner
16245f7b9b
Warn about multiple assignments to storage byte pushes and fix warnings about multiple storage to storage copies.
...
Co-authored-by: Kamil Śliwak <kamil.sliwak@codepoets.it>
2022-06-15 13:53:05 +02:00
Ryan
4b7ed2d47a
Display human readable type name in conversion error message
2022-06-08 18:23:51 +05:30
chriseth
505fa7763f
Fix checks for "using for ... global" for libraries.
2022-05-02 12:40:56 +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
9188519f11
Using for with global binding.
2022-03-14 17:39:14 +01:00
Daniel Kirchner
0f1a63c3fa
Fix import directive visits in type checker and view pure checker.
2022-03-14 14:53:06 +01:00
hrkrshnn
672951ccc7
Extend using-for.
2022-03-14 12:33:44 +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
047034544e
Merge branch 'develop' of github.com:tfire/solidity into fix/remove-namespace-ast-annotations
2022-03-09 18:55:22 -05:00
Tyler
519e1c9402
Specify namespaces
...
Fix references into solidity::util
2022-03-08 00:09:17 -05:00
Daniel Kirchner
9bcfcc61a7
Inline assembly without memory effects is implicitly memory safe.
2022-03-02 16:42:28 +01:00
nishant-sachdeva
276851ff91
Added support for FunctionType::Kind::StringConcat and functions string.concat
2022-02-10 22:08:47 +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
Marenz
0004ad8764
Fix ICE when a constant variable declaration forward references a struct
2022-01-17 13:24:14 +01:00
chriseth
e3bb5ab7b2
Merge pull request #12431 from ethereum/fixFun2
...
Safer constructors for FunctionType
2022-01-04 18:18:21 +01:00
chriseth
4c838d9cf5
abi.encodeCall for declarations.
2021-12-29 12:26:04 +01:00
chriseth
f94279a437
Use options struct for function type factory function.
2021-12-23 12:05:14 +01:00
mejsiej
ddd9a84141
Improve failure message when generating getter.
2021-12-20 18:16:27 +01:00
Marenz
7a96953e78
Implement typechecked abi.encodeCall()
2021-12-16 17:35:58 +01:00
nishant-sachdeva
a4fbc607c6
Issue 11610 : Replced typeError with fataTypeError in lines 390 and 406. Test file added in test/libsolidity/syntaxTests/calldata_struct_argument_with_internal_type_inside.sol
...
Issue : 11610 : Test cases updated, Changelog.md file updated to include change on 0.8.11
2021-12-03 12:23:35 +05:30
hrkrshnn
8815d6f5f0
Moved a check related to constants to TypeChecker
...
And added a proper error message when constant types containing (nested) mapping types are used.
2021-10-26 18:43:04 +02:00
hrkrshnn
51009c005d
Moved a canBeStored assert for struct members to TypeChecker
...
This is to avoid a assert from failing for forward declared user defined value types.
2021-10-26 18:43:04 +02:00
hrkrshnn
9428dbc94f
Moved storage size assert to TypeChecker from DeclarationTypeChecker
2021-10-26 18:43:04 +02:00
Marenz
98dd78362e
Add `.address
and
.selector
` in inside assembly for external function pointers
2021-10-04 18:05:57 +02:00
Kamil Śliwak
ce4420f857
Separate DebugData fields for Solidity and Yul source locations
2021-09-22 13:11:39 +02:00
Marenz
7a51acc5fe
Correct wrong error message referencing .slot
and .offset
when .length
was used
2021-09-21 18:28:38 +02:00
Leo Alt
e72fa7fc10
Add new info severity
2021-09-13 22:48:22 +02:00