Skip to content
This repository has been archived by the owner on Jul 2, 2021. It is now read-only.

Fixing of issue 280 #300

Open
wants to merge 74 commits into
base: master
Choose a base branch
from
Open

Fixing of issue 280 #300

wants to merge 74 commits into from

Conversation

jthoene
Copy link
Collaborator

@jthoene jthoene commented Aug 13, 2019

This fixes #280

The test coverage for compiler errors, warnings and it's quickfixes, now
looks like the following:

Compiler Error/Warning Quickfix Status
ERROR_CONSTANT_MODIFIER_WAS_REMOVED Quickfix tested
ERROR_DATA_LOCATION_MUST_BE_CALLDATA_FOR_EXTERNAL_PARAMETER Quickfix tested
ERROR_DATA_LOCATION_MUST_BE_MEMORY_FOR_PARAMETER Quickfix tested
ERROR_DATA_LOCATION_MUST_BE_MEMORY_FOR_RETURN_PARAMETER Quickfix tested
ERROR_DATA_LOCATION_MUST_BE_MEMORY_OR_STORAGE_FOR_RETURN_PARAMETER Quickfix tested
ERROR_DATALOCATION_MUST_BE_STORAGE Not reproducable
ERROR_DATA_LOCATION_MUST_BE_SPECIFIED_FOR_VARIABLE Quickfix tested
ERROR_DATA_LOCATION_MUST_BE_STORAGE_OR_MEMORY_FOR_PARAMETER Quickfix tested
ERROR_FUNCTION_DECLARED_AS_PURE_BUT_MUST_BE_VIEW Not reproducable
ERROR_FUNCTION_DECLARED_AS_VIEW_BUT_MUST_BE_PAYABLE_OR_NON_PAYABLE Quickfix tested
ERROR_FUNCTION_NAME_EQUALS_CONTRACT_NAME_DISALLOWED Quickfix tested
ERROR_INVALID_IMPLICID_CONVERSION_TO_ADDRESS_PAYABLE Quickfix tested
ERROR_MEMBER_TRANSFER_NOT_FOUND_OR_VISIBLE No Quickfix available
ERROR_NO_VISIBILITY_SPECIFIED Quickfix tested
ERROR_STATE_MUTABILITY_ONLY_ALLOWED_FOR_ADDRESS Quickfix tested
ERROR_THROW_KEYWORD_DISALLOWED Quickfix tested
ERROR_VAR_KEYWORD_DISALLOWED Quickfix doesn't work because of issue #299
ERROR_YEARS_IS_DISALLOWED Quickfix tested
ERROR_DEPRECATED_SUICIDE Quickfix tested
ERROR_DEPRECATED_SHA3 Quickfix tested
ERROR_INTERFACE_FUNCTIONS_CAN_NOT_HAVE_MODIFIERS Quickfix tested
ERROR_MSG_VALUE_ONLY_ALLOWED_IN_PAYABLE No Quickfix available
WARNING_DEPRECATED_CALLCODE Overshadowed by an error
WARNING_DEPRECATED_FUNCTION_CONSTRUCTOR Overshadowed by ERROR_FUNCTION_NAME_EQUALS_CONTRACT_NAME_DISALLOWED
WARNING_DEPRECATED_NAMED_FUNCTION_PARAMETERS Not producable by the compiler
WARNING_DEPRECATED_NAMED_FUNCTION_RETURN_VALUES Not producable by the compiler
WARNING_DEPRECATED_SHA3 Overshadowed by ERROR_DEPRECATED_SHA3
WARNING_DEPRECATED_SUICIDE Overshadowed by ERROR_DEPRECATED_SUICIDE
WARNING_DEPRECATED_THROW Overshadowed by ERROR_THROW_KEYWORD_DISALLOWED
WARNING_FILE_NO_PRAGMA_SOLIDITY Quickfix tested
WARNING_FUNCTION_STATE_MUTABILITY_PURE Quickfix tested
WARNING_FUNCTION_STATE_MUTABILITY_VIEW Quickfix tested
WARNING_FUNCTION_UNUSED_PARAMETER Quickfix tested
WARNING_FUNCTION_VISIBILITY Overshadowed by ERROR_NO_VISIBILITY_SPECIFIED
WARNING_LOCAL_VARIABLE_UNUSED Quickfix tested
WARNING_MSG_VALUE_IN_NON_PAYABLE Overshadowed by ERROR_MSG_VALUE_ONLY_ALLOWED_IN_PAYABLE
WARNING_SHADOWED_DECLARATION No Quickfix available
WARNING_SOLIDITY_VERSION_NOT_THE_DEFAULT Warning seems to be removed by the newer compiler version
WARNING_USSAGE_OF_SEND Quickfix tested
WARNING_VARIABLE_STORAGE_POINTER Overshadowed by an equivalent error, which is not documented by us at the moment

jthoene and others added 9 commits August 1, 2019 11:17
This commit fixes #284
but the function for checking doesnt work
yet(getLengthOfAssemblyExpression), maybe use
IHiddenRegionFormatter.setOnAutowrap
The test coverage for compiler errors, warnings and it's quickfixes, now
looks like the following:

// Compiler ERRORS
	String ERROR_CONSTANT_MODIFIER_WAS_REMOVED = Quickfix tested
	String ERROR_DATA_LOCATION_MUST_BE_CALLDATA_FOR_EXTERNAL_PARAMETER =
Quickfix tested
	String ERROR_DATA_LOCATION_MUST_BE_MEMORY_FOR_PARAMETER = Quickfix
tested
	String ERROR_DATA_LOCATION_MUST_BE_MEMORY_FOR_RETURN_PARAMETER =
Quickfix tested
	String ERROR_DATA_LOCATION_MUST_BE_MEMORY_OR_STORAGE_FOR_RETURN_PARAMETER
= Quickfix tested
	String ERROR_DATALOCATION_MUST_BE_STORAGE = Not reproducable
	String ERROR_DATA_LOCATION_MUST_BE_SPECIFIED_FOR_VARIABLE = Quickfix
tested
	String ERROR_DATA_LOCATION_MUST_BE_STORAGE_OR_MEMORY_FOR_PARAMETER =
Quickfix tested
	String ERROR_FUNCTION_DECLARED_AS_PURE_BUT_MUST_BE_VIEW = Not
reproducable
	String ERROR_FUNCTION_DECLARED_AS_VIEW_BUT_MUST_BE_PAYABLE_OR_NON_PAYABLE
= Quickfix tested
	String ERROR_FUNCTION_NAME_EQUALS_CONTRACT_NAME_DISALLOWED = Quickfix
tested
	String ERROR_INVALID_IMPLICID_CONVERSION_TO_ADDRESS_PAYABLE = Quickfix
tested
	String ERROR_MEMBER_TRANSFER_NOT_FOUND_OR_VISIBLE = No Quickfix
available
	String ERROR_NO_VISIBILITY_SPECIFIED = Quickfix tested
	String ERROR_STATE_MUTABILITY_ONLY_ALLOWED_FOR_ADDRESS = Quickfix
tested
	String ERROR_THROW_KEYWORD_DISALLOWED = Quickfix tested
	String ERROR_VAR_KEYWORD_DISALLOWED = Quickfix doesn't work because of
bug
	String ERROR_YEARS_IS_DISALLOWED = Quickfix tested
	String ERROR_DEPRECATED_SUICIDE = Quickfix tested
	String ERROR_DEPRECATED_SHA3 = Quickfix tested
	String ERROR_INTERFACE_FUNCTIONS_CAN_NOT_HAVE_MODIFIERS = Quickfix
tested
	String ERROR_MSG_VALUE_ONLY_ALLOWED_IN_PAYABLE = No Quickfix available

// Compiler WARNINGS
	String WARNING_DEPRECATED_CALLCODE = Overshadowed by an error
	String WARNING_DEPRECATED_FUNCTION_CONSTRUCTOR = Overshadowed by
ERROR_FUNCTION_NAME_EQUALS_CONTRACT_NAME_DISALLOWED
	String WARNING_DEPRECATED_NAMED_FUNCTION_PARAMETERS = Not producable by
the compiler
	String WARNING_DEPRECATED_NAMED_FUNCTION_RETURN_VALUES = Not producable
by the compiler
	String WARNING_DEPRECATED_SHA3 = Overshadowed by ERROR_DEPRECATED_SHA3
	String WARNING_DEPRECATED_SUICIDE = Overshadowed by
ERROR_DEPRECATED_SUICIDE
	String WARNING_DEPRECATED_THROW = Overshadowed by
ERROR_THROW_KEYWORD_DISALLOWED
	String WARNING_FILE_NO_PRAGMA_SOLIDITY = Quickfix tested
	String WARNING_FUNCTION_STATE_MUTABILITY_PURE = Quickfix tested
	String WARNING_FUNCTION_STATE_MUTABILITY_VIEW = Quickfix tested
	String WARNING_FUNCTION_UNUSED_PARAMETER = Quickfix tested
	String WARNING_FUNCTION_VISIBILITY = Overshadowed by
ERROR_NO_VISIBILITY_SPECIFIED
	String WARNING_LOCAL_VARIABLE_UNUSED = Quickfix tested
	String WARNING_MSG_VALUE_IN_NON_PAYABLE = Overshadowed by
ERROR_MSG_VALUE_ONLY_ALLOWED_IN_PAYABLE
	String WARNING_SHADOWED_DECLARATION = No Quickfix available
	String WARNING_SOLIDITY_VERSION_NOT_THE_DEFAULT = Warning seems to be
removed by the newer compiler version
	String WARNING_USSAGE_OF_SEND = Quickfix tested
	String WARNING_VARIABLE_STORAGE_POINTER = Overshadowed by an equivalent
error, which is not documented by us at the moment
@jthoene jthoene requested a review from flantony August 13, 2019 13:16
This commit fixes #284
The test coverage for compiler errors, warnings and it's quickfixes, now
looks like the following:

// Compiler ERRORS
	String ERROR_CONSTANT_MODIFIER_WAS_REMOVED = Quickfix tested
	String ERROR_DATA_LOCATION_MUST_BE_CALLDATA_FOR_EXTERNAL_PARAMETER =
Quickfix tested
	String ERROR_DATA_LOCATION_MUST_BE_MEMORY_FOR_PARAMETER = Quickfix
tested
	String ERROR_DATA_LOCATION_MUST_BE_MEMORY_FOR_RETURN_PARAMETER =
Quickfix tested
	String ERROR_DATA_LOCATION_MUST_BE_MEMORY_OR_STORAGE_FOR_RETURN_PARAMETER
= Quickfix tested
	String ERROR_DATALOCATION_MUST_BE_STORAGE = Not reproducable
	String ERROR_DATA_LOCATION_MUST_BE_SPECIFIED_FOR_VARIABLE = Quickfix
tested
	String ERROR_DATA_LOCATION_MUST_BE_STORAGE_OR_MEMORY_FOR_PARAMETER =
Quickfix tested
	String ERROR_FUNCTION_DECLARED_AS_PURE_BUT_MUST_BE_VIEW = Not
reproducable
	String ERROR_FUNCTION_DECLARED_AS_VIEW_BUT_MUST_BE_PAYABLE_OR_NON_PAYABLE
= Quickfix tested
	String ERROR_FUNCTION_NAME_EQUALS_CONTRACT_NAME_DISALLOWED = Quickfix
tested
	String ERROR_INVALID_IMPLICID_CONVERSION_TO_ADDRESS_PAYABLE = Quickfix
tested
	String ERROR_MEMBER_TRANSFER_NOT_FOUND_OR_VISIBLE = No Quickfix
available
	String ERROR_NO_VISIBILITY_SPECIFIED = Quickfix tested
	String ERROR_STATE_MUTABILITY_ONLY_ALLOWED_FOR_ADDRESS = Quickfix
tested
	String ERROR_THROW_KEYWORD_DISALLOWED = Quickfix tested
	String ERROR_VAR_KEYWORD_DISALLOWED = Quickfix doesn't work because of
bug
	String ERROR_YEARS_IS_DISALLOWED = Quickfix tested
	String ERROR_DEPRECATED_SUICIDE = Quickfix tested
	String ERROR_DEPRECATED_SHA3 = Quickfix tested
	String ERROR_INTERFACE_FUNCTIONS_CAN_NOT_HAVE_MODIFIERS = Quickfix
tested
	String ERROR_MSG_VALUE_ONLY_ALLOWED_IN_PAYABLE = No Quickfix available

// Compiler WARNINGS
	String WARNING_DEPRECATED_CALLCODE = Overshadowed by an error
	String WARNING_DEPRECATED_FUNCTION_CONSTRUCTOR = Overshadowed by
ERROR_FUNCTION_NAME_EQUALS_CONTRACT_NAME_DISALLOWED
	String WARNING_DEPRECATED_NAMED_FUNCTION_PARAMETERS = Not producable by
the compiler
	String WARNING_DEPRECATED_NAMED_FUNCTION_RETURN_VALUES = Not producable
by the compiler
	String WARNING_DEPRECATED_SHA3 = Overshadowed by ERROR_DEPRECATED_SHA3
	String WARNING_DEPRECATED_SUICIDE = Overshadowed by
ERROR_DEPRECATED_SUICIDE
	String WARNING_DEPRECATED_THROW = Overshadowed by
ERROR_THROW_KEYWORD_DISALLOWED
	String WARNING_FILE_NO_PRAGMA_SOLIDITY = Quickfix tested
	String WARNING_FUNCTION_STATE_MUTABILITY_PURE = Quickfix tested
	String WARNING_FUNCTION_STATE_MUTABILITY_VIEW = Quickfix tested
	String WARNING_FUNCTION_UNUSED_PARAMETER = Quickfix tested
	String WARNING_FUNCTION_VISIBILITY = Overshadowed by
ERROR_NO_VISIBILITY_SPECIFIED
	String WARNING_LOCAL_VARIABLE_UNUSED = Quickfix tested
	String WARNING_MSG_VALUE_IN_NON_PAYABLE = Overshadowed by
ERROR_MSG_VALUE_ONLY_ALLOWED_IN_PAYABLE
	String WARNING_SHADOWED_DECLARATION = No Quickfix available
	String WARNING_SOLIDITY_VERSION_NOT_THE_DEFAULT = Warning seems to be
removed by the newer compiler version
	String WARNING_USSAGE_OF_SEND = Quickfix tested
	String WARNING_VARIABLE_STORAGE_POINTER = Overshadowed by an equivalent
error, which is not documented by us at the moment
https://github.com/Yakindu/solidity-ide.git into issues_279_280

Conflicts:
	plugins/com.yakindu.solidity.ui/src/com/yakindu/solidity/ui/quickfix/SolidityQuickfixProvider.xtend
nyssen and others added 30 commits August 23, 2019 09:36
Maven Build finally runs (at least locally)
This commit fixes #284
The test coverage for compiler errors, warnings and it's quickfixes, now
looks like the following:

// Compiler ERRORS
	String ERROR_CONSTANT_MODIFIER_WAS_REMOVED = Quickfix tested
	String ERROR_DATA_LOCATION_MUST_BE_CALLDATA_FOR_EXTERNAL_PARAMETER =
Quickfix tested
	String ERROR_DATA_LOCATION_MUST_BE_MEMORY_FOR_PARAMETER = Quickfix
tested
	String ERROR_DATA_LOCATION_MUST_BE_MEMORY_FOR_RETURN_PARAMETER =
Quickfix tested
	String ERROR_DATA_LOCATION_MUST_BE_MEMORY_OR_STORAGE_FOR_RETURN_PARAMETER
= Quickfix tested
	String ERROR_DATALOCATION_MUST_BE_STORAGE = Not reproducable
	String ERROR_DATA_LOCATION_MUST_BE_SPECIFIED_FOR_VARIABLE = Quickfix
tested
	String ERROR_DATA_LOCATION_MUST_BE_STORAGE_OR_MEMORY_FOR_PARAMETER =
Quickfix tested
	String ERROR_FUNCTION_DECLARED_AS_PURE_BUT_MUST_BE_VIEW = Not
reproducable
	String ERROR_FUNCTION_DECLARED_AS_VIEW_BUT_MUST_BE_PAYABLE_OR_NON_PAYABLE
= Quickfix tested
	String ERROR_FUNCTION_NAME_EQUALS_CONTRACT_NAME_DISALLOWED = Quickfix
tested
	String ERROR_INVALID_IMPLICID_CONVERSION_TO_ADDRESS_PAYABLE = Quickfix
tested
	String ERROR_MEMBER_TRANSFER_NOT_FOUND_OR_VISIBLE = No Quickfix
available
	String ERROR_NO_VISIBILITY_SPECIFIED = Quickfix tested
	String ERROR_STATE_MUTABILITY_ONLY_ALLOWED_FOR_ADDRESS = Quickfix
tested
	String ERROR_THROW_KEYWORD_DISALLOWED = Quickfix tested
	String ERROR_VAR_KEYWORD_DISALLOWED = Quickfix doesn't work because of
bug
	String ERROR_YEARS_IS_DISALLOWED = Quickfix tested
	String ERROR_DEPRECATED_SUICIDE = Quickfix tested
	String ERROR_DEPRECATED_SHA3 = Quickfix tested
	String ERROR_INTERFACE_FUNCTIONS_CAN_NOT_HAVE_MODIFIERS = Quickfix
tested
	String ERROR_MSG_VALUE_ONLY_ALLOWED_IN_PAYABLE = No Quickfix available

// Compiler WARNINGS
	String WARNING_DEPRECATED_CALLCODE = Overshadowed by an error
	String WARNING_DEPRECATED_FUNCTION_CONSTRUCTOR = Overshadowed by
ERROR_FUNCTION_NAME_EQUALS_CONTRACT_NAME_DISALLOWED
	String WARNING_DEPRECATED_NAMED_FUNCTION_PARAMETERS = Not producable by
the compiler
	String WARNING_DEPRECATED_NAMED_FUNCTION_RETURN_VALUES = Not producable
by the compiler
	String WARNING_DEPRECATED_SHA3 = Overshadowed by ERROR_DEPRECATED_SHA3
	String WARNING_DEPRECATED_SUICIDE = Overshadowed by
ERROR_DEPRECATED_SUICIDE
	String WARNING_DEPRECATED_THROW = Overshadowed by
ERROR_THROW_KEYWORD_DISALLOWED
	String WARNING_FILE_NO_PRAGMA_SOLIDITY = Quickfix tested
	String WARNING_FUNCTION_STATE_MUTABILITY_PURE = Quickfix tested
	String WARNING_FUNCTION_STATE_MUTABILITY_VIEW = Quickfix tested
	String WARNING_FUNCTION_UNUSED_PARAMETER = Quickfix tested
	String WARNING_FUNCTION_VISIBILITY = Overshadowed by
ERROR_NO_VISIBILITY_SPECIFIED
	String WARNING_LOCAL_VARIABLE_UNUSED = Quickfix tested
	String WARNING_MSG_VALUE_IN_NON_PAYABLE = Overshadowed by
ERROR_MSG_VALUE_ONLY_ALLOWED_IN_PAYABLE
	String WARNING_SHADOWED_DECLARATION = No Quickfix available
	String WARNING_SOLIDITY_VERSION_NOT_THE_DEFAULT = Warning seems to be
removed by the newer compiler version
	String WARNING_USSAGE_OF_SEND = Quickfix tested
	String WARNING_VARIABLE_STORAGE_POINTER = Overshadowed by an equivalent
error, which is not documented by us at the moment
This commit fixes #284
The test coverage for compiler errors, warnings and it's quickfixes, now
looks like the following:

// Compiler ERRORS
	String ERROR_CONSTANT_MODIFIER_WAS_REMOVED = Quickfix tested
	String ERROR_DATA_LOCATION_MUST_BE_CALLDATA_FOR_EXTERNAL_PARAMETER =
Quickfix tested
	String ERROR_DATA_LOCATION_MUST_BE_MEMORY_FOR_PARAMETER = Quickfix
tested
	String ERROR_DATA_LOCATION_MUST_BE_MEMORY_FOR_RETURN_PARAMETER =
Quickfix tested
	String ERROR_DATA_LOCATION_MUST_BE_MEMORY_OR_STORAGE_FOR_RETURN_PARAMETER
= Quickfix tested
	String ERROR_DATALOCATION_MUST_BE_STORAGE = Not reproducable
	String ERROR_DATA_LOCATION_MUST_BE_SPECIFIED_FOR_VARIABLE = Quickfix
tested
	String ERROR_DATA_LOCATION_MUST_BE_STORAGE_OR_MEMORY_FOR_PARAMETER =
Quickfix tested
	String ERROR_FUNCTION_DECLARED_AS_PURE_BUT_MUST_BE_VIEW = Not
reproducable
	String ERROR_FUNCTION_DECLARED_AS_VIEW_BUT_MUST_BE_PAYABLE_OR_NON_PAYABLE
= Quickfix tested
	String ERROR_FUNCTION_NAME_EQUALS_CONTRACT_NAME_DISALLOWED = Quickfix
tested
	String ERROR_INVALID_IMPLICID_CONVERSION_TO_ADDRESS_PAYABLE = Quickfix
tested
	String ERROR_MEMBER_TRANSFER_NOT_FOUND_OR_VISIBLE = No Quickfix
available
	String ERROR_NO_VISIBILITY_SPECIFIED = Quickfix tested
	String ERROR_STATE_MUTABILITY_ONLY_ALLOWED_FOR_ADDRESS = Quickfix
tested
	String ERROR_THROW_KEYWORD_DISALLOWED = Quickfix tested
	String ERROR_VAR_KEYWORD_DISALLOWED = Quickfix doesn't work because of
bug
	String ERROR_YEARS_IS_DISALLOWED = Quickfix tested
	String ERROR_DEPRECATED_SUICIDE = Quickfix tested
	String ERROR_DEPRECATED_SHA3 = Quickfix tested
	String ERROR_INTERFACE_FUNCTIONS_CAN_NOT_HAVE_MODIFIERS = Quickfix
tested
	String ERROR_MSG_VALUE_ONLY_ALLOWED_IN_PAYABLE = No Quickfix available

// Compiler WARNINGS
	String WARNING_DEPRECATED_CALLCODE = Overshadowed by an error
	String WARNING_DEPRECATED_FUNCTION_CONSTRUCTOR = Overshadowed by
ERROR_FUNCTION_NAME_EQUALS_CONTRACT_NAME_DISALLOWED
	String WARNING_DEPRECATED_NAMED_FUNCTION_PARAMETERS = Not producable by
the compiler
	String WARNING_DEPRECATED_NAMED_FUNCTION_RETURN_VALUES = Not producable
by the compiler
	String WARNING_DEPRECATED_SHA3 = Overshadowed by ERROR_DEPRECATED_SHA3
	String WARNING_DEPRECATED_SUICIDE = Overshadowed by
ERROR_DEPRECATED_SUICIDE
	String WARNING_DEPRECATED_THROW = Overshadowed by
ERROR_THROW_KEYWORD_DISALLOWED
	String WARNING_FILE_NO_PRAGMA_SOLIDITY = Quickfix tested
	String WARNING_FUNCTION_STATE_MUTABILITY_PURE = Quickfix tested
	String WARNING_FUNCTION_STATE_MUTABILITY_VIEW = Quickfix tested
	String WARNING_FUNCTION_UNUSED_PARAMETER = Quickfix tested
	String WARNING_FUNCTION_VISIBILITY = Overshadowed by
ERROR_NO_VISIBILITY_SPECIFIED
	String WARNING_LOCAL_VARIABLE_UNUSED = Quickfix tested
	String WARNING_MSG_VALUE_IN_NON_PAYABLE = Overshadowed by
ERROR_MSG_VALUE_ONLY_ALLOWED_IN_PAYABLE
	String WARNING_SHADOWED_DECLARATION = No Quickfix available
	String WARNING_SOLIDITY_VERSION_NOT_THE_DEFAULT = Warning seems to be
removed by the newer compiler version
	String WARNING_USSAGE_OF_SEND = Quickfix tested
	String WARNING_VARIABLE_STORAGE_POINTER = Overshadowed by an equivalent
error, which is not documented by us at the moment
Maven Build finally runs (at least locally)
https://github.com/Yakindu/solidity-ide.git into issues_279_280

Conflicts:
	extensions/theia/.gitignore
	plugins/com.yakindu.solidity.ide/src/com/yakindu/solidity/ide/internal/SolidityIdeCodeActionService.xtend
	plugins/com.yakindu.solidity.solc.mac.fragment/META-INF/MANIFEST.MF
	plugins/com.yakindu.solidity.solc.win.fragment/META-INF/MANIFEST.MF
	plugins/com.yakindu.solidity.tests/META-INF/MANIFEST.MF
Sign up for free to subscribe to this conversation on GitHub. Already have an account? Sign in.
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

Provide Test infrastructure for quickfixes
4 participants