Fpermissive পতাকা কি করে?


121

আমি কেবল ভাবছি -fpermissiveজি ++ সংকলকটিতে পতাকাটি কী করে ? আমি পাচ্ছি:

ত্রুটি: অস্থায়ী ঠিকানা গ্রহণ [

যা আমি -fpermissiveসংকলকটিকে পতাকা দিয়ে সমাধান করতে পারি ।

সম্পাদনা : আমি সন্ধান পেয়েছি যা অস্থায়ী ঠিকানার ত্রুটির অংশটি তৈরি করছে! আমি এখনই সেই অংশটি ঠিক করতে যাচ্ছি।

উত্তর:


146

ডক্স থেকে সরাসরি :

-fpermissive
ত্রুটি থেকে সতর্কতা অবধি নন-কনফর্মেন্ট কোড সম্পর্কে কিছু ডায়াগনস্টিক ডাউনগ্রেড করুন। সুতরাং, ব্যবহার করে -fpermissiveকিছু নন-কনফর্মিং কোড সংকলনের অনুমতি দেবে।

নীচের লাইন: আপনি কী করছেন তা যদি না জানেন তবে এটি ব্যবহার করবেন না !


5
আমি সর্বোচ্চ ভোট প্রাপ্ত উত্তর থেকে উদ্ধৃতি ম্যানুয়াল + এর চেয়ে বেশি তথ্যের প্রত্যাশা করব "আপনি কী করছেন তা না জানা পর্যন্ত এটি ব্যবহার করবেন না"। এর জন্য আমাকে গুগল করতে হবে না। কোন নন-কনফরম্যান্ট কোডের কেস হুবহু ডাউনগ্রেড করা হয়?
johannes_lalala

নন-কনফরম্যান্ট কোডটি ডাউনগ্রেড নয়, তবে ডায়াগনস্টিকগুলি ত্রুটি থেকে সতর্কবার্তা পর্যন্ত। প্রশ্ন ওপেনার একটি উদাহরণ দিয়েছেন। আপনি যদি না জানেন তবে প্রান্তের মামলাগুলি কী হতে পারে, আপনার এটি ব্যবহার করার কথা ভাবা উচিত নয়।
cli_hlt

2
দুঃখিত, কোনও অপরাধ নেই, তবে "আপনি যদি এর প্রভাবগুলি জানেন না তবে কিছু করবেন না" এই জাতীয় পরামর্শটি তুচ্ছ এবং প্রতিটি প্রশ্নের সাথে খাপ খায় এবং কোনও উত্তর দেয় না।
johannes_lalala

3
.. এবং দুঃখিত, তবে কোনও বিবরণ না দিয়ে কেবল ম্যানুয়ালটি উদ্ধৃত করা কার্যকর নয়। বিশেষত ম্যানুয়ালটি খুব কমই দেখা যায় এমন ক্ষেত্রে।
johannes_lalala

50

-fpermissiveপতাকা যদি এটা ভাষা নিয়ম না মেনে চলে এমনকি কম্পাইল করার অনুমতি কোডে, কিছু জিনিস যে আসলে ত্রুটি আছে (কিন্তু কিছু কম্পাইলার দ্বারা অনুমোদিত হয়) সতর্কবাণী হিসাবে প্রতিবেদন করতে কম্পাইলার কারণ। আপনার সত্যিকারের অন্তর্নিহিত সমস্যাটি ঠিক করা উচিত। সবচেয়ে ছোট, সংকলনযোগ্য কোড নমুনা পোস্ট করুন যা সমস্যাটি দেখায়।

-fpermissive
ত্রুটি থেকে সতর্কতা অবধি নন-কনফর্মেন্ট কোড সম্পর্কে কিছু ডায়াগনস্টিক ডাউনগ্রেড করুন। সুতরাং, ব্যবহার করে -fpermissiveকিছু নন-কনফর্মিং কোড সংকলনের অনুমতি দেবে।


18

আপনি যখন এমন কোনও কিছু লিখেছেন যা ভাষার মান দ্বারা অনুমোদিত নয় (এবং সুতরাং এটি সত্যিকারের সংজ্ঞায়িত আচরণ হতে পারে না, এটি না করার যথেষ্ট কারণ) তবে কিছুটা নির্বাহযোগ্যকে মানচিত্রের সাথে দেখা যায় যদি নির্লিপ্তভাবে খাওয়ানো হয় সংকলন ইঞ্জিন, তারপরে -fpermissiveএই ত্রুটি বার্তাটি বন্ধ না করে কেবল এটি করবে। কিছু ক্ষেত্রে, প্রোগ্রামটি আপনার মূল উদ্দেশ্য হিসাবে ঠিক তেমন আচরণ করবে, তবে আপনার যদি অন্য কোনও সমাধান না ব্যবহার করার খুব বিশেষ কোনও কারণ না থাকে তবে আপনার অবশ্যই এটির উপর নির্ভর করা উচিত নয়।


3
ভাষার মান দ্বারা অনুমোদিত নয় এমন কিছু এখনও ভালভাবে সংজ্ঞায়িত করা যেতে পারে। আসলে প্রায় প্রতিটি সংকলক ভাল সংজ্ঞায়িত এক্সটেনশন আছে। অনুমতি না পাওয়ার সমস্ত দৃষ্টান্তের ক্ষেত্রে এটি না বলা
মাইক এমবি

8

আপনি যদি এর জন্য বাস্তব-বিশ্বের ব্যবহারের ক্ষেত্রে চান তবে এক্স উইন্ডোজের একটি খুব পুরানো সংস্করণ সংকলন করার চেষ্টা করুন - বলুন, বিভক্তির ঠিক কাছাকাছি ২০০৪ সাল থেকে XFree86 বা XOrg - জিসিটির একটি "আধুনিক" (কাশি) সংস্করণ ব্যবহার করুন যেমন 4.9.3।

আপনি বিল্ড সিএফএলএগএস লক্ষ্য করবেন যে "-ansi" এবং "-প্যাডেন্টিক" উভয়ই নির্দিষ্ট করে। তত্ত্বগতভাবে, এর অর্থ, "যদি কিছুটা এমনকি ভাষা বর্ণকে লঙ্ঘন করে তবেই উড়িয়ে দেওয়া"। অনুশীলনে, জিসিসি-র 3.x সিরিজটি এ ধরণের স্টাফ খুব বেশি ধরেনি এবং আপনি সিএফএলএগএস এবং বুটস্ট্রাপসিএফএলএগএসকে "-ফর্মিমিসিভ" না সেট না করে 4.9.3 দিয়ে এটিকে তৈরি করে জমিতে ধূমপান গর্ত ছেড়ে দেবে।

এই পতাকাটি ব্যবহার করে, সেই সি ফাইলগুলির বেশিরভাগই প্রকৃতপক্ষে নির্মিত হবে, যা আপনাকে লেজারার তৈরি করবে সংস্করণ-নির্ভর নষ্টের দিকে যেতে মুক্ত রাখবে। =]

আমাদের সাইট ব্যবহার করে, আপনি স্বীকার করেছেন যে আপনি আমাদের কুকি নীতি এবং গোপনীয়তা নীতিটি পড়েছেন এবং বুঝতে পেরেছেন ।
Licensed under cc by-sa 3.0 with attribution required.