2014-07-09 6 views
8

पर मैं कोड का एक टुकड़ा जो प्रयोगात्मक (when, smartmatch, given) सुविधाओं का एक बहुत का उपयोग करता है, यह मेरी कोड नहीं है, और मैं चेतावनी का एक बहुत देखने के लिए नहीं करना चाहते हैं प्रयोगात्मक सुविधाओं के बारे में। तो मैंने इस कोड में no warnings 'experimental'; जोड़ा।पर्ल कोई चेतावनी 'प्रयोगात्मक' पुराने पर्ल

अज्ञात चेतावनी श्रेणी 'प्रयोगात्मक'

मैं इस चेतावनी कैसे निष्क्रिय कर सकते हैं और बड़ी उम्र पर्ल्स में मेरी कोड नहीं टूटते: लेकिन experimental श्रेणी केवल पर्ल 5.18 तो मेरे कोड बड़े पर्ल्स में मर जाता है में जोड़ा गया ?

+0

@ Сухой27, इस कोड को चेतावनी अंदर ब्लॉक शुरू निष्क्रिय कर देगा – Suic

+0

हाँ, सही ... –

उत्तर

11

if का प्रयास करें:

no if ($] >= 5.018), 'warnings' => 'experimental'; 
9

experimental मॉड्यूल स्थापित करने और उपयोग करने का प्रयास करें। पुराने perls पर यह कुछ भी नहीं करेगा, और नए perls पर यह चेतावनियों को अक्षम कर देगा।

use experimental qw(smartmatch switch); 
+1

पर्ल 5.14.2 मुझे दिया: '' 'प्रयोगात्मक पता नहीं लगा सकता उस पंक्ति के साथ एक स्क्रिप्ट में .pm''' और कुछ भी नहीं। क्या मुझे कुछ और इस्तेमाल करना चाहिए? – msouth

+2

@msouth क्या आप वाकई मॉड्यूल स्थापित हैं? – AKHolland

+1

क्षमा करें @AKHolland मुझे लगता है कि यह मूल में था। मेरी गलती। आप "किसी प्रयोगात्मक मॉड्यूल को स्थापित करने का प्रयास" पढ़ने के लिए इसे संपादित करके इसे गलत धारणा बनाने से किसी और को रोक सकते हैं। मुझे लगता है कि निचले मामले और सामान के साथ मैंने सोचा था कि यह कोर में कुछ था जिसे मैंने कभी नहीं सुना था। और मेरे प्रश्न का उत्तर देने के लिए इस पर वापस आने के लिए समय निकालने के लिए धन्यवाद! – msouth