স্কিপ করে মূল কন্টেন্ট এ যান

ত্রুটি নির্ণয়

Wave কম্পাইলার ত্রুটির কোড (E####) সহ সোর্স অবস্থান/প্রসঙ্গ/সমাধান সূচক পর্যন্ত একবারে প্রদর্শন করে।

আউটপুট বিন্যাস

মৌলিক বিন্যাস টি নিম্নরূপ।

error[E3001]: semantic validation failed: use of undeclared identifier `x`
--> file.wave:2:18
1 | fun main() {
2 | println("{}", x);
| ^ not found in this scope
= context: semantic validation
= help: fix mutability, scope, and expression validity issues

আউটপুট আইটেম:

  • --> file:line:column: ত্রুটি কোড এবং সারসংক্ষেপ
  • ^: সমস্যার স্থান
  • সোর্স ব্লক + ক্যারেট (^) হাইলাইট
  • প্রসঙ্গ, প্রত্যাশিত, পাওয়া গেছে, নট, সাহায্য, প্রস্তাবনা

প্রধান ত্রুটি কোড

  • E1002 অপ্রত্যাশিত চিহ্ন
  • E1003 দুর্বোধ্য ব্লক মন্তব্য
  • E1004 অপূর্ণ স্ট্রিং
  • E1005 ভুল স্ট্রিং পালানোর সংকেত
  • E1006 ভুল অক্ষর লিটারেল
  • E2001 ভুল সংখ্যা লিটারেল বিন্যাস
  • E3001 পার্সার সিনট্যাক্স ত্রুটি
  • E3001 অর্থগত বিশ্লেষণ (সেমান্টিক যাচাইকরণ) ত্রুটি
  • E3102 বিয়োগের পয়েন্টারে null বরাদ্দ
  • E9001 অপ্রকাশিত পূর্ণসংখ্যা সংকোচন নিষিদ্ধ
  • E9001 ব্যাকেন্ড কোড সৃষ্টির অভ্যন্তরীণ ত্রুটি

ব্যাকেন্ড ত্রুটিগুলি উৎস অবস্থানকেও প্রদর্শন করে

কোড জেনারেশন (LLVM) ধাপগুলিতে অন্তর্নিহিত প্যানিক ঘটলেও, সম্ভাব্য ক্ষেত্রে আসল কল/ঘোষণা অবস্থান অনুমান করে প্রদর্শন করে।

error[E9001]: compiler internal error during code generation (llvm-ir-generation)
--> test.wave:12:9
= found: Function 'foo' not found
= note: source position inferred from unresolved function name in backend panic

অবস্থানের অনুমান সম্ভব না হলে, fallback অবস্থান ব্যবহৃত হয় এবং সেই বিষয়টি note এ একসাথে প্রদর্শিত হয়।