microsoft / microsoft/qdk

Error about DrawRandomInt should indicate that it only works in simulation

Open
#3,446 5 comments 0 reactions 0 assignees View on GitHub
bug needs triage
Dominant language
Rust
Stars
1k
Forks
212
Avg merge
3d 8h
Merged PRs (30d)
65

Description

**Describe the bug**

[Playground](https://microsoft.github.io/qdk/?code=H4sIAAAAAAAACssvSC1KLMnMz1PwTczM09BUsFLwzCtRqOZSUFBQKEotKS3KUwguSdELSsxLyc%252FVcylKLIcwPfNKNAx1FEw1rblqAV1e1XVFAAAA)

RIR tab reports
```
QdkDiagnostics: name error: `Std.Random.DrawRandomInt` not found at code:2:12
```

Reduced from [Shor's](https://microsoft.github.io/qdk/?code=H4sIAAAAAAAACu1bS3MbxxG%252B81e0qaQMUEtAoJ2HJcNVlCzaqDIlWZJLTlRyYbA7AMbcnVnOzBKEaR6di0%252B55JbKLVX5AflB0S%252FIT0j1vHb2AUp2Xk5VdBGA3enpd3%252FdMxyPx3ALnpGizOneeDyGZ2sh31VwnK%252BEZHpd4I%252FmwS34mKpUslIzweNXiX8VmAIC5xXhuiqin5dCwpLxjPEV6DWFUrKCwpKkWkgFYgnE0mNc0xWVo7Dl8zVT8PktKKVYSVIAQy4LyrXq7D3aY0UppIZnOhs9EPyCSj06uBf%252F%252BjEjKy6UZqlqPXlKeCaK1o%252BnRK9bPx2brahmaeeBJFtDdU%252BUVBJUEZwSxgdDuAuDGdcJzLgewtUeAEBONXCYwuTXv7oH4zFMJgeTX90zj8Zj%252BI2oICUctNyiuhQFoddUAr00VlJGnwRyyld6zaiEVBRlpc2mI08kbPHLX79nN5nCZPLeweT9D9qvHB29%252F8EH%252FpX3PziY%252FGKy59%252F5QtGumbVwxgMCihbM2jNYz0s4IAkshjCFE%252FPyM%252F%252FmzL444EMr8ilViqzo4Gf7J6LimaPNvrFavOLXMIUrcg0HcLW43neLJNWV5G6Pe3vXe85Hn1VFQeTWfPtC0a6jxNxzYLysNPCqWMR%252Bdwtm%252BLv9fMs9Nt%252BOuwIjwYV3Z5rFVB5X2pN5QphEV7e0FJTwEUyA8AzOzSdVpWvQa6KhfP39d%252Bcwhbl9dR551C5FmhfhrnWxHn8bj%252BGESaUhXdP0zMRgIZQGLdkFIzmkRFEY2NAUFyyjmeMTI5peUD60VmWef%252Fg5HMF0CnfcBrEZ94%252B5WeNfXRMFC0o5rNgF5ffgyKYJq6%252BRt2dsU7dwDEcJHLnn116Q5yYiikqTBcbChuU5nFFagpYkPUMVb9bUxMuGwtI4FArmsk2CKvek2BKUSGCDWtdrugUi6Qg3gIwuSZVruCB5RU28RTSQ%252F8EkmTilOFbsXifulSksSa7oveYb4eFgksBk2HxKtKZFqTEIvYuXlOgeDf9s%252F%252BDgwDkD%252Bwaz6pVV2XUSqFy5D9cNDaP%252BMKsIWFVUoRmcrlNxaJ1ai%252BB4sNjCimqNGxCQJkfGlLz%252FM260g1%252FlBcnh5SRxZA8nr8ICzAgrytGVhYQpfCzJxubdGdeDsAQOjWLifR4Yp2VLs4tlo95bAeMZpVmQYBQvnS1By4pCpSh83luXnlDJRObLU72YLeETSYmmSj8QRSH4x%252ByCKSFngyCEZ3mIkTCJ7NS01UOlWUGMFku7mVjCVaBiDdRYizKTPA8cN3lsCtBeOA%252BE51CILBhz1HgRjeGYmYJjkNpteuTrsveMahsROVmZJOZd2wSM8sZKBdeMVzRrr19KkmJGU5DmRCmWkjwSS1VpSmmmmjwP4gBL%252FI5YX07JdkHdgxMpCieI5T6BSCArcxQQ1w1vQUdmyqTDBNOHCRKaAYHMWh9DgqQpyyjXNXc0V7RlfpNxeebXdbW%252FSlH1O1ysw3nEcdO5XlBYk4s%252BTq9WaXbd4Bf24TbsPxIBoUW4ATZEQSY47fXGhrnnsR3mmDAwxBKMQ5ZaPzd1bEPbZJxdaYYpw3uzs2NTQ61cihs0NRCl0lWaheQxRr32mrfOrv7TbZ9nwYb7wD%252F4CCZ37gxbBl0SlsP%252BCWE5zQyEYLXX3wUtBBSEbz1x9c5%252Bm4lrqLhmeUM082DJLquyr45iIaIuNjMfrhnLgAsNW0ZzNPcFyZlnxFn4udyaNLEijIfsfx0g3VNbZeuC5pBWDKucYDtw1XPJqApKiCujWMK8EFmVV2pu6z0QmFvW5yZRRPlpJ95yFFwLQP132KxZusbazDjuj9WAKpZVFCQK%252FFub8ML%252BjLsVem1bm6LKNStz46UXFITMqMFkcc5kCFaQWtD8yLMV3gqMVVyxFTf%252BbMtR7w4Dl3UsNkGG%252FCaGUL0RnFZKI5ZsVGMvT%252BDDkgtMdFxk0MeF2R1VVtfgwhFp7tCFrsegqzKnplGzKSAKdQ%252B2vAdsqPSwy4S7Ussqz7eJoYQOQKB0UNgpTSHQkVRRrn2D6Im5POIpWg08EpraJ%252FiqoqngGQjDLipW8HwLBSWc8dWyypFB5%252BwGAYcXreiYWeajvWXFU9ez9ZYSC9ScGxqcnZifamVGPzozmF%252F2DB6%252FL0SeRLAck4sPx1ZxlzSrUhddNjr5ysrElp6yA%252BUekrtfeyA5AgmT42nDx7%252FyITk%252B2gUSsEStSb58IjYU0drDy%252FJUZA3w47Y1KN2ppgXcZkssokRioORVerZNIppMwdfo7ocTw8KjpI4N4huTmJjpUdCBMPtViqJtzWDBa6mB3ep93pkGwx12UNp4DC%252B8fzRYw01qzsKjwwl0IVd4ensCao3icsEPfW%252Fl6%252FGG6XWtaIsOmO4CA9ebIqq5nA0aj%252FHfDsRQM38Ik9oeyQ9ffzte31jeAwyOs8znBBerO1ouX1i8J1vo0QWGseZ8FhigMXJ2RmFyl4OQwO9Ompxh9XZ6e2cKk6HZMfrFi9OyPuwcPkyv7P%252FX%252By3kBVGbamGP2yboDMaOxrC19Hqv%252B6kuxz2ZlcKa6ToY6gjIWMbfxW5Kx4QQfnTAVFu8lm5722%252FTuSauR%252FXwoQ1yfeTUKUlkmeEZ4agWULL0DAi3o6s6T2oRClZMq%252B6MUEClidQgLqjsk%252BRhu%252BBd2f%252BvDYgVWZbg6KwLgd4oYz%252FaOfEgJ%252BLR482lFEU9RlpKel5Rnm7%252F15BNYNyrNjAYnoT43hCu0YqpnbHiR%252BJUE%252BgtmFZPJE2Z8qPiR1ZfYmme4f%252Blf24zo5VnQ4FTC7A9l6DG6DWGiqQpOoW3hIRKoUChzYz6ymgw7JhKKykp1y7lBQl9fu7AI7eJwzJYjuUOgPS8dg6C3WOeVrnxT%252BMeuoHRaoVeMNJqkseNzjiSIMATCxYQmJx4OjuxSceo8cOGheIHTS1FIGbGdT1NfCQ2aCscq6AID7wIJ457O4BfUa5nEJjXIhhQjaUnZXSUbUnG0iA8nI2PvmqwGE2VeVW02nmY3shBXUQHHZ0k0NooKpk%252BWOPaZxDVDcJmglrwsKqIJFxTqyBsE5RzMU8nyGFzOuWiYJyYNu5ThLwbCgU5o6Aq6fDuQui1gVOlUAwD3ZOyYXC8ULM%252BPR0vlFfV8cIMTAb4av3CMDFrfZ%252FSkNWix6iCozicbvKti4zGhKMxVxqEPeGg5VdDGO9CIs0XY8b7Twvs86mvAa3zAfvrjj4WMzuizV3Zs5kP3Jizm5h3N1GN3P9TaR9%252FgjXoxpT6A9rZmr3o0GTXeNNlvWbq7GQ6H4r%252B5MS1nabgmy4NvzW3gHpvIkOMmkGNjRLsL%252Buk9OYxc4CvOGeu89N%252BrFkzWwnGKVqesN9OYq167Hw7uAJWZElVSVNT4ENxxuRDwzzbE6vBUZ0FkCz7hsIU7jP9jH1DZ4NWk%252BisvFN33kVUDL7MBDYMwrknRMpSikvDlqseAyNXABlDi1NCgVFjiQ0nGtec5yhRBEv5g8xo0oAnRTYJWnybGlv53KcMLsKDKMozqEpPyFU7e34S4QwZ%252BlgJTCuaL0e7DPMjgFJz86C45O3AUmy%252FGiBM4QgOgk3N5DSUCJuvazbCaVlAOi5Ul0IWyGS9SRei1KcRNcDpRkLiWXHJni17SL3TnIW4grATQbWqfrNz7uKGxuOGspqPJuHbrk5qx7y3Vh92NXfe3NNMbuxiHjaiqWEb8v8i959qtJzb9rVE3J6MGJDsxqFxTr6hTtZA0hx%252FvxFLx9mSr2xEdstlT%252Fz1VswQi30FNJx89wT6nXtvn2x6BwDm9KiOEkyODULTq8bX6KAVJ1d5LlJk5Lwy6vdZS1UllRZfC47qpGxFudImdFwiE5KkOa2rHzGD50rZgy3fN8Ynytgo1YSe0hVT2sxVP8fdXzpZX9XszTjTjOSogJ51WuCQLpqXdriO%252BoxYgE4Jt7V1TZSRLtweemHfM0f6paThTek5IAooT4Urw90gZ6E050zrnB5SnjHCTQ0gbup5XJb59kshZ%252FxJTlKKs5iurJHJ8C6SYTXw72uivYZUHyWfiErixSgtCVem7NR1MdSpRh6szZR6qwxcikXPYNklmrbpp4cwGY0OJ6NRXGY%252BHaRRasZeUYoczwyNtI8xX5xYz3hsvKhZfF6mr5rlo7f4TeDDDz9EnnoV1i44%252BO%252FpBJvVvva3IxIcWsqxGE2h2BJOB6lBo495%252B%252BD7S3zVzjVVNJ%252FsLaJwe%252BpkGexgo3OU2znGxHsSaEkXxiYI0WI2Rt9VkYZggReEtIA7YL43u2fD73GeW0%252Fw3wa9HtmbjuKaPb3qCNvuTDsv7GhSZz4GFcw1kSuq543oC6HXDDQfiGfh4K2kEkNB1VFhI%252Bjbs9d%252F%252Bgu8%252Ft2f4dvV3%252F76h9fff3dmzz0AfzcY2dAoMdXMSzwkmCewMt9aDcgj8%252BO%252FHSSYZR2g8N8CCe7qag0U%252FlmQYFRsLw2aE5nWysXWbRXcgamwZUTGPjXfQuEICZ2aUWXTZYI6a2KwsE5oj%252FJLz06j8bY35mKZBUcqzt9oZvUq2gjS8MJJHrV8N%252BbI3rPWnrmn5TL6wSoC7rpi%252B8qMM7%252FgzFTt4%252BxruA0PdF63%252FM9DifczTptQ0Iq%252B9YxuIn97GeLn8vX33xEbPK%252F%252F9JcRvAg5huRKGFJzd5I6tzN0N16rjXoZevfIpHCcq1DAeOhKN1GF9lIS1VeMm5YOo9eoGJ%252BiIok8tZtu728fCEx7PBpUdDqjvkNhVH7f%252BaPzRleXejPdE5%252BgCssLMH5YIjJoOxdeaooujqWO0zjftK%252Bqf2Ic2IzbO%252BsUzNPWAMWeWYaDHXdhyp1BuFj69u9%252F%252FP2f0fRt9Tq9JvYyWe3dztru5sEgPbgcws8h6jW0CETf6gTp1Dm%252FFsFLveqaGgtHIOaDt2ztdFr4BdvAgV9jbeOvIgbpMQtYk%252FbE8W5narUOqf%252BwrcPzpuhEMc9VwM2fmSvwg%252B3wVQeqzXhGL58SvqKDbXzui%252B2GWrOlptkDnFGnHktFtujFb06m4yzrRoaBbtuXLLt81cZvAbT5TRM4Vx2Mdv227D97cfxkYHdCQuZDgwbKx%252FgFyjbDYwlFTYim8R2NH6kqQ%252FY%252FpK36ysYb9PYDMwnJstAj9eUQG4XEUDlv%252BXwdkz%252FBbHJ5O%252F33ZROvtR15BDWWmdHFvzB5xK7zT2aNhci2MBiNRrF33%252BysL18lkTemCWyHjTBL69WDVMtcJdCi77poRDToaZXSogClJdF0tXUH6EiibVfGlaYErxnEpHJ3D98eGBcly%252FHSvjk5CIfIjp8LIhlaBQ1YKd%252BJOzo1SJ3XCpjbM1q8pCSqPEPwkTGlJVvgFR1zDwMoSdcxoZhhQw%252BVHN%252B9j18Ohyg4KlDUTNtBpZLodA0FLYT9mwSFo3XK6wNPos3fqTT25UFY2%252FOF0QvKmwql823NnLJ%252FV0NUTGIeGdpFKp5zEkntUYx8vqb8sXx4XpE8vNe4XebqjjH8ED7CgVWzCzaDBMdla5zg%252F%252BHggvGeG0mRY37pfcvRat8ocu51I40%252B53bkdvp42KDuvvsuuRspiZTbXTJGbMx4en878%252FJgPdrCbXhplr9q7xuPTbKvBeO6vT6w%252FXZU3Gr3YmP9TXujdmfLz6hSzh0%252BCwx8aW5yHqv7bIV%252Fv5IOE9gmVhvDnqnF9d4%252FAMaCI6ppOQAA) playground sample, where RIR tab reports
```
QdkDiagnostics: name error: `DrawRandomInt` not found

help: found a matching item `Std.Random.DrawRandomInt` that is not available for the current compilation configuration at code:52:25
```

With `@EntryPoint(Adaptive)`, the error is reported at design time, but I still don't know what to do about it. The [doc](https://learn.microsoft.com/en-us/qsharp/api/qsharp-lang/std.random/drawrandomint) doesn't seem to indicate minimum requirements.

Contributor guide

Open the contributing guide

Research direction

Start with the linked Playground sample and inspect the RIR-tab diagnostic for Std.Random.DrawRandomInt under @EntryPoint(Adaptive); compare it with the linked API documentation. Done means the diagnostic explains the simulation-only requirement and the API documentation states the minimum configuration.

Written by the indexing model from the issue text.

Assessment

Domain
compilers
Issue type
Bug
Difficulty
3/5
Estimated time
1-2 days
Activity status
Quiet
Clarity
Mostly clear
Newbie friendliness
48/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.