मैंने सुना है कि किंवदंतियों को "यह वैकल्पिक होना चाहिए क्योंकि कुछ छोटे संकलक बिना वीएलए के C11-अनुरूप होने में सक्षम होना चाहिए" "यह पहली जगह पर एक गलती थी"। हालांकि मुझे इस बारे में एक भी सही और निश्चित जवाब नहीं मिला है। अंततः, मुझे विश्वास नहीं है कि किसी के पास वास्तव में कारण के रूप में एक है (- और उम्मीद है - एक है) कभी भी खुलासा नहीं किया गया था (जहां तक मेरी पुरानी खोजें चली गईं)।
इंटरनेशनल स्टैंडर्ड - प्रोग्रामिंग लैंग्वेजेज के सी 4 (पेज 13) से - सी 5.10 (2003)
उनके द्वारा स्वीकार किए जाने वाले कार्यक्रमों के संदर्भ में अनुरूप कार्यान्वयन को परिभाषित करके, मानक पत्ते एक अनुरूप कार्यान्वयन के हिस्से के रूप में विस्तार की एक व्यापक श्रेणी के लिए दरवाजा खोलते हैं। दोनों अनुरूपित मेजबान को परिभाषित करने और फ्रीस्टैंडिंग कार्यान्वयन के अनुरूप होने से, मानक ऐसे कार्यक्रमों को ऑपरेटिंग सिस्टम और ROM- आधारित अनुप्रयोगों के साथ-साथ अधिक पारंपरिक होस्ट किए गए अनुप्रयोगों को लिखने के लिए C के उपयोग को मान्यता देता है। इस दो-स्तरीय योजना से परे, सी के लिए कोई अतिरिक्त उप-निर्धारण परिभाषित नहीं किया गया है, क्योंकि C89 समिति ने दृढ़ता से महसूस किया कि कई स्तर एक मानक की प्रभावशीलता को कम करते हैं ।
जोर मेरा। गौर करें कि यह निर्णय उनके अपने तर्क के विरुद्ध है। फिर भी, एक और बात वैकल्पिक है। अब आपको या तो __STDC_NO_VLA__
वीएलए सपोर्ट मिलेगा । यह बहुत ही अजीब फैसला है।