Questions tagged [compiler]
A compiler is a computer program that translates a higher-level programming language into a lower-level language. For example: Solidity is compiled into EVM opcodes.
198 questions
1
vote
0
answers
364
views
Silence visibility warning, state mutability can be restricted to pure
Suppose I have an interface:
pragma solidity 0.7.6;
interface Foo {
function foo() public view returns(bool);
}
And a simplistic implementation like a mock:
contract Bar is Foo {
function foo() ...
0
votes
1
answer
825
views
Remix IDE Waring for "Required Compiler Version"
I am well versed with solidity and often use Remix IDE. Quite recently, despite adding a compiler version in my code. I am still getting this warning
Warning: Source file does not specify required ...
1
vote
1
answer
1k
views
Remix Solidity Smart Contract Stuck On Compiling State
The 1inch Smart Contract is unable to compile in Remix as it appears to be stuck in the Solidity compiling phase.
Expected
Create a new 1inch_38211317.sol smart contract file in Remix.
Compile the ...
4
votes
1
answer
2k
views
How do I determine the most recommended (safest to use) version of Solidity?
I've seen this question pop-up a bunch of times: "is version 0.x.x safe to use in production?" Therefore, I'm wondering if there is a clear way to tell which versions are recommended for ...
0
votes
0
answers
552
views
Solidity compiler,error:not found browser IERC20.sol
Who can halp me with error and codig fleshloan?
I try use for my contract http://remix.etherium.org and i have a promlem with compiller,i use code from official docs aave https://www.docs.aave.com/...
0
votes
1
answer
38
views
Stack too deep error [duplicate]
Not sure what the best approach is to get around this. New to solidity. I've read the complicated 'answers' to this that suggest using structs, arrays, etc. but I can't figure out how to address this. ...
1
vote
1
answer
593
views
Solidity Compiler and EVM relationship
When I compile the below code in 0.6.6 it doesn't compile (requires public) but in 0.7.3 it does compile.
If I make the below code compilable (adding public) in 0.6.6 I can successfully deploy on ...
0
votes
1
answer
124
views
faucet = (new Faucet).value(0.5 ether)(); Doesn't compile
I am practicing with the code examples from Andreas' Mastering Ethereum book Chapter 7. I don't understand why this does not compile when I made the Faucet constructor Payable. See images below.
...
0
votes
0
answers
610
views
Remix Compiler Errors - Transferred GitHub .SOL Codes to Remix
I transferred all 23 Sol extension files (smart contracts for Syscoin and Ether) from GitHub to Remix but only 3 of them can be compiled and deployed. The rest of them show errors.
[Here is the link ...
1
vote
1
answer
156
views
Library calls fail depending on compiler version?
I'm trying to deploy my library and call it afterwards with the specific address.
While testing this I encountered that the behavior changed over the course of compilers.
I tried to follow How to call ...
1
vote
0
answers
248
views
How to separately optimize bytecode?
This question is regarding the bytecode-optimizer of the solidity-compiler, not the yul-optimizer:
Is there any way to separately optimize bytecode?
Normally the solidity-compiler optimizes the ...
1
vote
1
answer
268
views
How to detect compiler version given only Solidity Source Code
I've collected some random smart contracts from the internet, many of them do not specify compiler version using pragma in their source code. Is there any way or any tool that can help me identify the ...
1
vote
1
answer
792
views
Compiler version incompatibility nightmare
I'm new to Solidity and Truffle. I'm trying to compile my Solidity code within Truffle to create an ERC-20 token. I have @truffle/hdwallet-provider and @openzeppelin/contracts as my dependencies. Now,...
1
vote
4
answers
2k
views
Trying to compile running: 'node compile.js', but get error: "assert.js:350 throw err;" [Udemy 'Complete Developers Guide' Course]
This is the first contract with this Udemy course.
Trying to compile by running: "node compile.js" but get the following error:
iii@iii:~/inbox$ node compile.js
assert.js:350
throw err; ^
...
0
votes
1
answer
37
views
How do I update compiler for embark?
I am rewriting an old contract I had. I am using the latest version of OZ contracts.. but they require:
pragma solidity ^0.6.2
I am using embark 5.2.3 and current compiler is 0.6.1+commit.e6f7d5a4....
0
votes
1
answer
1k
views
Contract import from GitHub gives an error "Unable to import "undefined": TypeError: Failed to fetch"
This would be an old issue, but the solutions I have seen on this site aren't working. I'm trying to import a contract of OpenZeppelin to my Remix IDE.
import "https://github.com/OpenZeppelin/...
1
vote
2
answers
199
views
How to publish in ethereum with "imports" ? or how to do?
Hello i have this question in my mind now :
How to publish in ethereum with "imports" ? or how to do ?
why i say this ?
answer : when i wanna "verify and publish Contract Source Code" with a ...
0
votes
2
answers
9k
views
Function, variable, struct or modifier declaration expected [duplicate]
I am using the following code structure;
pragma solidity ^0.5.0;
contract TtdmToken {
uint256 public totalSupply;
function TtdmToken () public {
totalSupply = 1000000;
}
}
...
1
vote
1
answer
719
views
Are there any risks of undefined behavior when calling a function which doesn't return anything using a prototype of it which returns bool?
According to the ERC-20 Token Standard, functions transfer and transferFrom should return a boolean value indicating success or failure:
interface IERC20Token {
function transfer(address _to, ...
2
votes
2
answers
1k
views
Function overriding versus Solidity Compiler Warning: Function state mutability can be restricted to pure
I have a function in a base contract that could have the state mutability modifier "pure" because it always returns true:
BaseContract {
function x(bytes memory)
public
...
0
votes
1
answer
70
views
Error While Compiling In Remix During Tutorial
During a tutorial on my first compile I received this error:
:1:1: Parser error: Expected import directive or contract definition.
pragma solidity ^0.5.12;
^
What's that about? How do I fix it? I'...
1
vote
0
answers
501
views
Contract can't import remote repository locally
I made a compiler script that takes all contracts in folder ./contracts/ and produces a .json for each contract, containing an ABI and Bytecode. This worked fine for a while. However, I added some ...
4
votes
1
answer
833
views
VS code Expected identifier, got 'LParen'solc
I keep getting this error/warning on my vscode when I emit events and build constructors.
or
After a bit of googling I understand it is something about my compiler, since solc <0.4.18 does not ...
3
votes
2
answers
4k
views
Setting Remix default Compiler Version
Is it possible to set the default Compiler version in Remix?
Each time I open Remix, the compiler defaults to version 0.5.0+commit.1d4f565a. However, there is currently up to version 0.5.10 available ...
4
votes
4
answers
7k
views
How to deploy Library contract separate from the main contract and link it
For deployment I am using remix. When I deploy Hello.sol the compiler typically merges SafeMath.sol as a part of the main contract (Hello.sol) and deploys. This adds up library and main contract's ...
0
votes
2
answers
249
views
Solidity code sequence for owner
How can I make my code sequential, meaning I'd like functions to be performed in a certain order.
Can I make a function not run able till another is run.
An example would be great help.
4
votes
1
answer
10k
views
Function declared as view, but this expression (potentially) modifies the state requires payable
I'm trying to change the an address data variable to a one, which is selected via a function.
Keep getting the below error.
Function declared as view, but this expression (potentially) modifies the ...
5
votes
2
answers
19k
views
Type uint256 is not implicitly convertible to expected type int256
I'm trying to compile the following keep getting an error, even though used this before in second code and its working fine.
Simply trying to change the temp to the new temperature set by the user, so ...
2
votes
0
answers
418
views
What is the value range of the parameter optimize-runs when running the solidity compiler?
I would like to know what the allowed value range of the parameter optimize-runs is when running the Solidity compiler. I didn't find the answer in the official document of Solidity.
1
vote
2
answers
212
views
Get values from stack when certain Opcode is called
I am currently trying to use genetic algorithms to automatically generate test cases that for ethereum smart contracts similar to https://ieeexplore.ieee.org/abstract/document/7840029>this paper. In ...
1
vote
1
answer
101
views
ABIEncoderV2PackedStorage bug, is something to worry about? any info?
I have a simple factory of ERC-20 Tokens, deployed to Rinkeby using remix.
When I create contracts with this factory and verify the code in Etherscan (using etherscan API) I am having this warning in ...
0
votes
0
answers
495
views
solc command is generating empty .bin files
Firstly, this is not an inheritance problem like in this post
I have the following two files ( ManagedWallet.sol & ManagedWalletLookup.sol )
pragma solidity ^0.4.24;
contract ...
3
votes
2
answers
9k
views
Is there a way to download Remix IDE locally and access it from the Terminal (Linux)?
Is there a way to download Remix IDE locally and access it from the Terminal (Linux)?
Hi,
I think I have read that it should be possible to download Remix IDE and use it offline. In the latest ...
1
vote
2
answers
739
views
Unhandled Rejection (Error): invalid string value (arg="x", coderType="string", value=5)
Using Truffle unbox react to unbox a boilerplate.
received the following error from running npm run start
Changes:
Addition of "memory" parameters in the simpleStorage.sol
Changed unit to string in ...
1
vote
1
answer
952
views
Understanding the ".send" warning message
Warning: Failure condition of 'send' ignored. Consider using 'transfer' instead.
Is this a new compiler warning, and what exactly does it mean?
0
votes
0
answers
98
views
Why the same contract has more bytecode size in solidity 0.5 in compare to 0.4.24?
My earlier contract was compatible with [email protected]. Now I am upgrading my contract to make it compatible with solidity 0.5 but it leads to an increase in bytecode size. AFAICT There is no change in ...
0
votes
1
answer
139
views
Error in external function parameter defination for an interface
Dear community members,
I have come across an error while defining an interface (just using the standard one interface ERC721TokenReceiver)
this interface is mentioned in this link https://github....
1
vote
2
answers
2k
views
Unable to run truffle compile
I want to run truffle compile on my AWS Ubuntu 18.4 server. I'm able to compile the same contracts on my local with no compilation errors but when I tried to run truffle compile on AWS ubuntu server ...
0
votes
1
answer
188
views
Problem with wallet.transfer in newer solidity compilers
I read the documentation of the changes on 0.5.0 but I do not know how to get this done with my code snippet. I tried to make the constructor payable but this does not work. Can someone help me. The ...
0
votes
0
answers
1k
views
Can we eliminate specifying solc compiler version at the beginning of each smart contract.
Is it possible to eliminate specifying the solc compiler version at the beginning of each smart contract. This would help in separating the compiler version from the smart contract, so if the compiler ...
6
votes
2
answers
7k
views
Switch solc compiler versions
I have solc v0.5.2 on my system, but I have several contracts, that require solc < v0.5, so that I get errors:
Error: Source file requires different compiler version
What is the best way to run ...
0
votes
1
answer
405
views
I build solc from source v0.4.18 but can't not use it to compile solidity. How can I solve this problem?
$ solc --bin -o ./contracts SimpleStore.sol
Warning: This is a pre-release compiler version, please do not use it in product ...
1
vote
1
answer
586
views
Nested structs that are part of a mapping broken in Solidity 0.5.0?
The following code compiled successfully with Soldity 0.4.21. With 0.5.0 it triggers a fatal compilation error as follows:
UnimplementedFeatureError: Encoding type "struct TestNestedStructInMapping....
0
votes
1
answer
1k
views
Is it safe to call revert() instead of returning a value?
I have the following piece of code:
function func() public returns (bool) {
if (some condition on msg.sender) {
do some stuff
return true;
}
revert();
}
The compiler (0.4....
2
votes
2
answers
35
views
Can I count on this general pattern executing correctly (similarly to C, C++ and probably any other language)?
Suppose I have something like this:
contract MyToken is ERC20 {
MyTokenImpl private myTokenImpl;
constructor(MyTokenImpl _myTokenImpl) public {
myTokenImpl = _myTokenImpl;
}
...
1
vote
1
answer
109
views
Deploying fails with different compile version
I'm trying to implement a simple card game. Actually, everything is working fine. Until I tried to move from 0.4.0 to 0.4.22. Any idea what is going wrong?
Thanks a lot. And here the code:
pragma ...
10
votes
2
answers
6k
views
Why is there a difference between a public array and a function which returns it?
On-chain example:
pragma solidity 0.4.24;
contract MyContract {
uint[] public array;
constructor() public {
array.push(1);
array.push(2);
array.push(3);
}
...
2
votes
1
answer
361
views
How to get the correct line numbers from `solc --ast-json`?
I have the following in a file:
contract Coin {
address public minter;
mapping (address => uint) public balances;
event Sent(address from, address to, uint amount);
function Coin() ...
2
votes
1
answer
52
views
Why solc does not detect issue in this code?
I wrote a sample Solidity code below: in function call() of contract sample_call, I make a call to function add_car() function of another contract sample, but this is a bug, since variable v is never ...
1
vote
1
answer
1k
views
Remix IDE nolonger loads old solidity compilers. Error: "mock compiler: source not found|
The Ethereum solidity Remix IDE doesn't work for some reason.
It doesn't seem to load the various compiler versions and renders the error:
mock compiler: source not found
I've tried to install ...